/*
Theme Name:   	Catkins Storefront Child Theme
Theme URI:    	https://github.com/stuartduff/storefront-child-theme
Author:       	Stuart Duff
Author URI:     http://stuartduff.com
Template:     	storefront
Description:  	This is a blank child theme for WooThemes StoreFront theme
Version:      	1.0.0
License:      	GNU General Public License v2 or later
License URI:  	http://www.gnu.org/licenses/gpl-2.0.html
Text Domain:  	storefront
Tags:         	black, white, light, two-columns, left-sidebar, right-sidebar, responsive-layout, custom-background, custom-colors, custom-header, custom-menu, featured-images, full-width-template, threaded-comments, accessibility-ready
This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned with others.
Storefront is based on Underscores http://underscores.me/, (C) 2012-2014 Automattic, Inc.
Resetting and rebuilding styles have been helped along thanks to the fine work of
Eric Meyer http://meyerweb.com/eric/tools/css/reset/index.html
along with Nicolas Gallagher and Jonathan Neal http://necolas.github.com/normalize.css/
FontAwesome License: SIL Open Font License - http://scripts.sil.org/OFL
Images License: GNU General Public License v2 or later
*/
/*
 * Add your own custom css below this text.
 */


@import url('https://fonts.googleapis.com/css2?family=Nunito:ital,wght@0,200..1000;1,200..1000&display=swap');


/**
 * Smooth scrolling on the whole document
 */
html {
    scroll-behavior: smooth;
}

.below-nav {
    min-height: 500px;
}

/*#smooth-content {
  overflow: visible;
  width: 100%;
  height: 200vh;
}*/

.mainimg {
    position: relative;
    top: 10vh;
    left: 0;
    max-height: 650px;
}

.my-object2 {
  position: relative;
  float: right;
  top: 25px;
  height: 55px;
}

.main-area {
    position: relative;
}

.maintxt {
    align-content: center;
    padding-left: 40px;
}

