:root {
  --orange:#f47a16;
  --orange-dark:#d95f00;
  --green:#174c34;
  --green-2:#2f7d4b;
  --cream:#fff8ef;
  --ink:#173129;
  --muted:#6b776f;
  --line:#e6ece8;
}
* {
  box-sizing:border-box
}
body {
  font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;
  color:var(--ink);
  background:#fff;
  line-height:1.7
}
/* ================================
   GENCON NEW BUTTONS + CART ONLY
================================ */

/* Top Bar */
.gencon-top-bar {
    background: #161616;
    padding: 8px 0;
}

.gencon-top-bar a {
    color: #fff;
    text-decoration: none;
    font-size: 14px;
    font-weight: 600;
}

.gencon-top-bar a i {
    margin-right: 7px;
}


/* Navbar Cart */
.gencon-cart-link {
    position: relative;
}

.gencon-cart-count {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 20px;
    height: 20px;
    padding: 0 5px;
    margin-left: 5px;
    border-radius: 50%;
    background: #ff8000;
    color: #fff;
    font-size: 11px;
    font-weight: 700;
}


/* Add To Cart Button */
.gencon-add-cart-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    border: 0;
    border-radius: 30px;
    background: #ff8000;
    color: #fff;
    padding: 10px 20px;
    min-width: 145px;
    font-size: 14px;
    font-weight: 700;
    cursor: pointer;
    transition: all .2s ease;
}

.gencon-add-cart-btn:hover {
    background: #e86600;
    color: #fff;
}


/* Still Growing Button */
.gencon-still-growing {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 0;
    border-radius: 30px;
    background: #f6ead9;
    color: #80551e;
    padding: 9px 22px;
    min-width: 145px;
    font-size: 14px;
    font-weight: 700;
    cursor: default;
}


/* Cart Panel */
.gencon-cart-panel {
    position: fixed;
    top: 0;
    right: -420px;
    width: 390px;
    max-width: 92%;
    height: 100vh;
    background: #fff;
    z-index: 9999;
    box-shadow: -8px 0 30px rgba(0, 0, 0, .15);
    transition: right .3s ease;
    display: flex;
    flex-direction: column;
}

.gencon-cart-panel.active {
    right: 0;
}


/* Cart Header */
.gencon-cart-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 20px;
    border-bottom: 1px solid #eee;
}

.gencon-cart-header h4 {
    margin: 0;
    font-size: 20px;
    font-weight: 700;
}

.gencon-cart-close {
    border: 0;
    background: transparent;
    font-size: 18px;
    cursor: pointer;
}


/* Cart Items */
.gencon-cart-items {
    flex: 1;
    overflow-y: auto;
    padding: 20px;
}

.gencon-empty-cart {
    margin: 0;
    text-align: center;
    color: #777;
}


.gencon-cart-item {
    padding: 13px 0;
    border-bottom: 1px solid #eee;
}

.gencon-cart-item-name {
    display: block;
    font-size: 14px;
    font-weight: 600;
    color: #222;
    margin-bottom: 5px;
}

.gencon-cart-item-price {
    font-size: 14px;
    font-weight: 700;
    color: #e86600;
}


/* Cart Footer */
.gencon-cart-footer {
    padding: 20px;
    border-top: 1px solid #eee;
}

.gencon-cart-total {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 15px;
    font-size: 16px;
}

.gencon-cart-total strong {
    color: #e86600;
}


/* Cart Action Buttons */
.gencon-cart-actions {
    display: flex;
    gap: 10px;
}

.gencon-purchase-btn,
.gencon-checkout-btn {
    flex: 1;
    border: 0;
    border-radius: 30px;
    padding: 11px 15px;
    font-size: 14px;
    font-weight: 700;
    cursor: pointer;
}

.gencon-purchase-btn {
    background: #161616;
    color: #fff;
    text-align: center  ;
}

.gencon-checkout-btn {
    background: #ff8000;
    color: #fff;
}

.gencon-purchase-btn:hover,
.gencon-checkout-btn:hover {
    opacity: .9;
}

/* ==========================================
   CART NAVBAR LINK
========================================== */

