/* Big John's Tree Farm - static rebuild of info5708982.wixsite.com/treefarm (Wix).
   The page layout is generated from measurements of the live site (assets/home.css, assets/gallery.css).
   This file holds the fonts, a reset that matches those copied computed styles, and the interactive widgets. */
@font-face{font-family:"spicy-rice";src:url(fonts/spicy-rice.woff2) format("woff2");font-display:swap}
@font-face{font-family:"anton";src:url(fonts/anton.woff2) format("woff2");font-display:swap}
@font-face{font-family:"poppins-semibold";src:url(fonts/poppins-semibold.woff2) format("woff2");font-display:swap}

*,::before,::after{margin:0;padding:0;border:0;box-sizing:content-box}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{background:#fff;min-width:980px;font-family:Arial,Helvetica,sans-serif;font-size:10px}
a{color:inherit;text-decoration:none}
h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}
b,strong{font-weight:inherit}
i,em{font-style:inherit}
u{text-decoration:none}
button,input,select,textarea{font:inherit;color:inherit;letter-spacing:inherit;line-height:inherit;text-align:inherit;text-transform:inherit;text-indent:inherit;text-shadow:inherit;word-spacing:inherit;background:transparent;border-radius:0;appearance:none;-webkit-appearance:none}
svg{overflow:visible}
picture{display:contents}
:focus-visible{outline:2px solid #116dff;outline-offset:2px}
.skip{position:absolute;left:50%;top:-60px;transform:translateX(-50%);z-index:200;background:#fff;color:#116dff;border-radius:24px;padding:10px 20px;font:14px Helvetica,Arial,sans-serif;box-shadow:0 0 0 1px #116dff}
.skip:focus{top:12px}

/* sections are full-width bands; every component is placed absolutely inside its band */
.s{position:relative;display:block}
main>.s,#SITE_FOOTER{overflow-x:clip}  /* the Wix page column clips anything wider than the viewport; the header is outside it */
.x{position:absolute!important;box-sizing:border-box!important;margin:0!important}
.bx{overflow:hidden}
.bgl{position:absolute!important;left:0!important;top:0!important;width:100%!important;height:100%!important;margin:0!important}
.anc{position:absolute;left:0;top:0;scroll-margin-top:131px}
.map iframe{display:block;width:100%;height:100%;border:0}

/* testimonials slideshow */
.ss .slide{position:absolute;inset:0;visibility:hidden}
.ss .slide.on,.ss .slide.in,.ss .slide.out{visibility:visible}
.ss button{cursor:pointer}

/* the testimonials background stays pinned while the section scrolls past (Wix "reveal" background) */
@media (prefers-reduced-motion:no-preference){
#comp-mfm84yrv-bg{clip-path:inset(0)}
#comp-mfm84yrv-bg .bgl>div:last-child{position:absolute!important;inset:0;overflow:clip}
#comp-mfm84yrv-bg .bgl>div:last-child>div{position:absolute!important;left:0!important;width:100%!important;top:-100lvh!important;height:calc(100% + 200lvh)!important}
#comp-mfm84yrv-bg .bgl>div:last-child>div>img{position:sticky!important;top:0;display:block;width:100%!important;height:100lvh!important}
}

/* Pro Gallery collage (layout computed by assets/gallery-layout.js, Wix's own open-source layouter) */
.gal-in{position:relative;width:100%}
.gi{position:absolute;display:block;padding:0;border:0;background:#e8e6e6;cursor:pointer;overflow:hidden}
.gi img{display:block;width:100%;height:100%;object-fit:cover;transition:transform 2.2s cubic-bezier(.14,.4,.09,.99)}
.gi-ov{position:absolute;inset:0;background:rgba(255,255,255,.13);opacity:0;transition:opacity .4s ease}
.gi:hover img,.gi:focus-visible img{transform:scale(1.1)}
.gi:hover .gi-ov,.gi:focus-visible .gi-ov{opacity:1}
.lightbox{position:fixed;inset:0;z-index:300;background:#fff;display:flex;align-items:center;justify-content:center}
.lightbox[hidden]{display:none}
.lightbox img{max-width:calc(100% - 160px);max-height:calc(100% - 80px);object-fit:contain}
.lightbox button{position:absolute;border:0;background:none;padding:10px;cursor:pointer}
.lightbox .lb-close{top:20px;right:20px}
.lightbox .lb-prev{left:20px;top:calc(50% - 30px)}
.lightbox .lb-next{right:20px;top:calc(50% - 30px)}
.lightbox .lb-prev svg{transform:scaleX(-1)}
.lightbox svg{display:block;fill:#000}

/* Wix mobile menu */
.mmenu{position:fixed;inset:0;z-index:160}
.mmenu[hidden],.mmenu{display:none}
.mmenu>:first-child{position:absolute!important;inset:0;overflow-y:auto}

/* popups (Wix lightboxes) */
.popup{position:fixed;inset:0;z-index:150}
.popup[hidden]{display:none}
.popup>*{position:absolute!important;inset:0;overflow-y:auto}
.popup [data-close]{cursor:pointer}
.popup .mv-only{display:none}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}

@media (max-width:750px){
body{min-width:0}
.popup .dv-only{display:none}
.mmenu.open{display:block}
.popup .mv-only{display:block}
.anc{scroll-margin-top:0}
.lightbox img{max-width:100%;max-height:calc(100% - 120px)}
.lightbox .lb-prev,.lightbox .lb-next{top:auto;bottom:10px}
}
/* ── Header CTA buttons: right-side placement, matching hero button colors ──────
   SHOP NOW = green pill (rgb(96,131,75)), phone = red pill (rgb(144,24,20)).
   Both sit on the right of the header, horizontally aligned with the nav.
   On mobile they stack below the nav and never overlap logo or menu toggle.
─────────────────────────────────────────────────────────────────────────────── */

/* Position both button containers on the right side of the header */
#comp-mi8xul6i,
#comp-mfm73zhq {
  position: absolute !important;
  top: 50% !important;
  height: auto !important;
  overflow: visible !important;
  transform: translateY(-50%) !important;
}

/* SHOP NOW: right side, with gap before phone */
#comp-mi8xul6i {
  right: 196px !important;
  left: auto !important;
  width: auto !important;
}

/* Phone: far right */
#comp-mfm73zhq {
  right: 10px !important;
  left: auto !important;
  width: auto !important;
}

/* Both pill <a> links: size to content, styled as buttons */
.h50,
.h53 {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 11px 22px !important;
  border-radius: 999px !important;
  white-space: nowrap !important;
  width: auto !important;
  min-width: auto !important;
  max-width: none !important;
  height: auto !important;
  min-height: 0 !important;
  aspect-ratio: auto !important;
  position: static !important;
  box-sizing: border-box !important;
  box-shadow: 0 4px 12px rgba(0,0,0,.28) !important;
  transition: background-color .2s, transform .2s !important;
}

/* SHOP NOW: green background */
.h50 {
  background-color: rgb(96,131,75) !important;
  border: 2px solid rgba(255,255,255,.55) !important;
}
.h50:hover {
  background-color: rgb(72,105,57) !important;
  transform: translateY(-2px) !important;
}

/* Phone: deep red background */
.h53 {
  background-color: rgb(144,24,20) !important;
  border: 2px solid rgba(255,255,255,.55) !important;
}
.h53:hover {
  background-color: rgb(108,14,11) !important;
  transform: translateY(-2px) !important;
}

/* Span text inside each pill */
.h51,
.h54 {
  white-space: nowrap !important;
  width: auto !important;
  min-width: auto !important;
  overflow: visible !important;
  display: inline !important;
  color: #fff !important;
  font-family: spicy-rice, fantasy !important;
  font-size: 20px !important;
  line-height: 1.2 !important;
}

/* Nav must not extend into button territory */
#comp-mfm6irry {
  max-width: calc(100% - 420px) !important;
  overflow: hidden !important;
}