.container {
  position: absolute;
  width: 140px;
  height: 140px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.initial {
  left: 2%;
  bottom: -60px;
}

.leafbox {
  position: relative;
  z-index: 1;
  max-width: 110px;
  max-height: 85px;
  height: 100%;
  width: 100%;
}


.container1 {
  position: absolute;
  width: 100px;
  height: 100px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.initial1 {
  left: calc(8%);
  top: 0px;
}

.leafbox1 {
  position: relative;
  z-index: 1;
  max-width: 85px;
  max-height: 85px;
  height: 100%;
  width: 100%;
}

.second {
  left: 50%;
  top: 50%;
}

.second .marker {
  width: 100px;
  height: 100px;
}

.third {
  right: 10%;
  bottom: 3rem;
}

.third .marker {
  width: 100px;
  height: 100px;
}




.hero-section {
  position: relative;
  width: 100%;
  text-align: center;
  display: flex;
  align-items: center;
}

.hero-content {
  width: 100%;
}

.hero-title {
  display: flex;
  justify-content: left;
  width: 100%;
  font-size: 3.5vw;
  letter-spacing: 2px;
  color: #fff;
  line-height: 3.5vw;
  vertical-align: bottom;
  font-family: 'Nunito', sans-serif;
  text-transform: uppercase;
}

.hero-title1 {
  font-size: 3.5vw;
  letter-spacing: 2px;
  color: #fff;
  text-align: left;
  line-height: 3.5vw;
  font-family: 'Nunito', sans-serif;
  text-transform: uppercase;
}

.word-container {
  position: relative;
  flex-grow: 1;
  overflow: hidden;
  height: 3.5vw; /* Match line-height to mask words properly */
  vertical-align: bottom;
}

.rotating-word {
  position: absolute;
  top: 0;
  left: 0;
  white-space: nowrap;
  width: 100%;
  text-align: left;
  height: 3.5vw; /* Ensure the height matches the container */
  line-height: 3.5vw; /* Match the line-height to ensure vertical alignment */
  opacity: 0;
}

.sub {
    color: #fff;
    font-size: 1.8rem;
    line-height: 1.2;
    margin-bottom: 40px;
}


/* Tab navigation buttons */
.tabs {
  display: flex;
  gap: 0.5rem;
  justify-content: space-evenly;
  margin-bottom: 3rem;
  font-weight: 600;
  font-size: 1.4rem;

}

.tab {
    padding: 5px 10px;
      cursor: pointer;
}

/* Viewport for sliding content */
.tab-viewport {
  width: 100%;
  overflow: hidden;
  position: relative;
}

/* Slider that moves horizontally */
.tab-slider {
  display: flex;
  width: 100%;
}

/* Each content panel */
.content {
  flex: 0 0 100%; /* each takes full width */
  box-sizing: border-box;
  font-size: 1.2rem;
  line-height: 1.2;
  letter-spacing: 1px;
  font-weight: 500;
}

.content ol, .content ul {
    margin-left: 2em;
}

.content li {
    margin-bottom: 10px;
}

.content span {
    font-style: italic;
    font-size: 1.2rem;
    line-height: 1;
}

.midtxt {
    font-size: 4vw;
    color: #009242;
    display: flex;
    justify-content: center;
    line-height: 0.1;
    padding-top: 80px;
    font-weight: 700;
}


h2.circletxt {
    font-size: 4vw;
    font-weight: 700;
    margin-bottom: 40px;
    text-align: center;
    color: #143e35;
    text-transform: uppercase;
}

.circletxt h3 {
    font-size: 1.8rem;
    font-weight: 600;
    line-height: 1.2;
}

.circletxt h3 span {
    font-size: 1.5rem;
}


.tagline-container {
display: flex;
align-items: center;
gap: 16px;
padding: 20px 0;
border-radius: 10px;
margin-block-start: 0;
}

.circle {
width: 60px;
height: 60px;
border-radius: 50%;
background-color: #009242; /* default blue */
display: flex;
align-items: center;
justify-content: center;
flex-shrink: 0;
}

.icon {
transition: transform 0.3s ease;
pointer: default;

}

.text-content {
display: flex;
flex-direction: column;
}

.tagline {
font-weight: 600;
font-size: 1.4rem;
line-height: 1.2;
color: #143e35;
}

.subtext {
color: #666;
line-height: 1.2;
}


.catbox {
  position: relative;
  display: flex;
  justify-content: right;
  align-items: center;
}


.catkins-cat {
    transform: rotateY(180deg);
    height: 300px;
    width: 195px;
    position: absolute;
}



.form-req .gfield_required {
    color: #143e35;
}

.launchImg figure {
    margin-bottom: 0 !important;
}

.launchBox {
    margin-bottom: 0;
}

.launch {
    color: #143E35;
    margin: 0 auto;
}

.launch span {
    font-style: italic;
}

.launch h3 {
    font-size: 2.1vw;
    color: #fff;
    margin-bottom: 0;
    font-weight: 600;
}

.launch p {
    font-size: 1vw;
    margin: 0;
    color: #fff;
}

.about {
    line-height: 1.2;
}

.about h3 {
    color: #fff;
    font-weight: 700;
    letter-spacing: 1px;
    font-size: 2rem;
}

.faq-container {
  max-width: 70%;
  margin: 2rem auto;
}

.faq-container h3 {
  font-size: 2.5vw;
  font-weight: 600;
  text-align: center;
  text-transform: uppercase;
  margin-bottom: 1.5rem;
  color: #143e35;
}

.faq {
  border: 1px solid #143e35;
  border-radius: 6px;
  margin-bottom: 1rem;
  cursor: pointer;
  background: #CEECE5;
}

.faq--title {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 1rem;
  font-weight: 700;
  letter-spacing: 1px;
  color: #143e35;
  text-transform: uppercase;
  font-size: 1.2rem;
}

.faq--title span {
  flex: 1;
}

.faq--title svg {
  width: 20px;
  height: 20px;
  stroke: #333;
  stroke-width: 2;
}

.faq--answer {
  overflow: hidden;
  height: 0;
  opacity: 0;
}

.faq--answer-text {
  padding: 0 1rem 1rem;
  line-height: 1.4;
  font-size: 1.1rem;
  color: #222;
}

.txtNO {
    margin-bottom: 40px;
}


.center-callout div {
    color: #143e35;
    font-size: 5vw;
    font-weight: 700;
    line-height: 1;
}

.center-callout {
    position: relative;
    z-index: 1;
    height: 100%;
    width: 100%;
}

.center-img img {
    margin: 0 auto;
    width: 400px;
}





.box {
width: 80px;
height: 55px;
background-image: url('/wp-content/uploads/2025/09/leaf1.svg');
background-repeat: no-repeat;
border-radius: 12px;
position: absolute;
transform-style: preserve-3d;
}

/* Random scattered positions */
.box1 { top: 0%; left: 20%; }
.box2 { top: 55%; right: 15%;}
.box3 { top: 60%; left: 5%;}
.box4 { bottom: 20%; right: 10%; }
.box5 { bottom: 0%; left: 20%; }








.boxes div {
  border-radius:1vw;
  background: hsl(0 0% 50%);
  width: 5vw;
  height: 5vw;
}

.boxes {
    position: relative;
}
.a {
    position: relative;
    top: 10px;
    left: 20px;
}
.b {
    position: relative;
    top: 40px;
    left: 80px;
}

.c {
    position: relative;
    top: 90px;
    left: 30px;
}






.home .site-main {
    margin-bottom: 0;
}



.site {
    overflow-x: initial;
}


.col-full {
    max-width: 90vw;
}

.edit-link {
    display: none;
}

img {
    border-radius: 0;
}

body, div#content.site-content {
  font-family: 'Nunito', sans-serif;
  color: #333;
  font-style: normal;
}

b, strong {
    font-weight: 500;
}

a {
    color: #2C5530;
}

a:hover {
    color: #555;
}


a:focus, button:focus, .button.alt:focus, input:focus, textarea:focus, input[type="button"]:focus,
input[type="reset"]:focus, input[type="submit"]:focus, input[type="email"]:focus, input[type="tel"]:focus,
input[type="url"]:focus, input[type="password"]:focus, input[type="search"]:focus, button:focus {
    outline-color: #e6e6e6;
    outline: 1px solid #e6e6e6;

}

.fa, .far, .fas, .fa-solid {
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    padding-right: 0.2em;
}

.fa, .fas, .far, .fal, .fad, .fab {
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    display: inline-block;
    font-style: normal;
    font-variant: normal;
    text-rendering: auto;
    line-height: 1;
}

.fa-check-circle:before {
    content: "\f058";
}

.fa-ul {
    display: inline-block;
    margin-bottom: 3em;
}

.hentry .entry-content a {
    text-decoration: none;
}

hr {
    margin: 2em 0;
}

h1, h1.page-title, .alpha {
    font-size: 2.5em;
    font-weight:  600;
    letter-spacing: 2px;
    color: #143e35;
}

h1.product_title {
    font-size: 1.4em;
    font-weight: 400;
}

h2, .beta {
    font-size: 1.6em;
    margin-bottom: 0.2em;
    font-weight:  400;
    color: #143e35;
}

h3, .gamma {
    font-size: 1.3em;
}

h4 {
    font-size: 1.2em;
}

h5 {
    font-size: 1.1em;
}

h6 {
    font-size: 1em;
}


.woocommerce-tabs .panel h2:first-of-type {
    font-size:  1.4em;
   font-weight: 400;
}

/** HEADER **/

.site-header {
    background-color: #143e35;
}

.widget.below-nav {
    background-color: #143e35;
}

.widget.below-nav p {
    font-size: 1.1rem;
}


#masthead .main-navigation {
    text-align: right;
}

.widget.above-header {
    margin-bottom: 0.7em;
    padding: 4px 0;
    background: #ecf4e0;
    color: #555;
    text-align: right;
}

.woocommerce-active .site-header div.site-branding {
    width: auto;
}

.widget.widget_product_search {
    margin-bottom: 0.7em;
}

.woocommerce-active .site-header .site-search {
    width: 17.73913%;
    margin-bottom: 1em;
/*    margin-top: 23px !important;*/
}


.home.page:not(.page-template-template-homepage) .site-header {
    margin-bottom: 0em;
}

.home .site-header {
    border-bottom: 0;
}