.gencon-cart-link {
    display: none;
    align-items: center;
    gap: 7px;
    cursor: pointer;
    white-space: nowrap;
}

.gencon-cart-link i {
    font-size: 18px;
}

.gencon-cart-count {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 22px;
    height: 22px;
    padding: 0 6px;
    border-radius: 50px;
    font-size: 12px;
    font-weight: 700;
    line-height: 1;
}


/* ==========================================
   CART PANEL
========================================== */

.gencon-cart-panel {
    position: fixed;
    top: 0;
    right: -420px;
    width: 400px;
    max-width: 100%;
    height: 100vh;
    background: #fff;
    z-index: 99999;
    box-shadow: -5px 0 25px rgba(0, 0, 0, 0.15);
    transition: right 0.3s ease;
    display: flex;
    flex-direction: column;
}

.gencon-cart-panel.active {
    right: 0;
}


/* ==========================================
   CART HEADER
========================================== */

.gencon-cart-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 20px;
    border-bottom: 1px solid #eee;
}

.gencon-cart-header h4 {
    margin: 0;
    font-size: 20px;
    font-weight: 700;
}

.gencon-cart-header h4 i {
    margin-right: 8px;
}

.gencon-cart-close {
    border: 0;
    background: transparent;
    font-size: 20px;
    cursor: pointer;
    padding: 5px;
}


/* ==========================================
   CART ITEMS
========================================== */

.gencon-cart-items {
    flex: 1;
    overflow-y: auto;
    padding: 20px;
}

.gencon-cart-item {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 15px;
    padding: 15px 0;
    border-bottom: 1px solid #eee;
}

.gencon-cart-item-name {
    font-weight: 600;
}

.gencon-cart-item-price {
    white-space: nowrap;
    font-weight: 600;
}

.gencon-empty-cart {
    text-align: center;
    color: #777;
    padding: 40px 10px;
}


/* ==========================================
   CART FOOTER
========================================== */

.gencon-cart-footer {
    padding: 20px;
    border-top: 1px solid #eee;
}

.gencon-cart-total {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 18px;
    font-size: 17px;
}

.gencon-cart-total strong {
    font-size: 20px;
}


/* ==========================================
   CART BUTTONS
========================================== */

.gencon-cart-actions {
    display: flex;
    gap: 10px;
}

.gencon-purchase-btn,
.gencon-checkout-btn {
    flex: 1;
    min-height: 48px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 0;
    text-decoration: none;
    cursor: pointer;
    font-weight: 600;
    border-radius: 6px;
}

.gencon-purchase-btn {
    background: #222;
    color: #fff;
}

.gencon-purchase-btn:hover {
    color: #fff;
}

.gencon-checkout-btn {
    background: #f26522;
    color: #fff;
}


/* ==========================================
   MOBILE
========================================== */

