/****************************************************************************************************************/

/* TOM/Pioneer Site - 11-6-2026                                                            */

/****************************************************************************************************************/



/*Fonts*/
/* CSS Document */




@import url('https://fonts.googleapis.com/css2?family=Rubik:ital,wght@0,300..900;1,300..900&display=swap');

  



/*Brand Colors



Light Green: #a9c47f

Dark Grey: #848484	Very Dark Grey/Black: 232323

Pioneer Green: #4a7729

Also any blacks/whites/greys.



*/

.rubik-Pioneer {

  font-family: "Rubik", sans-serif;

  font-optical-sizing: auto;

  font-weight: 400;

  font-style: normal;

}

body {

  font-family: "Rubik", sans-serif;

  font-optical-sizing: auto;

  font-weight: 400;

  font-style: normal;

}

h1 {color:#000000!important;  font-weight: 600;}

h2 {color:#000000!important;  font-weight: 500;}

h3 {color:#000000!important;  font-weight: 500;}

h4 {color:#4a7729!important;  font-weight: 500;}

h5 {color:#ffffff!important;  font-weight: 300;}

h6 {color:#011016!important;  font-weight: 400;}





body {

/* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#ededed+0,ffffff+100 */

background: #ededed; /* Old browsers */

background: -moz-linear-gradient(top, #ffffff 0%, #ffffff 100%); /* FF3.6-15 */

background: -webkit-linear-gradient(top, #ffffff 0%,#ffffff 100%); /* Chrome10-25,Safari5.1-6 */

background: linear-gradient(to bottom, #ffffff 0%,#ffffff 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */

filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#ffffff',GradientType=0 ); /* IE6-9 */

background-attachment: fixed;

}



.FormLabel { font-size:16pt; }

.formField { height: 2em; }

ol { list-style-type: auto; padding-left:2em; }



.tableText, .CartTable { color: inherit !important; }



.ZoneBoxHolder { text-align: left; display: table; width: 100% !important; }

p { margin-bottom: 10px; }

.zonePadding { padding: 0}

.footerZone { background-color: #f1f2f2; padding: 30px 0 30px 0; color: #a4a5a4; font-weight: 300}

.widgetWrapper {  margin-bottom: 0; }

.colZoneContainer { table-layout: fixed; }

.PanelHeader { padding-left: 0 !important;}







/* Style overrides */

.headerZone a:link, .headerZone a:visited  { color: #4a7729; font-family: "Rubik", sans-serif; font-weight: 600;}

.headerZone a:active, .headerZone a:hover { color:#a9c47f;  font-family: "Rubik", sans-serif; font-weight: 700;}

/*.footerZone a:link, .footerZone a:visited {color: white;}*/



/*Site Header*/



w1000449_pnlDefaultBody.widgetbody { padding: 20px  0 ;}

ul#menu1000450 {
    padding-left: 0em !important;
}

.headerZone {background: white;}

.headerZone {padding: 30px 0 10px 0;}

.headerZone .SiteNavigation {padding: 10px 0 0 0 ;  }

.headerZone .SiteNavigation .sf-menu a {font-size: 14pt!important; padding-left:15px; padding-right:15px;  }

.headerZone .SiteNavigation a {padding: 10px 0;}

/*.headerZone .SiteNavigation a:hover {color: #4a7729;}*/

header footer img { padding: 25px 0; }

.headerLogo img {width: 200px; padding: 15px 0 10px 0; }

.subHeaderText{

    

    font-family: "Rubik", sans-serif;

    font-size:31pt;

}

header{  

	background: #ffffff;

    display:flex;justify-content:space-between; align-items:center; padding: 0 15px;

}





.sf-menu.sf-js-enabled.sf-arrows.expand {

  background-color: white;

}





/*Sidebar*/

.QuickPicks { padding-top: 30px!important; }

.LoginLinks { display:none; }

.SearchWrapper .CompactInput { max-width:95%; }

.leftColZone { padding: 20px 10px 10px 10px; background: #f2f3f5; color: #000000; }



.leftColZone .WidgetBody li a {

  display: block;              /* required for ellipsis */

  width: 100%;                 /* ensures the element has a set width */

  white-space: nowrap;         /* keeps text on one line */

  overflow: hidden;            /* hides overflowed text */

  text-overflow: ellipsis;     /* adds the â€¦ */

  line-height: 2;            /* adjust spacing if needed */

  box-sizing: border-box;      /* ensures padding doesn't break width */

}



.leftColZone .WidgetBody li a {

  padding: 4px 6px;

  text-decoration: none;

}





.leftColZone a:link, .leftColZone a:visited { color: #333333; font-weight: 600!important;}

.leftColZone a:active, .leftColZone a:hover { color:#719949; font-weight: 600!important; }


.contentZone a:link, .contentZone a:visited  { color: #4a7729;}
.contentZone a:active, .contentZone a:hover { color:#a9c47f;}





/*Product Images Sizes*/

.ItemImageDetail .ProductImage img {max-height: 200px;}

.StandardProductImage {height: 300px;}

.ItemImageDetail .ProductImage .thumbnail {height: 150px;}

.CategoryImage .thumbnail {max-height: 200px;}



/* footer */

footer { text-align: center; font-weight: 300; }

footer nav { margin-bottom:10px; }

footer nav ul { display:block; list-style-type:none; }

footer nav ul li { display:inline-block; border-right:1px solid black; padding: 0px 10px; line-height: 1em; }

footer nav ul li:last-child { border-right:none; }

footer nav a, footer nav a:link, footer nav a:active, footer nav a:visited {font-family: "Rubik", sans-serif;  color: #4a7729;}

footer nav a:hover {color: #719949!important;}

footer img {width: 200px;}



/* homepage */

#pnlZoneBoxHolder.SiteHome .leftColZone { display:none !important; }




/* Banner container */

.welcome-section {
    background: #ebefe7;
    padding: 45px 25px 35px;
	border-radius: 12px;
	    margin: 10px 0;

    text-align: center;
    width: 100%;
    box-sizing: border-box;
}

.welcome-inner {
    max-width: 1250px;
    margin: 0 auto;
}

.bannerimage {
  position: relative;
  width: 100%;
  overflow: hidden;
	border-radius: 12px;
}

/* Image full width */
.bannerimage img {
  width: 100%;
  display: block;
}

/* Center text & button on image */
.banner-content {
  text-align: center;
  color: white;
  padding: 20px;
}

/* Heading style */
.banner-content h1 {
  font-size: 46pt;
  font-weight: 600;
  margin-bottom: 10px;
  text-shadow: 0px 3px 10px rgba(0,0,0,0.4); /* helps text stand out */
}

.Slideshow {width:100%;}

/* Button styling */
.CTAbutton {
  display: inline-block;
  padding: 14px 34px;
  background: #4a7729!important;           
  color: #fff!important;
  font-size: 18pt!important;
  border-radius: 8px;
  text-decoration: none;
  font-weight: 600!important;
  letter-spacing: 1px;
  box-shadow: 0 4px 12px rgba(0,0,0,0.25);
  transition: all 0.25s ease;
}

/* Button hover */
.CTAbutton:hover {
  background: #719949!important;
  transform: translateY(-2px);
  box-shadow: 0 6px 16px rgba(0,0,0,0.3);
}

.button4 {
   display: inline-block;

  padding: 14px 34px;
  background: #4A7729;          
  color: #fff!important;
  font-size: 18pt!important;
  border-radius: 8px;
  text-decoration: none;
  font-weight: 600!important;
  letter-spacing: 1px;
  box-shadow: 0 4px 12px rgba(0,0,0,0.25);
  transition: all 0.25s ease;
	  text-align: center;
	font-family: Rubik!important;
  
}

.button4:hover {
  background: #719949!important;
  color: white;
  transform: translateY(-2px);
  box-shadow: 0 6px 16px rgba(0,0,0,0.3);
}

/* ===========================
   MOBILE RESPONSIVE SETTINGS
   =========================== */

/* Tablet */
@media (max-width: 900px) {
  .banner-content h1 {
    font-size: 32pt;
  }
  .CTAbutton {
    font-size: 16pt!important;
    padding: 12px 28px;
  }
	 .button4 {
    font-size: 16pt!important;
    padding: 12px 28px;
  }
}

/* Phones */
@media (max-width: 650px) {
  .banner-content h1 {
    font-size: 26pt;
	    margin-bottom: 5px!important;

  }
  .CTAbutton {
    font-size: 12pt!important;
    padding: 10px 24px;
  }
	  .button4 {
    font-size: 12pt!important;
    padding: 10px 24px;
  }

}




/* ==========================================
   HOMEPAGE CUSTOM PRODUCTS SECTION
   ========================================== */

.home-custom-section {
    background: #F2F3F5;
    padding: 45px 25px 35px;
	border-radius: 12px;
	    margin: 10px 0;

    text-align: center;
    width: 100%;
    box-sizing: border-box;
}

.home-custom-inner {
    max-width: 1250px;
    margin: 0 auto;
}

/* Main heading */
.home-custom-section h2 {
    font-size: 26pt;
    font-weight: 700;
    color: #000000;
    margin: 0 0 25px;
}

/* Introductory copy */
.home-custom-intro {
    font-size: 12pt;
    line-height: 1.7;
    color: #000000;
    margin: 0 auto 15px;
}

.home-custom-highlight {
    font-size: 12pt;
    line-height: 1.7;
    color: #000000;
    margin: 15px auto 30px;
}

/* Three-column card layout */
.home-custom-cards {
    display: flex;
    gap: 22px;
    width: 100%;
    margin: 25px auto 40px;
    align-items: stretch;
}

/* Individual white cards */
.home-custom-card {
    flex: 1;
    background: #FFFFFF;
    border-radius: 12px;
    padding: 30px 20px;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    min-height: 155px;
    box-shadow: 0 2px 8px rgba(0,0,0,0.05);
}

/* Card headings / links */
.home-custom-card a {
    color: #4a7729 !important;
    font-size: 15pt;
    font-weight: 700!important;
    text-decoration: none;
    margin-bottom: 18px;
}

.home-custom-card a:hover {
    color: #719949 !important;
    text-decoration: none;
}

/* Card descriptions */
.home-custom-card p {
    font-size: 11.5pt;
    line-height: 1.6;
    color: #000000;
    margin: 0;
}

/* New products announcement */
.home-custom-product-section {
    background: #ebefe7;
     padding: 22px 20px;
    text-align: center;
	    border-radius: 12px;
    width: 100%;
    box-sizing: border-box;
}


.home-new-products {
    
    margin: 0 auto;
    width: 100%;
    box-sizing: border-box;
}

.home-new-products h2 {
    color: #4a7729!important;
	font-weight: 700!important;
    font-size: 30pt;
    margin: 0 0 8px;
}

.home-new-products p {
    color: #000000;
    font-size: 11.5pt;
    margin: 0;
    line-height: 1.5;
}

.custom-section {
    background: #FFFFFF;
    padding: 45px 25px 35px;
    text-align: center;
    width: 100%;
    box-sizing: border-box;
}

.custom-section h2 {
    font-size: 24pt;
    font-weight: 700;
    color: #000000;
    margin: 0 0 15px;
}

.custom-inner {
    max-width: 1250px;
    margin: 0 auto;
}

.Brand-section {
    background: #F2F3F5;
    padding: 45px 25px 35px;
    text-align: center;
    width: 100%;
    box-sizing: border-box;
}

/* ==========================================
   TABLET RESPONSIVE
   ========================================== */

@media (max-width: 900px) {

    .home-custom-section {
        padding: 35px 18px;
    }
	
	.welcome-section {
		padding: 35px 18px;
	}

    .home-custom-section h2 {
        font-size: 22pt;
    }

    .home-custom-cards {
        gap: 12px;
    }

    .home-custom-card {
        padding: 25px 12px;
    }

    .home-custom-card a {
        font-size: 13pt;
    }
	    .custom-section {
        padding: 35px 18px;
    }
	
 
}


/* ==========================================
   MOBILE RESPONSIVE
   ========================================== */

@media (max-width: 650px) {

    .home-custom-section {
        padding: 30px 15px;
    }
	.welcome-section {
		padding: 30px 15px;
	}

    .home-custom-section h2 {
        font-size: 20pt;
    }

    .home-custom-intro,
    .home-custom-highlight {
        font-size: 11pt;
    }

    .home-custom-cards {
        flex-direction: column;
        gap: 15px;
        margin: 25px auto 30px;
    }

    .home-custom-card {
        width: 100%;
        min-height: auto;
        padding: 25px 18px;
    }

    .home-custom-card a {
        font-size: 14pt;
        margin-bottom: 10px;
    }

    .home-custom-card p {
        font-size: 11pt;
    }

    .home-new-products {
        padding: 20px 15px;
    }

    .home-new-products h2 {
        font-size: 17pt;
    }
	   .custom-section {
        padding: 30px 15px;
    }
	
    .custom-section h2 {
        font-size: 19pt!important;
    }
	  .about-section {
        padding: 30px 15px;
    }
	
    .about-section h2 {
        font-size: 19pt!important;
    }
	  .about-section-grey {
        padding: 30px 15px;
    }
	
    .about-section-grey h2 {
        font-size: 19pt!important;
    }
	   .cobrand-showcase {
        padding: 30px 15px;
    }
	
    .cobrand-showcase h2 {
        font-size: 19pt!important;
    }
	
	.custom-showcase {
		padding: 30px 15px;
	}
	.custom-showcase h2 {
		font-size: 19pt!important;
	}
}
	.custom-showcase2 {
		padding: 5px 15px;
	}
	 


/* ==========================================
    CO-BRANDED LOGO GALLERY
   ========================================== */

.cobrand-showcase {
    background: #F2F3F5;
    padding: 40px 25px;
    margin: 10px 0;
    text-align: center;
    width: 100%;
    box-sizing: border-box;
	border-radius: 12px;
}
.cobrand-showcase a:link, .cobrand-showcase a:visited  {   color: #4A7729; font-family: "Rubik", sans-serif;  font-weight: 600!important;}
.cobrand-showcase a:active, .cobrand-showcase a:hover {  color:#A9C47F; font-family: "Rubik", sans-serif;  font-weight: 600!important;}



.cobrand-showcase h2 {
    font-size: 24pt;
    font-weight: 700;
    color: #000000;
    margin: 0 0 15px;
}

.cobrand-intro {
    max-width: 1000px;
    margin: 0 auto 12px;
    font-size: 12pt;
    line-height: 1.6;
    color: #000000;
}

/* Logo grid */
.cobrand-logo-grid {
    display: grid;
    grid-template-columns: repeat(8, minmax(0, 1fr));
    gap: 15px;
    max-width: 1150px;
    margin: 25px auto;
}

/* Individual logo cards */
.cobrand-logo {
    background: #FFFFFF;
    border-radius: 10px;
    padding: 15px;
    height: 75px;
    display: flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    box-shadow: 0 2px 6px rgba(0,0,0,0.04);
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.cobrand-logo:hover {
    transform: translateY(-3px);
    box-shadow: 0 4px 12px rgba(0,0,0,0.10);
}

/* Logo image sizing */
.cobrand-logo img {
    display: block;
    max-width: 100%;
    max-height: 60px;
    width: auto;
    height: auto;
    object-fit: contain;
}



/* LOGO HERE Logo grid */
.logo-here-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 15px;
    max-width: 1150px;
    margin: 25px auto;
}

/* Individual cards */
.logo-here {
    background: #FFFFFF;
    border-radius: 10px;
    padding: 15px;
    height: 300px;
    display: flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    box-shadow: 0 2px 6px rgba(0,0,0,0.04);
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.logo-here:hover {
    transform: translateY(-3px);
    box-shadow: 0 4px 12px rgba(0,0,0,0.10);
}

/* Logo image sizing */
.logo-here img {
    display: block;
    max-width: 100%;
    max-height: 290px;
    width: auto;
    height: auto;
    object-fit: contain;
}




/* TABLET */
@media (max-width: 900px) {
    .cobrand-logo-grid {
        grid-template-columns: repeat(4, minmax(0, 1fr));
        gap: 12px;
    }

    .cobrand-logo {
        height: 70px;
    }
	    .cobrand-logo img {
        max-height: 60px;
    }
	
	 .logo-here-grid {
        grid-template-columns: repeat(4, minmax(0, 1fr));
        gap: 12px;
    }

    .logo-here {
        height: 250px;
    }
	    .logo-here img {
        max-height: 240px;
    }
}

/* MOBILE */
@media (max-width: 550px) {
    .cobrand-showcase {
        padding: 10px 5px;
    }
    .custom-showcase {
        padding: 30px 15px;
    }
	.custom-showcase h2 {
		font-size: 19pt;
	}
	
    .cobrand-showcase h2 {
        font-size: 19pt!important;
    }

    .cobrand-logo-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 10px;
    }

    .cobrand-logo {
        height: 95px;
        padding: 10px;
    }

    .cobrand-logo img {
        max-height: 70px;
    }
	
 .logo-here-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 10px;
    }

    .logo-here {
        height: 200px;
        padding: 10px;
    }

    .logo-here img {
        max-height: 190px;
    }


}



/* ==========================================
   FLEXIBLE QUANTITIES SECTION
   ========================================== */

.flexible-section {
    background: #FFFFFF;
    padding: 40px 25px;
    margin: 10px 0;
    text-align: center;
    width: 100%;
    box-sizing: border-box;
}

.flexible-inner {
    max-width: 1150px;
    margin: 0 auto;
}

.flexible-section h2 {
    font-size: 24pt;
    font-weight: 700;
    color: #000000;
    margin: 0 0 15px;
}

.flexible-intro {
    max-width: 950px;
    margin: 0 auto 25px;
    font-size: 12pt;
    line-height: 1.6;
    color: #000000;
}

/* Three cards */
.flexible-cards {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 18px;
    margin: 25px auto 30px;
}

.flexible-card {
    background: #F2F3F5;
    border-radius: 10px;
    padding: 25px 18px;
    min-height: 125px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    box-sizing: border-box;
    box-shadow: 0 2px 6px rgba(0,0,0,0.04);
    transition: transform 0.2s ease,
                box-shadow 0.2s ease;
}

.flexible-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 4px 12px rgba(0,0,0,0.10);
}

.flexible-card h3 {
    color: #4A7729;
    font-size: 15pt;
    font-weight: 700;
    margin: 0 0 12px;
}

.flexible-card p {
    color: #000000;
    font-size: 11.5pt;
    line-height: 1.6;
    margin: 0;
}


/* Bottom GREEN callout */
.flexible-callout {
    background: #EBEFE7;
    border-radius: 12px;
    padding: 22px 20px;
    max-width: 900px;
    margin: 0 auto;
}

.flexible-callout h3 {
    color: #4A7729;
    font-size: 18pt;
    margin: 0 0 8px;
}

.flexible-callout p {
    color: #000000;
    font-size: 11.5pt;
    line-height: 1.5;
    margin: 0;
}

/* TABLET */
@media (max-width: 900px) {
    .flexible-cards {
        gap: 12px;
    }

    .flexible-card {
        padding: 20px 12px;
    }

    .flexible-card h3 {
        font-size: 13pt;
    }
}

/* MOBILE */
@media (max-width: 550px) {
    .flexible-section {
        padding: 30px 15px;
    }

    .flexible-section h2 {
        font-size: 19pt;
    }
	.about-section-grey h2 {
        font-size: 19pt;
    }

    .flexible-cards {
        grid-template-columns: 1fr;
        gap: 12px;
    }

    .flexible-card {
        min-height: 105px;
        padding: 20px;
    }

    .flexible-card h3 {
        font-size: 14pt;
    }

    .flexible-callout h3 {
        font-size: 16pt;
    }
}


.custom-showcase {
    background: #EBEFE7;
    padding: 40px 25px;
    margin: 10px 0;
    text-align: center;
    width: 100%;
    box-sizing: border-box;
	border-radius: 12px;
}

.custom-showcase h2 {
    font-size: 24pt;
    font-weight: 700;
    color: #000000;
    margin: 0 0 15px;
}

.custom-showcase2 {
    background: #EBEFE7;
    padding: 10px 25px;
    margin: 10px 0;
    text-align: center;
    width: 100%;
    box-sizing: border-box;
	border-radius: 12px;
}

#homepage-text {margin: 25px 0;}

#homepage-text h2 { text-align:center; font-size: 36pt;}

#homepage-text h2 + p {margin-left: auto; margin-right: auto; text-align:center; width: 50%;}



/* Product Listings */

.SearchTable img.thumbnail { max-width:150px; max-height:120px; }

.SearchTable .ProductImage a { 

    display: inline-flex; 

    height: 160px; width: 160px; 

    background-color: rgb(255, 255, 255);

    padding: 5px;

    flex-direction: column;

    align-items: center;

    justify-content: center;

}

.SearchTable a, .SearchTable a:link, .SearchTable a:hover, .SearchTable a:active, .SearchTable a:visited { font-size:16pt; }

.SearchTable img { max-width:150px; max-height:150px; }





#w1000461_pnlProdList .ProductResultDetails { padding-top: 20px!important; padding-bottom: 20px!important;}

#w1000461_pnlResultContainer { padding: 30px 5% 0px 5% }

#w1000461_pnlProdList .ProductResultDetails .ProductName {line-height: -5px!important; font-weight: 450!important;}
.ProductSKU {
    padding-top: 10px;
}
a.ProductGroupName {
    font-size: 12pt;
}

a.ProductName {
	
}


#w1000461_pnlProdList .ProductResultDetails .ProductPricing {

  margin-top: 7px !important; font-size: 12pt!important;

}

#w1000461_pnlProdList .ProductGroupResultEntry .ProductGroupName {

  margin-top: 12px !important; font-weight: 450!important; 

}



#w1000461_pnlSearchResults .PanelHeader {align-items: center; text-align: center; justify-content: center;font-weight: 600!important;}

#w1000461_pnlSearchResults .SortOrders.SelectSort {justify-content: flex-end!important;}



/* Product Detail */

.ProductHeaderWidget, .ProductDescription { margin: 0 auto;}

.MatrixOrderForm {width: 450px; margin: 0 auto; margin-bottom: 20px;}

.PriceTable .PanelHeaderPermanent {font-size: 14pt;}

.ProductPriceDetails td {padding: 5px!important;}



.ProductImageGallery .DefaultPanel { border-style:none;}

.ProductImageGallery .WidgetBody > a:first-child { 

    padding:10px; width: 420px; height:420px; background-color: #FFFFFF; display:inline-flex; 

    flex-direction: column;

    align-items: center;

    justify-content: center;

}

.ProductImageGallery .StandardProductImage {max-width:100%; max-height:410px; box-sizing:border-box; }

.ProductMatrix .PanelHeader, .ProductDetail .PanelHeader, .Widget1000469 .PanelHeader { display:none; }

.ProductHeaderName { line-height: 45px; padding-bottom: 15px; font-size:30pt; margin: 0 auto; max-width: 100%; width: 750px; }

.ProductHeaderSKU { font-size:24pt; }

.ImageGalleryPopup .PanelHeader { padding-left: 0.2em !important; }

table.FullWidth, #w1000469_trQuantity { font-size: larger; }

.ProductDescription {text-align: center; width: 750px; margin: 0 auto; max-width: 100%; font-size:14pt;}

.ProductPricing {width: 350px; margin: 0 auto; max-width: 100%; font-size:14pt;}

h6.PanelHeader {font-weight: normal;  font-size: 22pt; color: #4a7729!important}

.productName {font-size: 20pt;}




/*/ABOUT US*/

.about {
    display: grid;
    column-gap: 35px;
    row-gap: 30px;
    background: #EBEFE7;
    border-radius: 10px;
    padding: 25px 30px;
    text-align: center;
}
.about-intro {
    max-width: 1000px;
    margin: 0 auto 12px;
    font-size: 12pt;
    line-height: 1.6;
    color: #000000;
}

.about h2 {
    font-size: 23pt;
    font-weight: 700;
    color: #000000;
    margin: 0 0 8px;
}

.about-section {
    background: #FFFFFF;
    padding: 45px 25px 35px;
    text-align: center;
    width: 100%;
    box-sizing: border-box;
}

.about-section h2 {
    font-size: 24pt;
    font-weight: 700;
    color: #000000;
    margin: 0 0 15px;
}

.about-section-grey {
    background: #F2F3F5;
    padding: 45px 25px 35px;
    text-align: center;
    width: 100%;
    box-sizing: border-box;
}

.about-section-grey h2 {
    font-size: 24pt;
    font-weight: 700;
    color: #000000;
    margin: 0 0 15px;
}

.about-inner {
    max-width: 1250px;
    margin: 0 auto;
}

















/* Login Page */

.loginSection { padding: 20px!important; }

#w1000489_lblReturning {
    font-size: 20px;
    font-weight: 500;
}

#w1000489_pnlDefault{
    display: flex;
    justify-content: center;
}



/* ==========================================
   FIRST TIME LOGIN INSTRUCTIONS
   ========================================== */

.login-instructions {
    max-width: 1000px;
    margin: 35px auto 45px;
    padding: 0px 40px;
    box-sizing: border-box;
    text-align: center;
}

.login-instructions h2 {
    font-size: 23pt;
    font-weight: 700;
    color: #395125;
    margin: 0 0 8px;
}

.login-intro {
    color: #000000;
    font-size: 12pt;
    margin: 0 0 25px;
}


/* TWO-COLUMN LOGIN STEPS */

.login-steps {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    column-gap: 35px;
    row-gap: 30px;
    background: #ecf4e0;
    border-radius: 10px;
    padding: 25px 30px;
    text-align: left;
}


.login-step {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    margin-bottom: 0;
}

.login-column {
    display: flex;
    flex-direction: column;
    gap: 22px;
}

.login-steps {
    align-items: start;
}

@media (max-width: 650px) {
    .login-column {
        row-gap: 0px;
    }
}
/* MOBILE - STACK INTO ONE COLUMN */

@media (max-width: 650px) {
    .login-steps {
        grid-template-columns: 1fr;
        row-gap: 15px;
        padding: 20px 15px;
    }
}


.login-step:last-child {
    margin-bottom: 0;
}

/* Numbered circles */

.step-number {
    flex: 0 0 32px;
    width: 32px;
    height: 32px;
    border-radius: 50%;
    background: #4a7729;
    color: #FFFFFF;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 13pt;
    font-weight: 700;
    line-height: 1;
}

/* Step text */

.step-content {
    flex: 1;
    padding-top: 2px;
}

.step-content strong {
    display: block;
    color: #000000;
    font-size: 12pt;
    margin-bottom: 3px;
}

.step-content p {
    color: #000000;
    font-size: 11pt;
    line-height: 1.5;
    margin: 0;
}

/* Help message */

.login-help {

    border-radius: 6px;
    padding: 15px 20px;
    margin-top: 20px;
    text-align: left;
}

.login-help strong {
    color: #4a7729;
    font-size: 14pt;
}

.login-help p {
    color: #000000;
    font-size: 11pt;
    line-height: 1.5;
    margin: 5px 0 0;
}
.login-help a {
       color: #4A7729 !important;
    font-weight: 700;
    text-decoration: none;
    margin-bottom: 18px;

}


.login-help a:hover {
    color: #719949 !important;
    text-decoration: none;
}

/* MOBILE */

@media (max-width: 650px) {

    .login-instructions {
        margin: 20px 12px 30px;
        padding: 25px 0px;
    }

    .login-instructions h2 {
        font-size: 19pt;
    }

    .login-steps {
        padding: 20px 10px;
    }

    .login-step {
        gap: 12px;
        margin-bottom: 18px;
    }

    .step-number {
        flex-basis: 29px;
        width: 29px;
        height: 29px;
        font-size: 12pt;
    }

    .step-content strong {
        font-size: 11pt;
    }

    .step-content p {
        font-size: 10.5pt;
    }
}



/* Shopping Cart*/



.CartHeader { display: none;}

.CartTotal, .CartTotalLabel { font-size: 20pt; }

.QuickAddForm { font-size:13pt; font-family: "Rubik", sans-serif;}

.cartTotals {margin-top: 1.5em;}

.cartTotals .totalsRow { padding: 0.3em 3px 0.3em 0.3em;}

.cartTotals .totalsRow .numeric { padding-right: 3px !important; }

.CartUpload {display: none;}



/*Shipping Addresses */

.addressEntry.selectedItem,

.addressEntry.selectedItem * {

  color: #000000 !important;

  font-weight: 600 !important;

  background-color: #a9c47f !important;

  border: 1px solid #a9c47f !important;

}

.OrderShipping .PanelHeader {margin: 15px 0px 5px 0px;}



/*Checkout */

.PaymentSummary .PanelHeader{ border-bottom: 1px solid #000000; }





#w1000478_pnlOrderReferenceNum br { display:none; }

#w1000478_pnlOrderReferenceNum span { display:block; }

.OrderBillToAddress, .PaymentSummary, .PaymentMethodSelection, .GiftCertificate { padding-bottom: 25px; }

.OrderBillToAddress .PanelHeader {margin: 15px 0px 5px 0px;}

.ReceiptHeader { background-color:white; border:1px solid #000000; }

.Receipt .ReceiptHeader + div {margin: 25px 0; padding: 20px; font-size: 18pt; color: white; background: #ffffff; border: 3px solid #719949; text-align: center;} 



.ReceiptHeader .infoRow .PanelFooter {display: none!important;}

.OrderConfirmation .PanelHeader {margin: 15px 0px 5px 0px;}





.AddressSelector { background-color:white; padding:10px; border: 1px solid #000; margin: 0px 0px 25px 0px;}

.OrderConfirmation .itemDeleteLeft .CartHeader .cartItemThumb {margin-left: 0%; } 







.addressEntryForm .formInputBlock:nth-of-type(13) {display: none;}

.addressEntryForm .formInputBlock:nth-of-type(14) {display: none;}







/*MOBILE STYLES*/



@media only screen and (max-width:650px) {
	
	
	leftColZone .WidgetBody li a {

  display: block;              /* required for ellipsis */

  width: 100%;                 /* ensures the element has a set width */

  white-space: nowrap;         /* keeps text on one line */

  overflow: hidden;            /* hides overflowed text */

  text-overflow: ellipsis;     /* adds the â€¦ */

  line-height: 1.8;            /* adjust spacing if needed */

  box-sizing: border-box;      /* ensures padding doesn't break width */

}


	  /* Taller banner */
  .bannerimage {
    min-height: 200px;
  }

  .bannerimage img {
    height: 100%;
    object-fit: cover;
  }
	

		
	
  /* Tighter footer */
  footer {
    padding: 8px 0 !important;
  }



    .ProductImageGallery .WidgetBody > a:first-child { padding:0; width: 100%; }

    #pnlZoneBoxHolder.SiteHome .contentZone {padding: 0;}

  
	
.contentZone {padding: 5px;}
  .contentZone .zonePadding {padding: 10px!important;}

    #homepage-text {padding: 0px 10px;}

/*Mobile Header*/

header {display:block; justify-content:space-between; align-items:center; padding: 0 20px;}

header img {max-width: 100%; margin: 10px 0 0 0;}



header .subHeaderText {display: none;}

.expander img {width: 30px;}

.ProductHeaderName { font-size:30pt; width:300px; max-width: 100% }

	.headerZone img {display: flex!important;}

	.leftColZone {margin-top: 20px!important;}

	

    

	

    #homepage-text h2 + p {margin-left: auto; margin-right: auto; text-align:center; width: 100%;}

	

	.ProductGroupNavigation {display: none; }



/*END MOBILE STYLES*/



#faq p, #faq a:link, #faq a:active, #faq a:visited, #faq a:hover, #faq ol, #faq ul, #faq li { font-size:15pt; }

#faq ol, #faq ul { margin-bottom:10px; padding-left:1em;}

#faq li { margin-bottom: 15px; padding-left:1.5em; }

#faq li:last-child { margin-bottom:0;}



#faq ol li span.answer::before { content: '\2022'; display: inline-block; position: relative; left: -2.3em; width: 0; }

	#faq ol li span { display: block; }

}