.site-header {
    padding-top: 0.7em;
}


.storefront-secondary-navigation.woocommerce-active .site-header .site-branding {
    width: 12.7391304348%;
    float: left;
    margin-right: 1.347826%;
    margin-bottom: 1em;
    margin-top: 0.7em;
}

.storefront-primary-navigation {
    background: #0085CA;
}

.above-header form {
    margin-bottom: 0;
    position: relative;
}

.above-header .wc-block-product-search.wp-block-woocommerce-product-search form::before, .above-header form:not(.wp-block-search)::before {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    display: inline-block;
    font-style: normal;
    font-variant: normal;
    font-weight: normal;
    line-height: 1;
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    line-height: inherit;
    vertical-align: baseline;
    content: "";
    position: absolute;
    top: 0.5em;
    left: 0.5em;
    line-height: 1;
    color: #333;
}

.above-header .wc-block-product-search .wc-block-product-search__field {
    padding: 1px 0px 1px 33px;
    line-height: 1.8;
    flex-grow: 1;
}

.above-header .wp-block-columns .wp-block-column {
    padding: 0;
}
.above-header .wp-block-columns {
    margin-bottom: 0;
}

/*.wc-block-product-search.wp-block-woocommerce-product-search {
    width: 15.73913%;
}*/

.storefront-breadcrumb {
    padding: 1.41575em 0;
    margin: 0 0 0.6325903em;
}

/*.widget_product_search form:not(.wp-block-search)::before {
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    content: "\f002";
    top: 1em;
    left: 1em;
    line-height: 1;
}*/

.wc-block-product-search .wc-block-product-search__field {
    padding: 1px 8px;
    line-height: 1.8;
    flex-grow: 1;
}

.hdrPh, .hdrtxt {
    font-size:  1em;
    font-weight:  400;
    letter-spacing: 1px;
}

.hdrtxt {
    padding-right: 30px;
}

.secondary-navigation ul.menu li.hdrPh > a:before {
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    content: "\f095";
    padding-right: 0.3em;
    display: inline-block;
}

/** NAVIGATION **/

.woocommerce-active .site-header .main-navigation {
    float: right;
    clear: none;
    width: 62%;
    margin-right: 0;
}

.main-navigation ul.menu>li>a, .main-navigation ul.nav-menu>li>a {
    padding: 0.618em 1em;
}

.main-navigation ul li a, ul.menu li a {
    font-weight: 500;
    font-style: normal;
    text-transform: uppercase;
    letter-spacing: 2px;
    font-size: 1.2em;
    color: #fff;
}


.site-header ul.menu li.current-menu-item > a {
    color: #fff;
}

.site-header ul.menu li.current-menu-item > a:hover {
        color: #CEECE5;
}


.main-navigation ul li a:hover, .main-navigation ul li:hover > a, .site-title a:hover, .main-navigation ul li a:focus, .main-navigation ul li:focus > a, .site-title a:focus {
    color: #CEECE5;
    border-bottom: 0;
}

.main-navigation ul.menu ul li a, .main-navigation ul.nav-menu ul li a {
    font-weight: 500;
    background-color: #fff;
}

.storefront-secondary-navigation.woocommerce-active .site-header .secondary-navigation {
    width: 65.826087%;
    float: left;
    margin-right: 1.347826%;
    margin-top: 0;
    font-size: 1.1em;
    margin-bottom: 0;
}

.secondary-navigation .menu {
    color: #52add0;
}

.secondary-navigation ul.menu li a,
.secondary-navigation ul.menu li.fa-phone a
.secondary-navigation ul.menu li a:hover,
.secondary-navigation ul.menu li.fa-phone a:hover {
    font-weight: 500;
    display: inline-block;
    margin-right: 15px;
    padding-left: 0.5em;
    color: #52add0;
}

.secondary-navigation ul.menu a:hover {
    color: #52add0;
}

ul.wc-block-product-categories-list.wc-block-product-categories-list--depth-1 {
    display:  none;
}



/** BUTTONS **/

a.btn, a.btn.btn-primary, a.btn.btn-outline-primary {
    text-decoration: none;
}

.btn {
    padding: 5px;
    cursor: pointer;
    border-width: 1px;
    border-radius: 1px;
    font-size: 1em;
    font-weight: 500;
/*    -webkit-box-shadow: 0px 10px 20px -6px rgb(0 0 0 / 12%);
    -moz-box-shadow: 0px 10px 20px -6px rgba(0, 0, 0, 0.12);
    box-shadow: 0px 10px 20px -6px rgb(0 0 0 / 12%);*/
    overflow: hidden;
    position: relative;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    -webkit-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    transition: all 0.3s ease;
    text-align: center;
    vertical-align: middle;
}

.btn:hover, .btn:active, .btn:focus {
    outline: 0 !important;
}

button:focus {
    outline: 0;
}

.btn.btn-primary:hover, .btn.btn-primary:focus {
    border-color: #006498 !important;
    background: #006498 !important;
}

.btn.btn-primary {
    background: #469ECB;
    border-color: #469ECB;
    color: #fff;
}

.wcpf-field-button .wcpf-button {
    font-size: 0.9em;
    font-weight: 500;
    font-family: 'Inter', sans-serif;
    border: 1px solid #727272;
    border-radius: 1px;
    letter-spacing: 2px;
    color: #727272;
}

.btn.btn-outline-primary {
    color: #2C5530;
    border: 1px solid #7fbf80;
    border-radius: 1px;
    text-transform: uppercase;
    font-weight: 400;
    font-size: 0.8em;
    letter-spacing: 2px;
    display: block;
}


.btn.btn-outline-large {
    color: #2C5530;
    border: 1px solid #2C5530;
    font-weight: 400;
    font-size: 0.93em;
    text-transform: uppercase;
    letter-spacing: 1px;
    padding: 10px;
    transition: all 0.35s ease-in-out;
}

.btn.btn-large {
    color: #fff;
    border: 1px solid #2C5530;
    font-weight: 400;
    font-size: 0.93em;
    text-transform: uppercase;
    letter-spacing: 1px;
    padding: 10px;
    background: #2C5530;
    transition: all 0.35s ease-in-out;
}