@media (max-width: 575px) {

    .gencon-cart-panel {
        width: 100%;
    }

    .gencon-cart-actions {
        flex-direction: column;
    }

}
a {
  text-decoration:none
}
img {
  max-width:100%
}
.top-strip {
  background:var(--green);
  color:#fff;
  font-size:.86rem;
  padding:.42rem 0
}
.navbar {
  background:#fff;
  box-shadow:0 6px 28px rgba(15,65,43,.08)
}
.navbar-brand {
  display:flex;
  align-items:center;
  gap:.75rem;
  color:var(--green)!important;
  font-weight:800;
  line-height:1.15
}
.brand-logo {
  width:58px;
  height:58px;
  object-fit:cover;
  border-radius:50%;
  border:2px solid #ffe0bf
}
.brand-name small {
  display:block;
  font-size:.69rem;
  letter-spacing:.16em;
  color:#74877b;
  font-weight:700
}
.nav-link {
  font-weight:700;
  color:#254b3c!important;
  padding:.9rem .9rem!important
}
.nav-link:hover,.nav-link.active {
  color:var(--orange)!important
}
.btn-orange {
  background:var(--orange);
  border-color:var(--orange);
  color:#fff;
  font-weight:800;
  border-radius:999px;
  padding:.8rem 1.45rem
}
.btn-orange:hover {
  background:var(--orange-dark);
  border-color:var(--orange-dark);
  color:#fff
}
.btn-outline-green {
  border:2px solid var(--green);
  color:var(--green);
  font-weight:800;
  border-radius:999px;
  padding:.72rem 1.35rem
}
.btn-outline-green:hover {
  background:var(--green);
  color:#fff
}
.hero {
  position:relative;
  min-height:620px;
  background:linear-gradient(90deg,rgba(255,255,255,.98) 0%,rgba(255,255,255,.87) 42%,rgba(255,255,255,.12) 67%),url('../img/hero-oranges.jpg') center/cover no-repeat;
  display:flex;
  align-items:center
}
.hero .eyebrow,.section-eyebrow {
  color:var(--orange);
  font-weight:900;
  letter-spacing:.16em;
  text-transform:uppercase;
  font-size:.82rem
}
.hero h1 {
  font-size:clamp(3rem,5vw,5.7rem);
  line-height:.98;
  font-weight:900;
  max-width:780px
}
.hero p {
  font-size:1.12rem;
  max-width:610px;
  color:#4f5e56
}
.section {
  padding:88px 0
}
.section-sm {
  padding:62px 0
}
.section-title {
  font-weight:900;
  line-height:1.08;
  font-size:clamp(2rem,3.5vw,3.8rem)
}
.text-muted2 {
  color:var(--muted)
}
.feature-card {
 
  border:1px solid var(--line);
  border-radius:24px;
  background:#fff;
  padding:28px;
  transition:.25s ease
}
.feature-card:hover {
  transform:translateY(-5px);
  box-shadow:0 18px 45px rgba(26,70,49,.1)
}
.icon-badge {
  width:58px;
  height:58px;
  border-radius:50%;
  display:grid;
  place-items:center;
  background:#fff1e2;
  color:var(--orange);
  font-size:1.45rem;
  margin-bottom:1rem
}
.photo-card {
  border-radius:28px;
  overflow:hidden;
  box-shadow:0 20px 60px rgba(19,64,43,.14)
}
.photo-card img {
  width:100%;
  height:100%;
  object-fit:cover
}
.band-green {
  background:var(--green);
  color:#fff
}
.band-orange {
  background:linear-gradient(135deg,#f28a2a,#f56b0a);
  color:#fff
}
.info-chip {
  display:inline-flex;
  align-items:center;
  gap:.45rem;
  padding:.45rem .8rem;
  border-radius:999px;
  background:#fff1e3;
  color:#a84d00;
  font-weight:800;
  font-size:.87rem
}
.page-hero {
  padding:120px 0 90px;
  background:linear-gradient(90deg,rgba(18,68,46,.92),rgba(18,68,46,.54)),url('../img/orange-cluster.jpg') center/cover;
  color:#fff
}
.page-hero h1 {
  font-weight:900;
  font-size:clamp(2.7rem,5vw,5rem)
}
.page-hero p {
  max-width:720px;
  font-size:1.12rem;
  color:rgba(255,255,255,.88)
}
.breadcrumb-item+.breadcrumb-item::before {
  color:rgba(255,255,255,.6)
}
.breadcrumb a,.breadcrumb-item.active {
  color:#fff
}
.timeline {
  position:relative;
  padding-left:38px
}
.timeline:before {
  content:"";
  position:absolute;
  left:10px;
  top:6px;
  bottom:6px;
  width:3px;
  background:#ffd4ac
}
.timeline-item {
  position:relative;
  padding:0 0 38px
}
.timeline-item:before {
  content:"";
  position:absolute;
  left:-34px;
  top:7px;
  width:17px;
  height:17px;
  border-radius:50%;
  background:var(--orange);
  box-shadow:0 0 0 6px #fff1e4
}
.timeline-year {
  font-weight:900;
  color:var(--orange);
  font-size:1.35rem
}
.orange-tabs .nav-link {
  border:1px solid var(--line);
  margin-right:.6rem;
  border-radius:999px!important;
  color:var(--green)!important;
  background:#fff
}
.orange-tabs .nav-link.active {
  background:var(--orange)!important;
  color:#fff!important;
  border-color:var(--orange)!important
}
.availability-table {
  overflow:hidden;
  border-radius:20px;
  border:1px solid var(--line)
}
.availability-table .month {
  font-size:.74rem;
  text-transform:uppercase;
  font-weight:900;
  color:#617168
}
.availability-bar {
  height:12px;
  background:#edf1ee;
  border-radius:10px;
  overflow:hidden
}
.availability-fill {
  height:100%;
  background:linear-gradient(90deg,#f6a140,#f36e0a);
  border-radius:10px
}
.soft-bg {
  background:#fbfcfb
}
.orange-bg {
  background:#fff7ec
}
.form-control,.form-select {
  border-radius:14px;
  padding:.82rem 1rem;
  border:1px solid #dfe7e2
}
.form-control:focus,.form-select:focus {
  border-color:#f6a15c;
  box-shadow:0 0 0 .2rem rgba(244,122,22,.12)
}
.footer {
  background:#0d3c2a;
  color:#dce9e1;
  padding:70px 0 25px
}
.footer h5 {
  color:#fff;
  font-weight:900
}
.footer a {
  color:#dce9e1;
  display:block;
  margin:.45rem 0
}
.footer a:hover {
  color:#ffb872
}
.footer-logo {
  width:80px;
  height:80px;
  border-radius:50%;
  object-fit:cover;
  border:2px solid rgba(255,255,255,.25)
}
.footer-links-contact h5 {
  margin-bottom: 1rem;
}
.footer-contact {
  margin-top: 0.15rem;
}
.footer-contact-item {
  display: flex;
  align-items: flex-start;
  gap: 0.65rem;
  margin: 0.65rem 0;
  line-height: 1.45;
}
.footer-contact-item i {
  flex: 0 0 1.1rem;
  width: 1.1rem;
  margin-top: 0.18rem;
  color: #ffb872;
  font-size: 1rem;
  text-align: center;
}
.footer-contact-item a, .footer-contact-item span {
  display: inline;
  margin: 0;
  overflow-wrap: anywhere;
}
.legal-copy h2 {
  font-weight:900;
  margin-top:2rem
}
.legal-copy h3 {
  font-weight:800;
  margin-top:1.5rem
}
.legal-copy p,.legal-copy li {
  color:#52635a
}
.card-clean {
  border:1px solid var(--line);
  border-radius:24px;
  overflow:hidden;
  background:#fff
}
.card-clean .card-body {
  padding:28px
}
.stat {
  border-left:4px solid var(--orange);
  padding-left:18px
}
.stat strong {
  display:block;
  font-size:1.7rem;
  color:var(--green)
}
.back-to-top {
  position:fixed;
  right:18px;
  bottom:18px;
  width:46px;
  height:46px;
  border-radius:50%;
  display:none;
  place-items:center;
  background:var(--green);
  color:#fff;
  z-index:1000;
  box-shadow:0 10px 25px rgba(0,0,0,.18)
}

.california-page{background:#fffaf4}
.california-page .source-copy p,.california-page .source-copy li{font-size:1.03rem;line-height:1.8;color:#333}
.california-page .source-copy strong{font-weight:700}
.california-page .source-copy h2{font-weight:800}
.california-hero{background:linear-gradient(135deg,#fff4df,#fffaf4);padding:75px 0 45px;border-bottom:1px solid #f0dfc9}
.california-hero img{width:210px;height:210px;object-fit:contain;background:#fff;border-radius:50%;box-shadow:0 15px 40px rgba(90,55,20,.12)}
.coupon-box{background:#fff;border:1px solid #ead8bd;border-radius:18px;padding:24px;box-shadow:0 10px 30px rgba(90,55,20,.07)}
.coupon-box .coupon{color:#ff8000;text-decoration:underline;font-weight:800}
.price-note{background:#161616;color:#ff8000;border-radius:10px;padding:15px 20px;text-align:center;font-size:1.05rem}
.service-img{max-width:100%;height:auto;display:block;margin:25px auto}
.product-slider-section{background:#fff;padding:70px 0}
.product-slide-card{height:100%;background:#fff;border:1px solid #ead8bd;border-radius:18px;overflow:hidden;box-shadow:0 10px 28px rgba(76,45,12,.08)}
.product-slide-card img{width:100%;height:245px;object-fit:contain;background:#fff7ed;padding:18px}
.product-slide-card .card-body{padding:22px}
.product-slide-card h3{font-size:1.02rem;min-height:58px;color:#222}
.product-slide-card .vendor{font-size:.88rem;color:#777}
.product-slide-card .stars{color:#ff8000;letter-spacing:1px}
.product-slide-card .price{font-size:1.25rem;font-weight:800;color:#e86600}
.product-slide-card .status{display:inline-block;background:#f6ead9;color:#80551e;border-radius:30px;padding:5px 12px;font-size:.78rem;font-weight:700}
.carousel-control-prev,.carousel-control-next{width:48px;height:48px;top:45%;bottom:auto;border-radius:50%;background:#ff8000;opacity:1}
.carousel-control-prev{left:-25px}.carousel-control-next{right:-25px}
.carousel-indicators{bottom:-48px}
.carousel-indicators [data-bs-target]{background:#ff8000;width:28px;height:5px;border:0;border-radius:5px}


@media (max-width:991.98px) {
  .hero {
    min-height:560px;
    background:linear-gradient(90deg,rgba(255,255,255,.96),rgba(255,255,255,.78)),url('../img/hero-oranges.jpg') center/cover
  }
  .navbar-collapse {
    padding:1rem 0
  }
  .page-hero {
    padding:90px 0 70px
  }
  .carousel-control-prev{left:-10px}
.carousel-control-next{right:-10px}
.product-slide-card img{height:220px}
}
@media (max-width:575.98px) {
  .brand-name {
    font-size:.95rem
  }
  .brand-logo {
    width:48px;
    height:48px
  }
  .hero {
    min-height:520px
  }
  .section {
    padding:68px 0
  }
}




/* Added shopping and California orange pages */
.shop-page { background:#fffdf9; }
.shop-content { max-width:1180px; }
.shop-intro { text-align:center; max-width:900px; margin:0 auto; }
.shop-intro img { width:210px; height:210px; object-fit:contain; }
.product-card { border:1px solid var(--line); border-radius:22px; overflow:hidden; height:100%; background:#fff; transition:.25s ease; }
.product-card:hover { transform:translateY(-5px); box-shadow:0 18px 40px rgba(26,70,49,.10); }
.product-card .product-img { width:100%; height:230px; object-fit:contain; padding:20px; background:#fffaf4; }
.product-card .card-body { padding:22px; }
.product-price { color:var(--orange); font-size:1.35rem; font-weight:900; }
.shipping-content { max-width:1050px; }
.shipping-content figure { margin:25px auto 35px; text-align:center; }
.shipping-content figure img { width:100%; max-height:480px; object-fit:cover; border-radius:24px; box-shadow:0 18px 45px rgba(19,64,43,.12); }
.shipping-content figcaption { margin-top:10px; color:var(--muted); font-size:.9rem; }
.shipping-content .notice { border-left:5px solid var(--orange); background:#fff5e9; border-radius:12px; padding:18px 20px; }
.shipping-content .warning { color:#d93f22; font-weight:800; }
.shipping-content li { margin-bottom:16px; }
.orange-carousel .carousel-item img { height:390px; object-fit:contain; background:#fffaf4; border-radius:24px; }
.orange-carousel .carousel-caption { background:rgba(23,49,41,.86); border-radius:15px; padding:12px 18px; }
@media(max-width:575.98px){ .orange-carousel .carousel-item img{height:280px;} .product-card .product-img{height:200px;} }

/* Mobile */
@media (max-width: 575px) {

    .gencon-cart-panel {
        width: 100%;
        max-width: 100%;
    }

    .gencon-add-cart-btn,
    .gencon-still-growing {
        width: 100%;
    }
    .california-hero{padding:50px 0 35px}
.product-slide-card img{height:210px}
.carousel-control-prev,.carousel-control-next{width:40px;height:40px}
.carousel-control-prev{left:0}
.carousel-control-next{right:0}

}