/* ── Responsive: mobile ≤750px ──────────────────────────────────────────────── */
@media (max-width: 750px) {
  /* On mobile, stack both buttons below the logo/nav area, never overlapping */
  #comp-mi8xul6i,
  #comp-mfm73zhq {
    position: static !important;
    transform: none !important;
    display: block !important;
    width: calc(100% - 32px) !important;
    margin: 0 16px !important;
  }
  #comp-mi8xul6i {
    margin-bottom: 8px !important;
  }
  .h50,
  .h53 {
    padding: 10px 18px !important;
    font-size: 18px !important;
    line-height: 1.2 !important;
    width: 100% !important;
    justify-content: center !important;
  }
}

/* header menu: keep Wix's scrollable nav but never show its scrollbars */
nav.h14,nav.g14,nav.g186{scrollbar-width:none;-ms-overflow-style:none}
nav.h14::-webkit-scrollbar,nav.g14::-webkit-scrollbar,nav.g186::-webkit-scrollbar{display:none}

/* ---------------------------------------------------------------- Grand Opening: announcement bar (every page) + home page band */
.go-bar{position:relative;z-index:40;display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:6px 16px;padding:9px 16px;
  background:rgb(144,24,20);border-bottom:3px solid #e2b34c;color:#fff;text-align:center;font:17px/22px anton,Impact,sans-serif;letter-spacing:1.5px;text-transform:uppercase}
.go-bar strong{color:#ffe7a3;font-weight:400}
.go-bar a{display:inline-block;padding:4px 14px;border-radius:999px;background:#e2b34c;color:rgb(29,50,35);text-decoration:none;font-size:14px;letter-spacing:1px;transition:background-color .2s,transform .2s}
.go-bar a:hover,.go-bar a:focus-visible{background:#ffe7a3;transform:translateY(-1px)}
.go-band{position:relative;display:block;padding:56px 20px 60px;background:rgb(29,50,35);border-top:4px solid #e2b34c;border-bottom:4px solid #e2b34c;text-align:center;color:#fff}
.go-band-kicker{margin:0 0 6px;font:20px/26px anton,Impact,sans-serif;letter-spacing:4px;color:#e2b34c;text-transform:uppercase}
.go-band-title{margin:0;font:64px/1.05 spicy-rice,fantasy;color:#fff;text-shadow:0 3px 0 rgb(108,14,11)}
.go-band-date{display:inline-block;margin:18px 0 0;padding:10px 28px;border:2px solid #e2b34c;border-radius:999px;font:30px/36px anton,Impact,sans-serif;letter-spacing:3px;color:#ffe7a3}
.go-band-text{max-width:620px;margin:18px auto 0;font:18px/28px Arial,Helvetica,sans-serif;color:rgb(219,218,188)}
.go-band-cta{display:inline-block;margin-top:24px;padding:14px 34px;border-radius:999px;background:rgb(144,24,20);border:2px solid #e2b34c;color:#fff;text-decoration:none;
  font:22px/28px anton,Impact,sans-serif;letter-spacing:2px;text-transform:uppercase;box-shadow:0 6px 16px rgba(0,0,0,.3);transition:background-color .2s,transform .2s}
.go-band-cta:hover,.go-band-cta:focus-visible{background:rgb(108,14,11);transform:translateY(-2px)}
@media (max-width:750px){
  .go-bar{font-size:14px;line-height:19px;letter-spacing:1px;padding:8px 12px}
  .go-bar a{font-size:12.5px}
  .go-band{padding:40px 16px 44px}
  .go-band-title{font-size:40px}
  .go-band-date{font-size:21px;line-height:26px;padding:8px 18px;letter-spacing:2px}
  .go-band-text{font-size:16px;line-height:24px}
  .go-band-cta{font-size:18px;padding:12px 24px}
}