.btn.btn-outline-primary:hover, .btn.btn-outline-primary:focus,
.wcpf-field-button .wcpf-button:hover, .wcpf-field-button .wcpf-button:focus {
    color: #fff;
    background: #7fbf80;
}


.btn.btn-large {
    &:hover, &:focus {
        border-color: #8AB165;
        color: #251605;
        box-shadow: inset 17em 0 0 0 #8AB165;
    }
}

.btn.btn-outline-large {
    &:hover, &:focus {
        border-color: #BAB2A2;
        color: #251605;
        box-shadow: inset 17em 0 0 0 #BAB2A2;
    } 
}

/** HOME PAGE **/


.callover { 
    background: #E9ECDC;
    padding: 20px 40px 20px 20px;
    display: flex;
    flex-basis: auto;
    justify-content: space-between;
    align-items: center;
    gap: 15px;
    transform: translate(6%, 25px) scale(1.12);
}

.callout {
    display: flex;
    align-items: center;
    gap: 1rem;
}

.callout img {
    transform: scale(0.9);
}

.callout:first-child {
    gap: 0;
}

.calloutTxt {
    display: flex;
    flex-direction: column;
    font-weight: 400;
    font-size: 0.95rem;
    line-height: 1.2;
    color: #251605;
}

.calloutTxt span {
    color: #2C5530;
    font-weight: 500;
    font-size: 1.1rem;
    margin-bottom: 0.2rem;
}

.home-item, .home-item2 {
    margin-bottom: 10em;
}

.sectionBkg1 {
    position: relative;
    width: 100%;
    height: auto;
    padding: 40px;
}

.sectionBkg1:before {
      position: absolute;
      content: "";
      left: 0;
      top: 0;
      background: #E9ECDC;
      width: 100%;
      height: 100%;
      border-radius: 50% 0 0 0;
  }

  .sectionBkg1 .item-img {
    transform: translate(25%, 25px) scale(1.15) rotate(-3deg);
    position: absolute;
    bottom: 0;
  }

  .turf-bkg {
    position: relative;
    height: auto;
    margin: 0 auto;
  }


  .sectionBkg2 {
    position: relative;
    width: 100%;
    height: auto;
    padding: 40px;
}

.sectionBkg2:before {
      position: absolute;
      content: "";
      left: 0;
      top: 0;
      background: #E9ECDC;
      width: 100%;
      height: 100%;
      border-radius: 0 50% 0 0;
  }


  .sectionBkg2 .item-img {
    transform: translate(-25%, 35px);
    position: absolute;
    bottom: 0;
  }

  /** SLIDE - APLINE **/
.slide-in-element1 {
  opacity: 0;
  transform: translate(-25%, 25px) scale(1.15);
  transition: all 0.5s ease-in-out;
}

.slide-in-element1.is-visible {
  opacity: 1;
  transform: translate(0, 25px) scale(1.15);
}

.slide-in-element2 {
  opacity: 0;
  transform: translate(25%, 35px);
  transition: all 0.5s ease-in-out;
}

.slide-in-element2.is-visible {
  opacity: 1;
  transform: translate(0, 35px);
}


/* ---- Create Accordion --- */

.catHead {
    font-size: 1.8rem;
    font-weight: 600;
    text-transform: uppercase;
    margin-top: 4rem;
    color: #251605;
    line-height: 1.4;
}

.cat.accordion{ 
  max-width: 100%;
  height: 250px;
  display: flex;
  flex-direction: row;
  overflow: hidden;
  margin: 1em auto 10em;
}

.cat.accordion .tab{
  position: relative;
  width: auto;
  flex-grow: 1;
  height: inherit;
  border-right: 3px solid #fff;
  padding: 20px;
  background: #000;
  color: #fff;
  cursor: pointer;
  transition: all .5s ease-in-out;
}

.cat.accordion .tab img{
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-position: 50% 50%;
  filter: brightness(70%);
  object-fit: cover;
  transition: all .5s ease-in-out;
}

.tab .caption {
  position: absolute;
  z-index: 2;
  white-space: normal;
  top: 75%;
 text-overflow:clip;
}

.tab .caption h2{
  margin-bottom: 2px;
  text-overflow:clip;
  font-size:1.4rem;
  letter-spacing: 1px;
  font-weight: 400;
  color: #fff;
  opacity: 1;
  text-transform:uppercase;
}

.tab .caption p{
  margin: 0;
  opacity: 0;
  color: #fff;
  text-transform: uppercase;
  font-size: 0.8rem;
  letter-spacing: 1px;
}

/* --- Hover Effects --- */


.wc-block-featured-category {
    min-height: 300px !important;
}

.home .hentry .entry-content .wp-block-button .wp-block-button__link {
    font-size: 0.8em;
    letter-spacing: 2px;
    text-transform: uppercase;
    font-weight: 400;
    border: 1px solid;
}

.home .hentry .entry-content .wp-block-button .wp-block-button__link:focus, .home .hentry .entry-content .wp-block-button .wp-block-button__link:hover {
    border: 1px solid;
    background: #ecf4e0;
    color: #2C5530;
}

.home .entry-title {
    margin: 40px 0 10px;
}

.home .fa-ul {
    list-style-type: none;
    padding-left: 0;
    margin-left: 20px;
}

.home .fa-li {
    left: -1.6em;
}

.home .fa-ul>li {
    display: inline-block;
    padding-right: 2em;
    font-size:  0.95em;
}


.above-footer {
    background: #E9ECDC;
}

.widget.above-footer {
  margin-bottom: 0;
    padding: 2em 5%;
}


.home .content-area {
    margin: 2em 0 0;
}


.homeContent{
    padding: 0 2em;
}

.home .wp-block-columns h1 {
    font-size: 2.5em;
    letter-spacing: 1px;
    text-align: left;
    font-weight: 600;
    color: #251605;
    text-transform: uppercase;
    margin-bottom: 0.5em;
    margin-block-start: 0;
}

.home .wp-block-columns h2 {
    font-size: 1.6em;
    font-weight: 400;
    letter-spacing: 2px;
    text-transform: uppercase;
    margin-bottom: 0.1em;
}

.home .wp-block-column.colMid h1  {
    color: #fff;
}

