/* #region Global */
  body, h1, h2, h3, h4, h5, h6,[type="color"], [type="date"], [type="datetime-local"], [type="datetime"], [type="email"], [type="month"], [type="number"], [type="password"], [type="search"], [type="tel"], [type="text"], [type="time"], [type="url"], [type="week"], textarea, .button{font-family: 'Open Sans', sans-serif;}
  h1, h2, h3, h4, h5, h6{font-weight: 600;}
  a{color: #0a0a0a;}
  a:hover, a:focus{color: #000;}

  .padding-top-2{padding-top: 2rem!important;}
  .padding-top-3{padding-top: 3rem!important;}
  .padding-bottom-2{padding-bottom: 2rem!important;}
  .padding-bottom-3{padding-bottom: 3rem!important;}
  .margin-top-1{margin-top: 1rem!important;}
  .margin-top-2{margin-top: 2rem!important;}
  .margin-top-3{margin-top: 3rem!important;}
  .margin-bottom-0{margin-bottom: 0!important;}
  .margin-bottom-1{margin-bottom: 1rem!important;}
  .margin-bottom-2{margin-bottom: 2rem!important;}
  .margin-bottom-3{margin-bottom: 3rem!important;}
  .margin-right-0{margin-right: 0!important;}
  .margin-right-1{margin-right: 1rem!important;}
  .margin-right-2{margin-right: 2rem!important;}
  .margin-right-3{margin-right: 3rem!important;}
  .font-weight-bold{font-weight: 700!important;}

  .table-scroll table{width: 100%;}

  .text-gray{color: #777;}
/* #endregion */

/* #region Header */
  .navbar{border-bottom:1px solid #ddd;padding:30px 1rem;}
  .navbar a{color: #0a0a0a;}
  .navbar-logo{font-size: 2rem;font-weight: 600;}
  .menu-left{margin-left: -1rem;}
  .menu-left a{padding-top:.75rem;padding-bottom: .75rem;}
  .social{margin-right: -1rem;}
  .social a{padding-top:.5rem;padding-bottom: .5rem;}
  .icon>svg{width: 1.60rem;height:1.60rem;display: block;}
  .icon-cart{position: relative;}
  .icon-cart-quantity{position: absolute;display: block;font-family: inherit;top:0;right:.25rem;min-width: 1em;font-size: 10px;padding: .5em;text-align: right;line-height: 1em;}
  .title-bar{background: transparent;}
  
  .burger {
    position: relative;
    display: block;
    cursor: pointer;
    background-color: transparent;
    border: none;
    padding:0;
    margin-left: -.625rem;
  }
  .burger-box {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 35px;
    height: 35px;
  }
  .burger-inner {
    width: 100%;
    height: 100%;
  }
  .burger-inner .top-bun, .burger-inner .patty, .burger-inner .bottom-bun {
    position: absolute;
    display: block;
    top: 0;
    left: 0;
    bottom: 0;
    margin: auto;
    content: '';
    width: 100%;
    height: 1px;
    transition: transform 250ms cubic-bezier(.2,.6,.3,1),width 250ms cubic-bezier(.2,.6,.3,1);
    will-change: transform,width;
    background-color: #000;
  }
  .burger-inner .top-bun {
    transform: translatey(-5.5px);
  }
  .burger-inner .patty {
    transform: scale(0);
  }
  .burger-inner .bottom-bun {
    transform: translatey(5.5px);
  }
  .menu-open .burger-inner .top-bun {
    transform: translatex(3.5px) rotate(-135deg);
    width: 28px;
  }
  .menu-open .burger-inner .bottom-bun {
    transform: translatex(3.5px) rotate(135deg);
    width: 28px;
  }

  .navbar-mobile{
    position: fixed;
    z-index: 1000;
    display: flex;
    flex-direction: column;
    top: 109px;
    right: 0;
    bottom: 0;
    left: 0;
    opacity: 0;
    visibility: hidden;
    will-change: opacity,visibility;
    user-select: none;
    text-align: center;
    pointer-events: auto;
    background-color: #fff;
    transition: visibility 600ms cubic-bezier(.4,0,.2,1), opacity 400ms cubic-bezier(.4,0,.2,1);
  }
  .navbar-mobile-inner{
    position: absolute;
    display: flex;
    top: 0;
    left: 0;
    width: 100%;
    min-height: 100%;
    max-height: 100%;
    justify-content: flex-start;
    overflow-y: scroll;
    overflow-x: hidden;
    -webkit-overflow-scrolling: touch;
    flex-direction: column;
  }
  .navbar-mobile-top {
    position: relative;
    display: flex;
    width: 100%;
    flex-grow: 1;
    flex-shrink: 0;
    justify-content: center;
    flex-direction: column;
  }
  .navbar-mobile-top .menu a{font-size: 2rem;}
  .navbar-mobile-top .menu li{margin:10px 0;}
  .navbar-mobile-bottom {
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 20px;
    flex-grow: 0;
    flex-shrink: 1;
    margin-bottom: 6vw;
  }
  
/* #endregion */

/* #region Footer */
  .copy{margin-top: 1rem;}
/* #endregion */

/* #region Products */
.item a{display: block;color: #0a0a0a;margin-bottom: 1.875rem;}
.item-img img{width:100%;}
.item-desc{padding-top: 16px;}
.item-desc .name{font-size: 20px;font-weight: 600;}

.item-info .name{margin-bottom: 1rem;}
.item-info .name h1{font-size: 2.5rem;}
.item-info .name span{display: block;font-size: 50%;}
.item-info .price{font-size: 1.6rem;font-weight: 600;margin-bottom: 1.5rem;}
.related-item .price{font-size:1.0rem;font-weight:normal;}
.price{margin-bottom:5px;}
.original_price{font-size: 85%;text-decoration:line-through;color:gray;margin-right:10px;vertical-align:middle;}
.discount_percent{border:solid 1px gray;color:red;border-radius:3px;padding:3px;font-size:85%;vertical-align:middle;margin-left:10px;display: inline-block;}
.price .original_price, .price .discount_percent{font-size: 80%;}
.is_sale{color:green;}
.item-info .price .original_price, .item-info .price .discount_percent{font-size: 50%;}
.item-info .related-item .price .original_price, .item-info .related-item .price .discount_percent{font-size:70%;}
.item-info .description{margin-bottom: 1.5rem;}
.size_name{margin-right:20px;}

/* Colour chips (item page) */
.color-chips{margin-top:2px;}
.color-chips .chip{display:inline-block;margin:0 6px 6px 0;padding:1px 10px;border:1px solid #cfcfcf;border-radius:14px;font-size:13px;line-height:20px;color:#333;text-decoration:none;background:#fff;}
.color-chips .chip:hover{border-color:#333;}
.color-chips .chip.current{border-color:#333;background:#333;color:#fff;}
.color-chips .chip.more{border-style:dashed;color:#666;}
.item-info .other_colors{margin-bottom:1rem;}
.item-info .other_colors .color-chips{margin-top:6px;}

.product-image{display: block;margin-bottom: 10px;}
.product-image img{width: 100%;}
.more-item-images{width: 80px;}
.more-image-item{margin-bottom: 10px;cursor: pointer;}
.lb-data .lb-close{background-size: contain!important;}

.go_back a{display: inline-block;line-height: 1.5;font-weight: 600;}
.col-item{min-width: 200px;}
.col-item .thumbnail{width: 84px;}
.col-item .thumbnail a{display: block;}
.col-item .thumbnail img{max-width: 100%;}
.col-item h5{font-weight: 600;}
.table-cart tbody tr:nth-child(2n){background-color: #fff;border-top:1px solid #f1f1f1;}

.card-section iframe{width: 100%;}
/* #endregion */

h3.shipping-message{
  text-align: center;
  color: blue;
  font-size: 1.2rem;
  margin-bottom: 20px;
  padding: 8px;
}

/* #region Media Query */
@media screen and (max-width: 63.9375em) {
  .menu-open{height: 100%;overflow: hidden;}
  .menu-open .navbar-mobile {
    opacity: 1;
    visibility: visible;
  }

  .item-info .name h1{font-size: 2rem;}
  .more-item-images{display: -webkit-box;display: -webkit-flex;display: -ms-flexbox;display: flex;margin-left:-5px;margin-right: -5px;width: 100%;}
  .more-image-item{padding-left: 5px;padding-right: 5px;}
}
@media screen and (max-width: 39.9375em) {
  .navbar{padding-top: 20px;padding-bottom: 20px;}
  .navbar-logo{font-size: 1.5rem;}
  .navbar-mobile{top:126px}
  .col-item .thumbnail{width: 50px;}
}
/* #endregion */
.hide-error label.error{display:none !important;}
.hide-error input.error,select.error{background-color:#fff3d9;}
.accordion-item a{font-size: .875rem;}
.exceed-number-of-stock{
	color: red;
}
.mt-10{margin-top:10px;}

@media only screen and (min-width: 1024px){
  h3.shipping-message{
    height: 44px;
  }
}

@media only screen and (max-width: 1023px){
  h3.shipping-message{
    margin-top: 20px;
  }
}

.page-checkout .already-have-account{align-items: center;display: flex;margin-left: 20px;}
.page-checkout .already-have-account a{margin-left: 10px;}

.mask{position:fixed;top:10px;right:10px;}
.page-checkout .already-have-account.new-line{flex: 0 0 auto;margin-left: 0;margin-top: 10px;width:100%;}
.page-checkout .already-have-account.new-line a{display:inline-block;;margin-left: 10px;}
.mb-0 {
    margin-bottom: 0px;
}
span.required{
  color: red;
  margin-left: 5px;
}
form label.error{
  color: red;
}
/* 1. Remove margin from input only when followed by an error */
input + label.error {
  margin-bottom: 1rem; /* The error now handles the spacing for the row */
}

/* Alternative: If you want to target the input specifically */
input:has(+ label.error) {
  margin-bottom: 0px !important;
}
.banner-container {
    background-color: #f9f9f9; /* Off-white background from image */
    border: none;
    padding: 3rem 1rem;
    text-align: center;
}
.banner-text {
    color: #555555;
    margin: 0 auto;
    line-height: 1.6;
    font-size: 1.1rem;
}

.cart-notification {
  position: absolute;
  top: 20px;
  right: 20px;
  z-index: 1000;

  /* Sizing & Box Model */
  width: 100%;
  max-width: 300px; /* Fits within 240-320px range */
  padding: 16px;
  box-sizing: border-box;

  /* Styling */

  background-color: rgba(232, 232, 232, 0.9); /* light gray with 0.9 opacity */
  color: #2c3e2d; /* Darker green-tinted text for better contrast */
  border-radius: 12px;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
  border: 1px solid rgba(0, 0, 0, 0.05); /* Subtle border for definition */
  
  /* Text Styling */
  font-family: sans-serif;
  line-height: 1.5;
  text-align: left;
}

.address-box {
  border: 1px solid #cacaca;
  padding: 1rem;
  margin-top: 0.5rem;
  border-radius: 4px;
}
.address-box:has(input[name="shipping_option"]:checked) {
  border: 2px solid #1779ba;
  background-color: #f6faff;
}
.shipping-information:has(#shipping_option_new:checked) #shipping-information-details {
  display: block !important;
}
.shipping-information:has(#shipping_option_saved:checked) #shipping-information-details {
  display: none !important;
}
/* #region Theme — Hemp Grown 2026 (loaded last; overrides the defaults above) */
:root{
  --ink:#1f2a22;
  --ink-soft:#4a554d;
  --muted:#7d857c;
  --line:#e6e1d6;
  --paper:#faf8f3;
  --paper-2:#f1ede4;
  --moss:#4f6b46;
  --moss-dark:#3d5436;
}
body{background:var(--paper);color:var(--ink);}
a{color:var(--ink);}
a:hover,a:focus{color:var(--moss-dark);}
h1,h2,h3,.navbar-logo,.footer-logo{font-family:'Fraunces',Georgia,'Times New Roman',serif;font-weight:600;letter-spacing:-.01em;color:var(--ink);}
h4,h5,h6{color:var(--ink);}
.button,.button.primary{background:var(--moss);color:#fff;border-radius:6px;font-weight:600;padding:.85em 1.4em;transition:background .15s ease;}
.button:hover,.button:focus,.button.primary:hover{background:var(--moss-dark);color:#fff;}
input[type=text],input[type=email],input[type=password],input[type=number],textarea,select{border-color:var(--line);border-radius:6px;box-shadow:none;}
input[type=text]:focus,input[type=email]:focus,input[type=password]:focus,input[type=number]:focus,textarea:focus{border-color:var(--moss);box-shadow:none;}

/* Header */
.navbar{border-bottom:1px solid var(--line);padding:22px 1rem;}
.navbar-logo{font-size:1.9rem;font-weight:700;letter-spacing:-.02em;}
.navbar .text-gray{font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-top:2px;}
.navbar .menu a{font-size:.95rem;color:var(--ink-soft);}
.navbar .menu a:hover{color:var(--ink);}
.navbar-mobile{background:var(--paper);}

/* Hero */
.hero{padding:3.75rem 0 2.75rem;text-align:center;}
.hero h1{font-size:3rem;line-height:1.08;margin-bottom:.9rem;}
.hero p{font-size:1.15rem;line-height:1.55;color:var(--ink-soft);max-width:38rem;margin:0 auto 1.4rem;}
.hero .button{margin:0;}

/* Category nav */
.cat-nav{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-bottom:2rem;}
.cat-nav a{padding:6px 16px;border:1px solid var(--line);border-radius:999px;background:#fff;color:var(--ink-soft);font-size:.9rem;line-height:1.4;transition:border-color .15s ease;}
.cat-nav a:hover{border-color:var(--ink);color:var(--ink);}
.cat-nav a.active{background:var(--ink);border-color:var(--ink);color:#fff;}

/* Grid tiles */
.shop-grid{padding-top:1rem;}
.item a{margin-bottom:1rem;}
.item-img{aspect-ratio:1/1;overflow:hidden;border-radius:10px;background:var(--paper-2);}
.item-img img{width:100%;height:100%;object-fit:cover;object-position:center top;transition:transform .35s ease;}
.item:hover .item-img img{transform:scale(1.03);}
.item-desc{padding-top:12px;}
.item-desc .name{font-size:1rem;font-weight:600;line-height:1.35;}
.item-desc .price{color:var(--ink-soft);margin-top:2px;}
.swatches{display:flex;align-items:center;gap:6px;margin-top:8px;}
.swatch{display:inline-block;width:12px;height:12px;border-radius:50%;border:1px solid rgba(0,0,0,.18);box-shadow:inset 0 0 0 1px rgba(255,255,255,.35);}
.swatch-more{font-size:.75rem;color:var(--muted);line-height:12px;}
.color-chips .chip .swatch{width:11px;height:11px;margin-right:6px;vertical-align:-1px;}
.color-chips .chip.current .swatch{border-color:rgba(255,255,255,.6);}

/* Colour chips (grid + item page) */
.color-chips .chip{border-color:var(--line);color:var(--ink-soft);background:#fff;}
.color-chips .chip:hover{border-color:var(--ink);color:var(--ink);}
.color-chips .chip.current{border-color:var(--ink);background:var(--ink);color:#fff;}

/* Values strip */
.values{border-top:1px solid var(--line);padding:2.5rem 0 1.5rem;margin-top:1rem;}
.values h4{font-size:1rem;font-weight:700;margin-bottom:.2rem;}
.values p{color:var(--ink-soft);font-size:.95rem;margin-bottom:1rem;}
.values a{text-decoration:underline;text-underline-offset:3px;}

/* Item page */
.breadcrumb{font-size:.85rem;color:var(--muted);margin-bottom:1.25rem;}
.breadcrumb a{color:var(--muted);}
.breadcrumb a:hover{color:var(--ink);}
.breadcrumb span{margin:0 .4em;}
.product-image{border-radius:10px;overflow:hidden;background:var(--paper-2);}
.item-info .name{margin-bottom:.75rem;}
.item-info .name h1{font-size:2.2rem;line-height:1.1;}
.item-info .name span{font-family:'Open Sans',sans-serif;font-weight:400;font-size:1rem;color:var(--muted);margin-top:.35rem;}
.item-info .price{font-size:1.5rem;font-weight:600;margin-bottom:1.25rem;}
.item-info .description{color:var(--ink-soft);line-height:1.65;margin-bottom:1.75rem;}
.field-label{font-size:.78rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-bottom:.5rem;}
.field-label .field-value{text-transform:none;letter-spacing:0;color:var(--ink);font-size:.95rem;margin-left:.35rem;}
.item-info .other_colors{margin-bottom:1.5rem;}
.size-pills{margin-bottom:1.5rem;}
.size-pills .pill{position:relative;display:inline-block;margin:0 8px 8px 0;padding:8px 16px;min-width:48px;text-align:center;border:1px solid var(--line);border-radius:8px;background:#fff;cursor:pointer;font-weight:600;line-height:1.2;transition:border-color .15s ease;}
.size-pills .pill:hover{border-color:var(--ink);}
.size-pills .pill input[type=radio]{position:absolute;opacity:0;width:0;height:0;margin:0;}
.size-pills .pill:has(input:checked){border-color:var(--ink);background:var(--ink);color:#fff;}
.size-pills .pill:has(input:focus-visible){outline:2px solid var(--moss);outline-offset:2px;}
.size-pills .pill .size_name{margin:0;}
.size-pills .pill .original_price,.size-pills .pill .is_sale,.size-pills .pill .discount_percent{margin-left:.5em;font-weight:400;font-size:85%;}
.size-pills .pill.oos{color:var(--muted);border-style:dashed;}
.size-pills .pill.oos .size_name{text-decoration:line-through;}
.buy-row{display:flex;align-items:flex-end;gap:1rem;flex-wrap:wrap;margin-top:.5rem;}
.buy-row .quantity input{width:90px;margin:0;}
.buy-row .buy-button .button{margin:0;padding-left:2.2em;padding-right:2.2em;}
.related-items h5{font-size:.78rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);}

/* Copy pages */
.page-copy h1{font-size:2.4rem;margin-bottom:.5rem;}
.page-copy h3{font-size:1.15rem;margin-top:1.75rem;margin-bottom:.4rem;}
.page-copy p{color:var(--ink-soft);line-height:1.7;}
.page-copy .lede{font-size:1.15rem;color:var(--ink);margin-bottom:1.5rem;}
.page-copy a{text-decoration:underline;text-underline-offset:3px;}
.page-copy .contact-email{font-size:1.4rem;font-weight:600;margin:.5rem 0 1.5rem;}

/* Footer */
.site-footer{background:var(--ink);color:#c9d1c8;padding:3rem 0 1.5rem;margin-top:3rem;}
.site-footer a{color:#e7ece6;}
.site-footer a:hover{color:#fff;text-decoration:underline;}
.site-footer h6{color:#fff;font-size:.78rem;letter-spacing:.12em;text-transform:uppercase;margin-bottom:.75rem;}
.footer-logo{font-size:1.5rem;font-weight:700;color:#fff;margin-bottom:.5rem;}
.footer-brand p{font-size:.95rem;line-height:1.6;max-width:26rem;}
.footer-links{list-style:none;margin:0;padding:0;}
.footer-links li{margin-bottom:.4rem;font-size:.95rem;}
.footer-copy{border-top:1px solid rgba(255,255,255,.12);margin-top:2rem;padding-top:1.25rem;font-size:.85rem;color:#98a397;}

@media screen and (max-width: 63.9375em) {
  .hero{padding:2.5rem 0 2rem;}
  .hero h1{font-size:2.2rem;}
  .item-info .name h1{font-size:1.8rem;}
  .page-copy h1{font-size:2rem;}
  .site-footer .cell{margin-bottom:1.5rem;}
}
@media screen and (max-width: 39.9375em) {
  .hero h1{font-size:1.9rem;}
  .navbar .text-gray{display:none;}
  /* burger and account/cart cells hug their content; the logo cell takes the rest */
  .navbar .grid-x > .cell.auto{flex:0 0 auto;width:auto;}
  .navbar .grid-x > .cell.shrink{flex:1 1 0;min-width:0;}
  .navbar-logo{font-size:1.45rem;white-space:nowrap;}
  .navbar .menu.social{flex-wrap:nowrap;margin-right:0;}
  .navbar .menu.social a{padding-left:.6rem;padding-right:.6rem;}
  .hero p{font-size:1rem;}
  .item-desc .name{font-size:.92rem;}
  .cat-nav{justify-content:flex-start;overflow-x:auto;flex-wrap:nowrap;padding-bottom:6px;margin-left:-1rem;margin-right:-1rem;padding-left:1rem;padding-right:1rem;}
  .cat-nav a{white-space:nowrap;}
}
/* #endregion */