.home .wp-block-column.colMid h2 {
    color: #ddd;
}


sup {
    font-size: 60%;
}


/** PRODUCT **/

.onsale {
    margin: 0 0 1em;
    border-color: #fff;
    background-color: #2C5530;
    color: #fff;
    letter-spacing: 1px;
}

.single-product div.product p.price {
    margin: 0 0 1.41575em;
}

.wholesale {
    padding: 10px 20px;
    background-color: #E9ECDC;
    line-height: 1.3;
    color: #251605;
    box-shadow: rgba(0, 0, 0, 0.16) 0px 1px 4px;
}

.wholesale span {
    font-weight: 500;
    letter-spacing: 1px;
    font-size: 1.5rem;
}

.wholesale p {
    font-weight: 400;
    margin: 0;
    font-style: italic;
    font-size: 1.2rem;
}

.wholesale a {
    color: #251605;
}

.wholesale a:hover, .wholesale a:focus {
    color: #2C5530;
}

ul.products li.product .woocommerce-loop-product__title, ul.products li.product .woocommerce-loop-category__title {
    margin-top: 0.7em;
}

/* CUSTOM ON-HOVER IMAGE */
.woocommerce ul.products li.product.type-product a img { 
    /* FORMAT ALL IMAGES TO FILL EQUIVALENT SPACE,
    to remove jitter on replacement */
    height: 196px;
    width: 196px;
    object-fit: cover;
    padding: 0;
    margin: 0 auto;
    transition: all .3s ease-out;
}
.woocommerce ul.products li.product.type-product a img:nth-of-type(2) {
    display: none;
}
.woocommerce ul.products li.product.type-product a:hover img:nth-of-type(2) {
    display: block
}
.woocommerce ul.products li.product.type-product a:hover img:nth-of-type(1) {
    display: none;
}


.woocommerce-Tabs-panel td {
    border-bottom: 1px solid #cccccc;
    border-top: 0;
}

.woocommerce-Tabs-panel table td, table th {
    padding: 0.2em 0.41575em;
}


.woocommerce-Tabs-panel table.sizeTBL tbody tr.alt td,
.woocommerce-Tabs-panel table.sizeTBL tbody tr td.pn,
.woocommerce-Tabs-panel table.sizeTBL tbody tr.alt td,
.woocommerce-Tabs-panel table.sizeTBL tbody tr td {
    padding: 0 1em;
}

.woocommerce-Tabs-panel table.sizeTBL tbody tr td.pn {
    font-weight:  400;
    letter-spacing: 1px;
}

table.woocommerce-product-attributes.shop_attributes th,
table.woocommerce-grouped-product-list.group_table th {
    font-weight: 400;
}

table.woocommerce-product-attributes.shop_attributes td,
table.woocommerce-product-attributes.shop_attributes th,
table.woocommerce-grouped-product-list.group_table td,
table.woocommerce-grouped-product-list.group_table th {
    padding: 0.5em 1em;
    line-height: 1.2em;
}

table.woocommerce-product-attributes.shop_attributes tr:nth-child(2n) th,
table.woocommerce-grouped-product-list.group_table tr:nth-child(2n) th,
table.woocommerce-product-attributes.shop_attributes tr:nth-child(2n) td,
table.woocommerce-grouped-product-list.group_table tr:nth-child(2n) td {
    background-color: #eeeeee;
}

table:not( .has-background ) th, table:not( .has-background ) tbody td {
    background-color: #ffffff;
}

table:not( .has-background ) tbody tr:nth-child(2n) td, table:not( .has-background ) tbody tr:nth-child(2n) th, fieldset, fieldset legend {
    background-color: #eeeeee;
}

.woocommerce-Tabs-panel table:not( .has-background ) tbody tr:nth-child(2n) td,
.woocommerce-Tabs-panel table:not( .has-background ) tbody tr:nth-child(2n) th {
    background-color: #ffffff;
}


table.woocommerce-product-attributes.shop_attributes td p:last-child,
table.woocommerce-product-attributes.shop_attributes th p:last-child,
table.woocommerce-grouped-product-list.group_table td p:last-child,
table.woocommerce-grouped-product-list.group_table th p:last-child {
    margin-bottom: 0;
    text-align: left;
}



.woocommerce-grouped-product-list-item td label{
    font-size: 1em;
}

.single-product div.product form.cart {
    margin-bottom: 0.5em;
    padding: 0.2em 0;
}

.woocommerce-tabs {
    padding-top: 1.3em;
    padding-bottom: 2.617924em;
}


.wcpf-field-color-list .wcpf-heading-label, .wcpf-field-text-list .wcpf-heading-label,
.wcpf-field-box-list .wcpf-heading-label, .wcpf-field-checkbox-list .wcpf-heading-label,
.wcpf-field-radio-list .wcpf-heading-label, .wcpf-field-drop-down-list .wcpf-heading-label,
.wcpf-field-price-slider .wcpf-heading-label {
    padding: 3px 0;
    font-size: 0.96em;
    font-weight: 400;
    color: #727272;
    font-family: 'Inter', sans-serif;
    text-transform: none;
}

.wcpf-field-checkbox-list .wcpf-checkbox-list .wcpf-checkbox-item .wcpf-checkbox-label {
    color: #727272;
    font-size: 0.83em;
}

.wcpf-front-element {
    margin-bottom: 4px;
}

/** BLOG **/


.wp-block-query ul {
    margin: 2em 0 1.41575em 0;
}

.wp-block-query .hentry {
    margin: 0;
}

.wp-block-query .gb-headline-text {
    font-size: 0.9em;
    text-transform: uppercase;
    letter-spacing: 0.2em;
    background: #333;
    color: #fff;
    padding: 5px 15px;
    min-width: 135px;
    display: inline-block;
    margin: 0;
}

.wp-block-query .wp-block-post-date {
    margin: 0 0 0.5em;
    border-bottom: 1px solid #eee;
    text-transform: uppercase;
    font-size: .857em;
}

.wp-block-query figure.wp-block-post-featured-image img {
    margin-bottom: 0.618em;
}


.blog .hentry .entry-taxonomy {
    margin: 0;
    padding: 1em;
    border-top: 0;
    background: #333;
    display: inline-block;
    min-width: 200px;
    color: #fff;
}

.blog .cat-links, .blog .tags-links, .archive .cat-links, .archive .tags-links {
    font-size: 0.9em;
    text-transform: uppercase;
    letter-spacing: .2em;
    background: #333;
    padding: 5px 15px;
    min-width: 135px;
    display: inline-block;
}

.blog .cat-links a, .blog .tags-links a, .archive .cat-links a, .archive .tags-links a {
    color: #fff;
    font-weight: 400;
    text-decoration: none;
}

.blog .tags-links {
    display: none;
}

.blog .post-date, .archive .post-date {
    margin: 1em 0;
    border-bottom: 1px solid #eee;
    text-transform: uppercase;
}

.blog .moretag, .archive .moretag, .blog .moretag a, .archive .moretag a {
    color: #333;
    text-decoration: underline;
    text-transform: uppercase;
    letter-spacing: .1em;
}


.hentry .entry-header .posted-on a, .hentry .entry-header .post-author a, .hentry .entry-header .post-comments a, .hentry .entry-header .byline a {
    font-weight: 400;
    text-decoration: none;
    color: #666;
}


.single-post .hentry .entry-header h1.entry-title {
    border-top: 1px solid rgba(0,0,0,.05);
    padding-top:.5407911001em;
}

.single-post .hentry .entry-header span.posted-on {
    text-transform: uppercase;
    color: #666;
}

.single-post .hentry .entry-header span.post-author {
    display: none;
}


.widget_recent_entries ul li {
    padding-left: 0;

}

.widget_recent_entries ul li::before, .widget_pages ul li::before {
    display: none;
}


.social-btn a:last-of-type {
    margin: 0;
}


.social-box {
    display: block;
    margin: -20px 0 40px;
    padding: 0 6rem 0;
    text-align: center;
    border-top: 1px solid rgba(0,0,0,.05);
}

.social-box:last-of-type {
    margin: 0 0 40px;
}

.social-btn {
    display: block;
    width: 100%;
}

.sharelnks {
    display: block;
    font-style: italic;
    margin: 5px 0;
    color: #999;
    letter-spacing: 2px;
    font-size: 0.8em;
}

a.col-1.sbtn span, a.col-2.sbtn span {
    display: none;
}

/*a.col-1.sbtn {
    width: 180px;
    display: inline-block;
    text-align: center;
    border-radius: 50px;
    padding: 10px;
    color: #fff;
    margin: 0 0.5% 0 0;
    font-size: 15px;
}
*/
/*a.col-1.sbtn span {
    margin: 0 0 0 15px;
}*/

a.col-1.sbtn, a.col-2.sbtn {
    width: 6%;
    display: inline-block;
    text-align: center;
    border-radius: 40px;
    padding: 5px;
    color: #999;
    margin: 0 1% 0 0;
    line-height: 1.825 !important;
    max-width: 40px;
    min-width: 40px;
}

.s-twitter {
    background: #fff;
    border: 1px solid #999;
}
.s-twitter::before {
    font-family: 'Font Awesome 5 Brands', 'Font Awesome\ 5 Free';
    font-weight: 900;
    content: '\f099';
}
a.col-1.sbtn.s-twitter:hover {
    background: #999;
    border: 1px solid #999;
    color: #fff;
}


.s-facebook {
    background: #fff;
    border: 1px solid #999;
}
.s-facebook::before {
    font-family: 'Font Awesome 5 Brands', 'Font Awesome\ 5 Free';
    font-weight: 900;
    content: '\f39e';
}
a.col-1.sbtn.s-facebook:hover {
    background: #999;
    border: 1px solid #999;
    color: #fff;
}

.s-linkedin {
    background: #fff;
    border: 1px solid #999;
}
.s-linkedin::before {
    font-family: 'Font Awesome 5 Brands', 'Font Awesome\ 5 Free';
    font-weight: 900;
    content: '\f0e1';
}
a.col-2.sbtn.s-linkedin:hover {
    background: #999;
    border: 1px solid #999;
    color: #fff;
}


.s-pinterest {
    background: #fff;
    border: 1px solid #999;
}
.s-pinterest::before {
    font-family: 'Font Awesome 5 Brands', 'Font Awesome\ 5 Free';
    font-weight: 900;
    content: '\f231';
}
a.col-2.sbtn.s-pinterest:hover {
    background: #999;
    border: 1px solid #999;
    color: #fff;
}


/** FOOTER **/


.site-footer {
    background: #143e35;
    color: #fff;
    padding: 1em 0 2em 0;
    font-size: 0.85em;
}

.site-footer h5 a {
    font-size:  1em;
    font-weight: 500;
    letter-spacing: 1px;
}

.site-footer h6 {
    font-size: 1.2em;
    font-weight: 400;
    letter-spacing: 1px;
    color: #ecf4e0;
    border-bottom: 1px solid rgba(234, 244, 224, 0.08);
}

.contactinfo {
    margin-top: 20px;
}

.ftname {
    font-size: 1.5em;
    letter-spacing: 2px;
}

.footer-widgets {
    padding-top: 2.235801032em;
    border-bottom: 1px solid rgba(255,255,255,.1);
}

.site-footer a:not(.button):not(.components-button) {
    text-decoration: none;
    color: #eee;
}

.site-footer a:hover, .site-footer a:not(.button):not(.components-button):hover {
    text-decoration: underline;
    color: #fff;
}

.footer-credit {
    display: flex;
    align-items: center;
    padding-top: 15px;
}

.site-info {
    padding: 0.7em 0;
    width: 50%;
    text-align: right;
    font-size: 0.8em;
}

.site-social {
    width: 50%;
    display: flex;
    gap: 1em;
    font-size: 1.1rem;
    font-weight: 300;
    letter-spacing: 1px;
}

.fa-tiktok {
    background-image: url('/wp-content/uploads/2025/09/tiktok.svg');
    background-repeat: no-repeat;
    width: 23px;
    height: 28px;
}

.ftrTmrk, .ftrTmrk2 {
    padding: 1.2em 0 0 0;
    font-size: 0.65em;
    line-height: 1.13em;
    background: #247AA7;
    color: #fefefe;
}

.home .ftrTmrk {
    padding: 1.2em 0 0 0; 
}

.ftrTmrk2 {
    padding: 1.2em 0; 
}

.ftrTmrk .col-full:after {
    padding-bottom: 1.2em;
}



.topbutton {
     height:50px;
     width:50px;
     position:fixed;
     right:15px;
     bottom:3px;
     Z-index:1;
     background-image:url("/wp-content/uploads/2025/09/arrow-up-grn.svg");
     background-repeat:no-repeat;
}


#viewport {
  height: 100%;
  width: 100%;
  overflow: visible;
}

#viewport.desktop {
  overflow: hidden;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}


/************ MISC ************/

p+h2, p+h3, p+h4, ul+h2, ul+h3, ul+h4, ul+h5 {
    margin-top: 0;
}

h2+h3 {
    border-top: 0;
    padding-top: 0;
}

.supsystic-table {
    font-size: 0.9em !important;
}

.supsystic-tables-wrap .supsystic-table .bold {
    font-weight: 500 !important;
}

table.dataTable thead th {
    font-weight: 500 !important;
}

.privacyTxt li {
    margin-bottom: 0.3em;
}



.lghead {
    font-size: 1.8em;
    color: #251605;
    font-weight: 400;
    letter-spacing: 1px;
}

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

@media screen and (prefers-reduced-motion: reduce) {
    html {
        scroll-behavior: auto;
    }
}


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

   .box2 {
    top: 45%;
    right: 20%;
   }

    .tab {
        font-size: 1.3rem;
    }

    .content, .content span {
        font-size: 1.1rem;
        line-height: 1.1;
    }

    .about {
        font-size: 1.1rem;
        line-height: 1.1;
    }

    .about h3 {
        font-size: 1.5rem;
    }

    .launch h3 {
        font-size: 2.5rem;
    }

    .launch p {
        font-size: 1.3rem;
    }

    .faq-container h3 {
        font-size: 2.5rem;
    }
}

@media only screen and (max-width: 1200px) {
    .tab {
        font-size: 1.2rem;
    }

    .box2 {
        top: 45%;
    }

    .inst .wp-block-media-text__content {
        padding-top: 5%;
        padding-bottom: 5%;
    }

    .about {
        padding-top: 5%;
        padding-bottom: 3%;
    }

    a.col-1.sbtn {
        width: 180px;
        display: inline-block;
        text-align: center;
        border-radius: 50px;
        padding: 10px;
        color: #fff;
        margin: 0 0.5% 0 0;
        font-size: 15px;
    }
}


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

    .initial {
        bottom: -100px;
    }

    .midtxt {
        padding-top: 0;
    }

    h2.circletxt {
        font-size: 3rem;
        margin-top: 60px;
    }


    .box1 {
        left: 10%;
    }

    .box2 {
        top: 65%;
    }

    .tab-section {
        margin: 0;
        grid-template-columns: 100% !important;
    }

        .wp-block-media-text.is-stacked-on-mobile>.wp-block-media-text__media {
        grid-column: 1;
        grid-row: 1;
    }

        .wp-block-media-text.is-stacked-on-mobile>.wp-block-media-text__content {
        grid-column: 1;
        grid-row: 2;
        padding: 5% 8%;
    }

    .bullet-container {
        margin-bottom: 20px;
    }

    .circletxt {
        flex-wrap: wrap !important;
    }

    .circletxt .wp-block-column {
        flex-basis: 100% !important;
    }

    .midtxt {
        font-size: 7vw;
        line-height: 0.9;
        flex-wrap: wrap;
    }

    .launch h3 {
        font-size: 2rem;
    }

    .launch p {
    font-size: 1.3rem;
    }

    .center-callout div {
        font-size: 8vw;
    }

    .initial1 {
        left: calc(3%);
    }


    .faq-container {
        max-width: 100%;
    }

.faq-container h3 {
    font-size: 4vw;
}

    .secondary-navigation .menu a {
        padding: 0.5em 0.875em;
    }

    .woocommerce-active .site-header .site-search {
        width: 17.73913%;
    }

    .main-navigation ul.menu>li>a, .main-navigation ul.nav-menu>li>a {
        padding: 0.618em 0.8em;
        font-size: 0.95em;
    }

}


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

    .initial {
        bottom: -25%;
    }

    .gb-text-82230e5e /*top section button*/ {
        font-size: 1.1rem;
    }

    .initial1 {
        display: none;
    }

    .box1 {
        left: 5%;
    }

    .box2 {
        right: 0%;
    }

    .box3 {
        left: 0%;
        top: 90%;
    }

    .launch h3 {
        font-size: 1.6rem;
    }

    .launch p {
        font-size: 1.2rem;
    }

    .launchBox .wp-block-spacer {
        margin-block-start: 0;
        display: none;
        height: 0;
    }

    .faq-container h3 {
        font-size: 5vw;
    }

}

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

    .initial {
        bottom: -35%;
    }

    .catbox {
        align-items: end;
        bottom: -65px;
    }

    .catkins-cat {
        height: 220px;
        width: 160px;
    }

    .box2 {
        top: 50%;
    }
}


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

    .woocommerce-active .site-header .main-navigation {
        width: 100%;
    }

    .maintxt {
        padding: 10vh 0 0;
    }

    .mainimg {
        margin: 0 auto;
    }

    .initial {
        bottom: -14%;
    }


    .initial1  {
        display: none;
    }

    .sub {
        font-size: 2.3rem;
    }

    .word-container, .rotating-word {
        height: 6vw;
    }


    .hero-title, .hero-title1, .rotating-word {
        font-size: 6vw;
        line-height: 6vw;
    }

    .tabs {
        flex-direction: column;
    }

    .form-spacer {
        display: none;
    }

    h2.circletxt {
        font-size: 2.9rem;
    }

    .midtxt {
        font-size: 7vw;
    }

    .catbox {
        align-items: baseline;
        justify-content: center;
        bottom: 0px;
    }

    .catkins-cat {
        height: 200px;
        width: 160px;
        top: -55px;
    }

    .tab-section {
        margin: 0;
        grid-template-columns: 100% !important;
    }

     .wp-block-media-text.is-stacked-on-mobile>.wp-block-media-text__media {
        grid-column: 1;
        grid-row: 1;
    }

    .wp-block-media-text.is-stacked-on-mobile>.wp-block-media-text__content {
        grid-column: 1;
        grid-row: 2;
        padding: 5% 8%;
    }

    /** PRODUCT **/

    ul.products li.product, ul.products .wc-block-grid__product, .wc-block-grid__products li.product, .wc-block-grid__products .wc-block-grid__product {
        float: left;
        width: 50%;
        margin-bottom: 1em;
      }

    .site-main ul.products.columns-4 li.product {
    width: 46.05%;
    margin-right: 3.8%;
    }

    /** HEADER **/

    .site-header .site-branding {
        width: 14.73913%;
        float: left;
        margin-right: 5.347826%;
        margin-bottom: 0.4em;
    }

    .woocommerce-active .site-header .site-search {
        width: 25.73913%;
    }

    .storefront-secondary-navigation.woocommerce-active .site-header .secondary-navigation {
        width: 52.826087%;
    }

    .secondary-navigation {
        display: flex;
        width: 65%;
        float: right;
    }

    .secondary-navigation ul {
        list-style: none;
        margin: 0;
    }

    .site-header {
        padding-bottom:  0.2em;
    }

    .main-navigation ul li a {
        padding: 0.2em 0;
    }

    .main-navigation ul.menu>li>a, .main-navigation ul.nav-menu>li>a {
        font-size: 0.9em;
    }

    .main-navigation ul.menu>li.menu-item-has-children>a::after, .main-navigation ul.menu>li.page_item_has_children>a::after, .main-navigation ul.nav-menu>li.menu-item-has-children>a::after, .main-navigation ul.nav-menu>li.page_item_has_children>a::after {
        margin-left: 0.5em;
    }

    .main-navigation ul.menu>li>a, .main-navigation ul.nav-menu>li>a, .main-navigation ul.menu ul li a, .main-navigation ul.nav-menu ul li a {
        padding: 0.618em;
    }

}

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

    .woocommerce-active .site-header .main-navigation {
        width: 38%;
    }

    .navphone {
        display: none;
    }

    .site-footer {
        padding: 1em 0 6em 0;
    }

    .footer-credit {
        flex-wrap: wrap;
    }

    .site-info {
        text-align: left;
        width: 100%;
    }

    .site-social {
        width: 100%;
    }

}

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

    .center-callout {
        margin-bottom: 25vh;
        margin-top: 25vh;
    }

}

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

    .initial {
        bottom: -12%;
    }

    .sub {
        font-size: 1.7rem;
    }

    .tabs {
        flex-direction: column;
    }

    .tab {
        font-size: 1.8rem;
    }

     h2.circletxt {
        font-size: 3.9rem;
    }

    .center-callout {
        margin-bottom: 15vh;
        margin-top: 15vh;
    }

    .box1, .box2, .box3 {
        z-index: -1;
    }

    .launch h3 {
        font-size: 3.5rem;
        line-height: 1;
        margin-bottom: 40px;
    }

    .faq-container h3 {
        font-size: 9vw;
    }

    .about h3 {
        font-size: 2.3rem;
    }

}

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


    .sub {
        font-size: 1.4rem;
    }

    .initial {
        display: none;
    }

    .mainimg {
        top: 7vh;
    }

    .box1 {
        top: -75px;
        left: 0;
    }


    .midtxt {
        font-size: 10vw;
        text-align: center;
    }

    .about h3 {
        font-size: 1.6rem;
    }

    .faq--title {
        font-size: 3.5vw;
    }

    .center-callout div {
        font-size: 11vw;
    }


    .secondary-navigation {
        display: none;
    }

    .main-navigation ul.menu>li>a, .main-navigation ul.nav-menu>li>a {
        padding: 5px 0 0;
        font-size: 0.95em;
    }

    .site-header ul.menu li.current-menu-item > a {
        border-bottom: none;
    }

    .main-navigation ul li a:hover, .main-navigation ul li a:focus {
        border-bottom: none;
    }

    .main-navigation ul li a:last-child {
        margin-bottom: 0;
    }

    .main-navigation ul li a {
        padding: 0.2em 0.95em;
        font-size: 0.95em;
    }

    .handheld-navigation button {
        padding: 0.6180469716em 1em;
    }

    ul.products li.product, ul.products .wc-block-grid__product, .wc-block-grid__products li.product, .wc-block-grid__products .wc-block-grid__product {
        width: 100%;
    }

    .cat.accordion {
        margin: 1em auto 5em;
    }

    .home-item, .home-item2 {
        margin-bottom: 5em;
    }


    .home .widget.above-content-1 {
        margin: 30px 0;
    }

    .home .widget.above-content-3 {
        margin: 30px 0 0;
    }


    .home .wp-block-query .wp-block-post {
        margin: 0 0 1.235801032em;
    }

      .site-footer .storefront-handheld-footer-bar a:hover, .site-footer .storefront-handheld-footer-bar a:not(.button):not(.components-button):hover {
        text-decoration: none;
        color: #333;
    }

}


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

    .my-object2 {
        display: none;
    }

    .launch h3 {
        font-size: 2.5rem;
    }

    .catkins-cat {
        top: -35px;
    }

    h2.circletxt {
        font-size: 2.85rem;
    }

    .box {
        width: 50px;
        height: 36px;
    }

    .box2 {
        top: 60%;
    }

}


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

    .hero-title, .hero-title1, .rotating-word {
        font-size: 7vw;
        line-height: 7vw;
    }

    .word-container, .rotating-word {
        height: 7vw;
    }

    .catkins-cat {
        height: 150px;
        width: 115px;
        top: -33px;

    }

    h2.circletxt {
        font-size: 2.6rem;
    }

    .faq-container h3 {
        font-size: 9vw;
    }

    .launch h3 {
        font-size: 2.5rem;
        line-height: 1.2;
        margin-bottom: 30px;
    }

    .about h3 {
        font-size: 2.2rem;
    }

    .woocommerce-active .site-header div.site-branding {
        width: calc(100% - 150px);
    }

    .secondary-navigation {
        display: none;
    }

}