/* ============================================================
   HANK'S NATIVE PLANT NURSERY — core stylesheet
   Sibling to Majdic LA: shared bordered-grid editorial DNA,
   warm daylight palette, two warm accents + pine family thread.
   ============================================================ */

@import url('https://fonts.googleapis.com/css2?family=Epilogue:wght@700;800;900&family=Space+Grotesk:wght@300;400;500;600;700&family=Space+Mono:ital,wght@0,400;0,700;1,400&display=swap');

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}

:root{
  color-scheme:light;     /* keep cream palette; stop auto dark-mode (e.g. Samsung Internet) darkening it */
  --paper:#f8f2e3;        /* warm cream canvas */
  --panel:#efe6d2;        /* oat panel */
  --ink:#22301b;          /* deep leaf-ink text */
  --mid:#6f7860;          /* muted sage-grey label */
  --green:#2f5d3a;        /* pine — grounding + Majdic family thread */
  --green-deep:#244a2e;
  --marigold:#f3a52e;     /* FILLS: tags, buttons, big highlights */
  --terra:#e0623a;        /* TEXT accents: eyebrows, links, labels */
  --line:1px solid rgba(34,48,27,0.14);
  --line-strong:1px solid rgba(34,48,27,0.30);
  --radius:7px;
  --radius-sm:5px;
}

/* Pin the cream palette even when a browser requests/forces dark mode
   (e.g. Samsung Internet auto dark-mode). We declare we "handle" dark mode,
   but keep every value identical to the light theme so nothing inverts. */
@media (prefers-color-scheme: dark){
  :root{
    --paper:#f8f2e3; --panel:#efe6d2; --ink:#22301b; --mid:#6f7860;
    --green:#2f5d3a; --green-deep:#244a2e; --marigold:#f3a52e; --terra:#e0623a;
    --line:1px solid rgba(34,48,27,0.14); --line-strong:1px solid rgba(34,48,27,0.30);
  }
  html,body{background:#f8f2e3 !important;color:#22301b !important;}
}

html{scroll-behavior:smooth;}

body{
  font-family:'Space Grotesk',sans-serif;
  background:var(--paper);
  color:var(--ink);
  overflow-x:hidden;
  -webkit-font-smoothing:antialiased;
}

/* light film grain */
body::before{
  content:'';position:fixed;inset:0;pointer-events:none;z-index:9999;opacity:0.03;
  background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
  background-repeat:repeat;background-size:200px;
}

a{color:inherit;}

/* ── NAVIGATION ── */
.site-nav{
  position:fixed;top:0;left:0;right:0;z-index:200;
  display:flex;align-items:stretch;height:54px;
  background:rgba(248,242,227,0.92);backdrop-filter:blur(10px);
  border-bottom:var(--line-strong);
}
.nav-logo{
  display:flex;align-items:center;gap:0.55rem;
  padding:0 1.5rem;border-right:var(--line);
  font-family:'Space Mono',monospace;font-size:0.72rem;letter-spacing:0.1em;
  text-transform:uppercase;color:var(--ink);text-decoration:none;white-space:nowrap;
}
.nav-logo b{font-weight:700;}
.nav-logo .sub{color:var(--terra);}
.nav-logo svg{display:block;flex:0 0 auto;}

.nav-ticker{flex:1;overflow:hidden;display:flex;align-items:center;border-right:var(--line);}
.nav-ticker-inner{display:flex;gap:2.5rem;animation:ticker 44s linear infinite;white-space:nowrap;padding:0 2rem;}
.nav-ticker-inner span{
  font-family:'Space Mono',monospace;font-size:0.55rem;letter-spacing:0.22em;
  text-transform:uppercase;color:var(--mid);
}
.nav-ticker-inner span.hi{color:var(--green);}
@keyframes ticker{from{transform:translateX(0);}to{transform:translateX(-50%);}}

.nav-links{display:flex;align-items:stretch;}
.nav-links a{
  font-family:'Space Mono',monospace;font-size:0.58rem;letter-spacing:0.16em;
  text-transform:uppercase;color:var(--mid);text-decoration:none;
  padding:0 1.4rem;display:flex;align-items:center;border-left:var(--line);
  transition:color .15s,background .15s;
}
.nav-links a:hover{color:var(--ink);background:var(--panel);}
.nav-links a.active{color:var(--terra);}
.nav-links a.nav-cta{background:var(--marigold);color:var(--ink);font-weight:700;}
.nav-links a.nav-cta:hover{background:var(--terra);color:var(--paper);}

/* ── BUTTONS ── */
.btn{
  display:inline-flex;align-items:center;gap:0.5rem;
  font-family:'Space Mono',monospace;font-size:0.62rem;letter-spacing:0.16em;
  text-transform:uppercase;font-weight:700;cursor:pointer;
  background:var(--marigold);color:var(--ink);border:1px solid var(--marigold);
  border-radius:var(--radius);padding:0.85rem 1.5rem;text-decoration:none;
  transition:background .15s,color .15s,border-color .15s;
}
.btn:hover{background:var(--terra);border-color:var(--terra);color:var(--paper);}
.btn.ghost{background:transparent;color:var(--terra);border-color:var(--terra);}
.btn.ghost:hover{background:var(--terra);color:var(--paper);}
.btn.on-green{background:var(--marigold);color:var(--ink);border-color:var(--marigold);}
.btn.on-green:hover{background:var(--paper);border-color:var(--paper);}

/* ── shared label bits ── */
.eyebrow{
  font-family:'Space Mono',monospace;font-size:0.6rem;letter-spacing:0.26em;
  text-transform:uppercase;color:var(--terra);font-weight:700;
  display:flex;align-items:center;gap:0.8rem;
}
.eyebrow::before{content:'';width:26px;height:2px;background:var(--terra);border-radius:2px;}

.section-header{
  display:flex;justify-content:space-between;align-items:baseline;gap:1rem;
  padding:2rem 2.5rem 1.5rem;border-bottom:var(--line);
}
.section-label{font-family:'Space Mono',monospace;font-size:0.58rem;letter-spacing:0.26em;text-transform:uppercase;color:var(--mid);}
.section-count{font-family:'Space Mono',monospace;font-size:0.58rem;letter-spacing:0.1em;color:var(--terra);}

.big-label{
  font-family:'Epilogue',sans-serif;font-weight:900;
  font-size:clamp(2.4rem,5vw,4.3rem);line-height:0.92;letter-spacing:0.01em;
  text-transform:uppercase;color:var(--ink);
}

/* ── HERO (split: content | photo) ── */
.hero{padding-top:54px;border-bottom:var(--line-strong);}
.hero-grid{display:grid;grid-template-columns:1.1fr 0.9fr;}
.hero-main{display:flex;flex-direction:column;border-right:var(--line);}

.hero-status{
  display:flex;justify-content:space-between;align-items:center;gap:0.5rem 1rem;flex-wrap:wrap;
  padding:0.9rem 2.5rem;border-bottom:var(--line);
}
.hero-status span,.hero-status a{
  font-family:'Space Mono',monospace;font-size:0.55rem;letter-spacing:0.18em;
  text-transform:uppercase;color:var(--ink);text-decoration:none;
}
.hero-status .tag{background:var(--marigold);color:var(--ink);padding:0.22rem 0.6rem;border-radius:var(--radius-sm);font-size:0.5rem;font-weight:700;letter-spacing:0.08em;}
.hero-status a:hover{color:var(--terra);}

.hero-body{flex:1;display:flex;flex-direction:column;justify-content:center;gap:1.6rem;padding:3rem 2.5rem;
  background:radial-gradient(ellipse at 85% 15%, color-mix(in srgb,var(--marigold) 18%,transparent) 0%, transparent 60%),
             radial-gradient(ellipse at 5% 95%, color-mix(in srgb,var(--green) 14%,transparent) 0%, transparent 55%);}
.hero-title{
  font-family:'Epilogue',sans-serif;font-weight:900;
  font-size:clamp(3rem,6.5vw,6rem);line-height:0.98;letter-spacing:0.01em;text-transform:uppercase;
  transform:scaleX(1.12);transform-origin:left center;
}
.hero-title .accent{color:var(--marigold);}
.hero-title .leaf{color:var(--green);}
.hero-desc{font-size:0.92rem;line-height:1.8;color:var(--mid);font-weight:300;max-width:46ch;}
.hero-desc b{color:var(--ink);font-weight:500;}
.hero-actions{display:flex;gap:0.8rem;flex-wrap:wrap;align-items:center;margin-top:0.3rem;}

.hero-photo{position:relative;overflow:hidden;background:var(--panel);min-height:420px;}
.hero-photo img{width:100%;height:100%;object-fit:cover;display:block;}
.hero-photo .caption{
  position:absolute;left:1rem;bottom:1rem;
  background:rgba(34,48,27,0.78);color:var(--paper);
  font-family:'Space Mono',monospace;font-size:0.5rem;letter-spacing:0.14em;text-transform:uppercase;
  padding:0.4rem 0.7rem;border-radius:var(--radius-sm);backdrop-filter:blur(2px);
}
.hero-photo .caption i{font-style:italic;color:var(--marigold);}
.hero-photo .caption{z-index:3;}

/* hero species-showcase slideshow */
.hero-photo .slide{position:absolute;inset:0;opacity:0;transition:opacity 1.1s ease;}
.hero-photo .slide.active{opacity:1;}
.hero-photo .slide img{width:100%;height:100%;object-fit:cover;display:block;}
/* hero fills the viewport below the nav (marquee sits just off screen) */
@media(min-width:1001px){ .hero-grid{min-height:calc(100vh - 54px);} }

/* ── MARQUEE ── */
.marquee-strip{border-bottom:var(--line-strong);overflow:hidden;padding:0.8rem 0;background:var(--panel);}
.marquee-inner{display:flex;animation:marquee 30s linear infinite;white-space:nowrap;}
.marquee-inner span{font-family:'Space Mono',monospace;font-size:0.58rem;letter-spacing:0.24em;text-transform:uppercase;color:var(--mid);padding:0 2.2rem;}
.marquee-inner span.accent{color:var(--green);}
@keyframes marquee{from{transform:translateX(0);}to{transform:translateX(-50%);}}

/* ── PACKS / FEATURED 3-up ── */
.featured-grid{display:grid;grid-template-columns:repeat(3,1fr);border-bottom:var(--line-strong);}
.featured-item{border-right:var(--line);display:flex;flex-direction:column;position:relative;overflow:hidden;}
.featured-item:last-child{border-right:none;}
.featured-img{aspect-ratio:4/3;background:var(--panel);overflow:hidden;position:relative;}
.featured-img img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .7s ease;}
.featured-item:hover .featured-img img{transform:scale(1.05);}
.featured-img.plan{display:flex;align-items:center;justify-content:center;background:#fff;}
.featured-img.plan img{object-fit:contain;padding:0.5rem;}
.featured-num-bg{position:absolute;bottom:-0.6rem;right:0.5rem;font-family:'Epilogue';font-weight:900;font-size:5.5rem;line-height:1;color:transparent;-webkit-text-stroke:1px rgba(224,98,58,0.28);pointer-events:none;z-index:2;}
.featured-meta{padding:1.4rem 1.6rem 1.8rem;border-top:var(--line);flex:1;display:flex;flex-direction:column;gap:0.55rem;}
.featured-num{font-family:'Space Mono',monospace;font-size:0.52rem;letter-spacing:0.18em;text-transform:uppercase;color:var(--terra);}
.featured-name{font-family:'Epilogue';font-weight:800;font-size:1.5rem;letter-spacing:0.01em;line-height:1;color:var(--ink);}
.featured-desc{font-size:0.78rem;line-height:1.7;color:var(--mid);font-weight:300;}
.chip{display:inline-block;align-self:flex-start;margin-top:auto;font-family:'Space Mono',monospace;font-size:0.48rem;letter-spacing:0.12em;text-transform:uppercase;font-weight:700;color:var(--paper);background:var(--green);border-radius:20px;padding:0.22rem 0.7rem;}

/* ── TWO-COLUMN BAND (specialty teaser, etc.) ── */
.split-band{display:grid;grid-template-columns:1fr 1fr;border-bottom:var(--line-strong);}
.split-band .media{background:var(--panel);overflow:hidden;min-height:340px;border-right:var(--line);}
.split-band .media img{width:100%;height:100%;object-fit:cover;display:block;}
.split-band .copy{padding:3rem 2.5rem;display:flex;flex-direction:column;gap:1.2rem;justify-content:center;}
.split-band .copy p{font-size:0.86rem;line-height:1.8;color:var(--mid);font-weight:300;max-width:46ch;}
.split-band .copy p b{color:var(--ink);font-weight:500;}
.split-band.flip .media{order:2;border-right:none;border-left:var(--line);}
/* compact variant — full-width photo cropped to a SHORTER band (loses top/bottom),
   text size unchanged; band height pulled down via tighter copy whitespace only */
/* image pinned to fill the cell so it no longer dictates band height;
   band collapses to the (shorter) text column and the photo crops to fit */
.split-band.compact .media{min-height:330px;position:relative;}
.split-band.compact .media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}

/* ── GREEN PANEL (mission / book intro) ── */
.green-panel{background:var(--green);color:var(--paper);}
.green-panel .eyebrow{color:var(--marigold);}
.green-panel .eyebrow::before{background:var(--marigold);}
.green-panel .big-label{color:var(--marigold);}

.mission{display:grid;grid-template-columns:0.85fr 1.15fr;border-bottom:var(--line-strong);}
.mission .left{padding:3rem 2.5rem;border-right:1px solid rgba(248,242,227,0.16);display:flex;flex-direction:column;justify-content:space-between;gap:2rem;}
.mission .right{padding:3rem 2.5rem;display:flex;flex-direction:column;gap:1.3rem;justify-content:center;}
.mission p{font-size:0.9rem;line-height:1.85;color:rgba(248,242,227,0.82);font-weight:300;max-width:54ch;}
.mission p b{color:var(--paper);font-weight:500;}
.mission .sign{font-family:'Space Mono',monospace;font-size:0.55rem;letter-spacing:0.18em;text-transform:uppercase;color:rgba(248,242,227,0.6);}

/* ── FIND US (schedule) ── */
.findus{border-bottom:var(--line-strong);}
.schedule{display:flex;flex-direction:column;}
.event-row{
  display:grid;grid-template-columns:120px 1fr 180px 140px;align-items:center;gap:1rem;
  padding:1.3rem 2.5rem;border-bottom:var(--line);transition:background .15s;
}
.event-row:last-child{border-bottom:none;}
.event-row:hover{background:var(--panel);}
.event-date{font-family:'Space Mono',monospace;font-size:0.7rem;letter-spacing:0.06em;color:var(--terra);font-weight:700;}
.event-date small{display:block;color:var(--mid);font-weight:400;font-size:0.6rem;letter-spacing:0.1em;margin-top:0.2rem;}
.event-name{font-family:'Epilogue';font-weight:700;font-size:1.1rem;color:var(--ink);}
.event-name span{display:block;font-family:'Space Grotesk';font-weight:300;font-size:0.76rem;color:var(--mid);margin-top:0.2rem;}
.event-loc{font-size:0.8rem;color:var(--mid);font-weight:400;}
.event-type{justify-self:end;font-family:'Space Mono',monospace;font-size:0.5rem;letter-spacing:0.14em;text-transform:uppercase;font-weight:700;padding:0.3rem 0.7rem;border-radius:20px;}
.event-type.market{background:var(--green);color:var(--paper);}
.event-type.popup{background:var(--marigold);color:var(--ink);}
.event-type.pickup{background:transparent;border:1px solid var(--terra);color:var(--terra);}

/* ── SERVICE AREAS BAND ── */
.service-band{display:grid;grid-template-columns:1fr 1fr;border-bottom:var(--line-strong);}
.service-cell{padding:2rem 2.5rem;border-right:var(--line);display:flex;flex-direction:column;gap:0.6rem;}
.service-cell:last-child{border-right:none;}
.service-region{font-family:'Space Mono',monospace;font-size:0.55rem;letter-spacing:0.22em;text-transform:uppercase;color:var(--terra);font-weight:700;}
.service-detail{font-size:0.95rem;font-weight:500;line-height:1.5;color:var(--ink);}
.service-detail small{display:block;font-size:0.74rem;font-weight:300;color:var(--mid);margin-top:0.3rem;}

/* ── INQUIRY / BOOK FORM ── */
.book-section{display:grid;grid-template-columns:1fr 1fr;border-bottom:var(--line-strong);}
.book-intro{padding:3.2rem 2.5rem;border-right:1px solid rgba(248,242,227,0.16);display:flex;flex-direction:column;justify-content:space-between;gap:2rem;}
.book-intro p{font-size:0.86rem;line-height:1.8;color:rgba(248,242,227,0.82);font-weight:300;max-width:40ch;}
.book-intro .contact-line{font-family:'Space Mono',monospace;font-size:0.55rem;letter-spacing:0.16em;text-transform:uppercase;color:rgba(248,242,227,0.6);line-height:2.4;}
.book-intro .contact-line a{color:var(--marigold);text-decoration:none;}
.book-form{padding:3.2rem 2.5rem;display:flex;flex-direction:column;gap:1.3rem;}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem;}
.form-group{display:flex;flex-direction:column;gap:0.4rem;}
.form-group.full{grid-column:1/-1;}
label{font-family:'Space Mono',monospace;font-size:0.5rem;letter-spacing:0.2em;text-transform:uppercase;color:var(--mid);}
input,select,textarea{
  font-family:'Space Grotesk';font-size:0.9rem;background:transparent;border:none;
  border-bottom:1px solid rgba(34,48,27,0.25);padding:0.55rem 0;color:var(--ink);outline:none;
  transition:border-color .2s;width:100%;
}
input:focus,select:focus,textarea:focus{border-color:var(--terra);}
input::placeholder,textarea::placeholder{color:rgba(34,48,27,0.32);font-size:0.82rem;}
textarea{resize:vertical;min-height:90px;}
select{cursor:pointer;}
.btn-submit{align-self:flex-start;margin-top:0.4rem;}

/* inquiry form sits on the green panel — lighten field text to match the intro column */
.book-section.green-panel .book-form label{color:rgba(248,242,227,0.62);}
.book-section.green-panel .book-form input,
.book-section.green-panel .book-form select,
.book-section.green-panel .book-form textarea{color:var(--paper);border-bottom-color:rgba(248,242,227,0.32);}
.book-section.green-panel .book-form input::placeholder,
.book-section.green-panel .book-form textarea::placeholder{color:rgba(248,242,227,0.45);}
.book-section.green-panel .book-form input:focus,
.book-section.green-panel .book-form select:focus,
.book-section.green-panel .book-form textarea:focus{border-bottom-color:var(--marigold);}
.book-section.green-panel .book-form select option{background:var(--green);color:var(--paper);}

/* ── INSTAGRAM STRIP ── */
.instagram-strip{padding:1.6rem 2.5rem;border-bottom:var(--line-strong);display:flex;align-items:center;justify-content:space-between;gap:1rem;background:var(--panel);}
.instagram-strip .label{font-family:'Space Mono',monospace;font-size:0.5rem;letter-spacing:0.24em;text-transform:uppercase;color:var(--mid);}
.instagram-strip a{font-family:'Space Mono',monospace;font-size:0.7rem;letter-spacing:0.16em;text-transform:uppercase;color:var(--ink);text-decoration:none;display:flex;align-items:center;gap:0.6rem;transition:color .15s;}
.instagram-strip a:hover{color:var(--terra);}
.instagram-strip a::after{content:'\2197';font-size:1rem;}

/* ── CTA BAND (bottom of Packs / Plants) ── */
.cta-band{display:flex;align-items:center;justify-content:space-between;gap:1.2rem 2.5rem;flex-wrap:wrap;padding:2.8rem 2.5rem;border-bottom:var(--line-strong);}
.cta-band .big-label{margin-top:0.5rem;font-size:clamp(1.9rem,3.8vw,3rem);}
.cta-band p.lead{font-size:0.86rem;line-height:1.7;color:rgba(248,242,227,0.82);font-weight:300;max-width:46ch;margin-top:0.6rem;}
@media(max-width:640px){ .cta-band{padding:2.2rem 1.25rem;} }

/* ── FOOTER ── */
footer{background:var(--green);padding:2rem 2.5rem;display:flex;justify-content:space-between;align-items:center;gap:1.5rem;flex-wrap:wrap;}
.footer-logo{display:flex;align-items:center;gap:0.6rem;font-family:'Space Mono',monospace;font-size:0.72rem;letter-spacing:0.1em;text-transform:uppercase;color:var(--paper);}
.footer-logo .sub{color:var(--marigold);}
.footer-mid{font-family:'Space Mono',monospace;font-size:0.55rem;letter-spacing:0.14em;text-transform:uppercase;color:rgba(248,242,227,0.7);text-align:center;line-height:2;}
.footer-mid a{color:var(--marigold);text-decoration:none;}
.footer-copy{font-family:'Space Mono',monospace;font-size:0.5rem;letter-spacing:0.12em;text-transform:uppercase;color:rgba(248,242,227,0.5);}

/* ── PAGE HEADER (interior pages) ── */
.page-header{padding-top:54px;border-bottom:var(--line-strong);}
.page-header-inner{padding:3.5rem 2.5rem 2.5rem;display:flex;align-items:flex-end;justify-content:space-between;gap:2rem;}
.page-title{font-family:'Epilogue';font-weight:900;font-size:clamp(3.5rem,9vw,7rem);line-height:0.9;letter-spacing:0.01em;text-transform:uppercase;color:var(--ink);}
.page-title-sub{font-family:'Space Mono',monospace;font-size:0.55rem;letter-spacing:0.24em;text-transform:uppercase;color:var(--terra);font-weight:700;margin-bottom:0.75rem;}
.page-header-inner .blurb{max-width:380px;font-size:0.82rem;line-height:1.9;color:var(--mid);font-weight:300;padding-bottom:0.4rem;}

/* ── VALUE PROPS (packs page) ── */
.value-props{display:grid;grid-template-columns:repeat(4,1fr);border-bottom:var(--line-strong);}
.vp-cell{padding:1.8rem 1.6rem;border-right:var(--line);display:flex;flex-direction:column;gap:0.6rem;}
.vp-cell:last-child{border-right:none;}
.vp-num{font-family:'Space Mono',monospace;font-size:0.5rem;letter-spacing:0.2em;color:var(--terra);font-weight:700;}
.vp-head{font-family:'Epilogue';font-weight:800;font-size:1.05rem;line-height:1.1;color:var(--ink);}
.vp-body{font-size:0.76rem;line-height:1.65;color:var(--mid);font-weight:300;}

/* ── SERIES HEADER (packs page) ── */
.series-head{padding:2.6rem 2.5rem 1.6rem;border-bottom:var(--line-strong);background:var(--green);color:var(--paper);}
.series-head .mono{font-family:'Space Mono',monospace;font-size:0.6rem;letter-spacing:0.24em;text-transform:uppercase;color:var(--marigold);font-weight:700;}
.series-head h2{font-family:'Epilogue';font-weight:900;font-size:clamp(2rem,5vw,3.6rem);line-height:0.95;text-transform:uppercase;letter-spacing:0.01em;margin:0.5rem 0 0.7rem;color:var(--paper);}
.series-head p{font-size:0.88rem;line-height:1.75;color:rgba(248,242,227,0.82);font-weight:300;max-width:72ch;}
.series-head p b{color:var(--marigold);font-weight:500;}

/* season chip on Savanna pack cards */
.pcard .season{position:absolute;top:0.5rem;left:0.5rem;z-index:2;font-family:'Space Mono',monospace;font-size:0.44rem;letter-spacing:0.1em;text-transform:uppercase;font-weight:700;color:var(--paper);background:var(--terra);border-radius:12px;padding:0.18rem 0.5rem;}

/* ── PACK BLOCK ── */
.pack-block{border-bottom:var(--line-strong);}
.pack-head{display:grid;grid-template-columns:1.3fr 1fr;gap:1rem;align-items:end;padding:2.5rem 2.5rem 1.8rem;border-bottom:var(--line);}
.pack-head .pk-title{font-family:'Epilogue';font-weight:900;font-size:clamp(2rem,4vw,3.2rem);line-height:0.95;text-transform:uppercase;letter-spacing:0.01em;color:var(--ink);}
.pack-head .pk-num{font-family:'Space Mono',monospace;font-size:0.55rem;letter-spacing:0.24em;text-transform:uppercase;color:var(--terra);font-weight:700;margin-bottom:0.6rem;}
.pack-head .pk-blurb{font-size:0.84rem;line-height:1.75;color:var(--mid);font-weight:300;}
.pk-cond{display:flex;gap:0.5rem;flex-wrap:wrap;margin-top:1rem;}
.pk-cond span{font-family:'Space Mono',monospace;font-size:0.5rem;letter-spacing:0.1em;text-transform:uppercase;font-weight:700;color:var(--ink);background:var(--panel);border:var(--line);border-radius:20px;padding:0.3rem 0.7rem;}
.pk-cta{display:flex;align-items:center;gap:1rem;padding:1.6rem 2.5rem;border-bottom:var(--line);background:var(--panel);flex-wrap:wrap;}
.pk-cta .note{font-family:'Space Mono',monospace;font-size:0.55rem;letter-spacing:0.12em;text-transform:uppercase;color:var(--mid);}
/* collapse toggle for pack plant lists — mobile only (hidden on desktop) */
.pk-toggle{display:none;}

/* ── SHARED PLANT GRID + CARD ── */
.plant-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:1px;background:rgba(34,48,27,0.16);}
.pcard{background:var(--paper);display:flex;flex-direction:column;position:relative;overflow:hidden;}
.pcard .pic{aspect-ratio:1/1;overflow:hidden;background:var(--panel);position:relative;}
.pcard .pic img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .6s ease;}
.pcard:hover .pic img{transform:scale(1.06);}
.pcard .sub-flag{position:absolute;top:0.5rem;right:0.5rem;background:rgba(34,48,27,0.8);color:var(--paper);font-family:'Space Mono',monospace;font-size:0.42rem;letter-spacing:0.08em;text-transform:uppercase;padding:0.2rem 0.45rem;border-radius:4px;}
.pcard .body{padding:0.9rem 1rem 1.1rem;display:flex;flex-direction:column;gap:0.3rem;flex:1;}
.pcard .nm{font-family:'Epilogue';font-weight:800;font-size:1.05rem;line-height:1;color:var(--ink);}
.pcard .bot{font-family:'Space Grotesk';font-style:italic;font-size:0.72rem;color:var(--terra);}
.pcard .bot b{font-style:normal;color:var(--mid);font-weight:400;}
.pcard .meta{font-family:'Space Mono',monospace;font-size:0.5rem;letter-spacing:0.06em;text-transform:uppercase;color:var(--mid);line-height:1.7;margin-top:0.3rem;}
.pcard .tags{display:flex;flex-wrap:wrap;gap:0.3rem;margin-top:auto;padding-top:0.6rem;}
.pcard .tags span{font-family:'Space Mono',monospace;font-size:0.44rem;letter-spacing:0.06em;text-transform:uppercase;font-weight:700;color:var(--green);background:color-mix(in srgb,var(--green) 12%,transparent);border-radius:12px;padding:0.16rem 0.5rem;}
/* documented-host stat bar */
.pcard .hosttag{margin-top:0.5rem;align-self:flex-start;display:inline-flex;align-items:center;gap:0.4rem;font-family:'Space Mono',monospace;font-size:0.44rem;letter-spacing:0.06em;text-transform:uppercase;font-weight:700;color:var(--green);background:color-mix(in srgb,var(--green) 12%,transparent);border-radius:12px;padding:0.22rem 0.6rem;line-height:1.2;cursor:help;}
.pcard .hosttag::before{content:'\273F';color:var(--marigold);font-size:0.66rem;line-height:1;}
.pcard .hosttag.pending{background:color-mix(in srgb,var(--green) 7%,transparent);color:var(--mid);}
.pcard .hosttag.pending::before{content:none;}

/* ── FILTER BAR (plants page) ── */
.filter-bar{border-bottom:var(--line-strong);background:var(--panel);position:sticky;top:54px;z-index:40;}
.filter-search{display:flex;align-items:center;gap:1rem;padding:1.2rem 2.5rem 0.8rem;}
.filter-search input{font-family:'Space Grotesk';font-size:1rem;border:none;border-bottom:1px solid rgba(34,48,27,0.25);background:transparent;padding:0.4rem 0;flex:1;}
.filter-search .count{font-family:'Space Mono',monospace;font-size:0.55rem;letter-spacing:0.14em;text-transform:uppercase;color:var(--terra);font-weight:700;white-space:nowrap;}
.filter-groups{display:flex;flex-wrap:wrap;gap:0.4rem 1.4rem;padding:0.4rem 2.5rem 1.2rem;align-items:center;}
.fgroup{display:flex;align-items:center;gap:0.4rem;flex-wrap:wrap;}
.fgroup .flabel{font-family:'Space Mono',monospace;font-size:0.5rem;letter-spacing:0.16em;text-transform:uppercase;color:var(--mid);margin-right:0.2rem;}
.fchip{font-family:'Space Mono',monospace;font-size:0.55rem;letter-spacing:0.08em;text-transform:uppercase;font-weight:700;color:var(--ink);background:var(--paper);border:1px solid rgba(34,48,27,0.2);border-radius:20px;padding:0.34rem 0.75rem;cursor:pointer;transition:all .12s;}
.fchip:hover{border-color:var(--terra);color:var(--terra);}
.fchip.on{background:var(--green);border-color:var(--green);color:var(--paper);}
.fclear{font-family:'Space Mono',monospace;font-size:0.5rem;letter-spacing:0.14em;text-transform:uppercase;color:var(--terra);background:none;border:none;cursor:pointer;text-decoration:underline;}
.empty-state{padding:4rem 2.5rem;text-align:center;font-family:'Space Mono',monospace;font-size:0.7rem;letter-spacing:0.1em;text-transform:uppercase;color:var(--mid);}

/* ── SOIL FINDER ── */
.sf-wrap{border-bottom:var(--line-strong);background:var(--green);}
.sf-toggle{width:100%;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1.05rem 2.5rem;background:none;border:none;cursor:pointer;color:var(--paper);}
.sf-toggle-l{display:flex;align-items:center;gap:0.7rem;font-family:'Epilogue';font-weight:800;font-size:1.05rem;letter-spacing:0.01em;}
.sf-toggle .sf-ic{color:var(--marigold);font-size:1.05rem;}
.sf-toggle .sf-chev{color:var(--marigold);font-size:0.9rem;transition:transform .2s;}
.sf-toggle.open .sf-chev{transform:rotate(180deg);}
.sf-toggle:hover .sf-toggle-l{color:var(--marigold);}
.sf-body{padding:0 2.5rem 2rem;color:var(--paper);}
.sf-intro{font-size:0.86rem;line-height:1.7;color:rgba(248,242,227,0.85);font-weight:300;max-width:70ch;margin-bottom:1.1rem;}
.sf-form{display:flex;gap:0.8rem;flex-wrap:wrap;align-items:flex-end;}
.sf-field{display:flex;flex-direction:column;gap:0.35rem;}
.sf-field label{font-family:'Space Mono',monospace;font-size:0.5rem;letter-spacing:0.16em;text-transform:uppercase;color:var(--marigold);font-weight:700;}
.sf-field input,.sf-field select{font-family:'Space Grotesk';font-size:0.9rem;color:var(--ink);background:var(--paper);border:none;border-radius:var(--radius-sm);padding:0.7rem 0.85rem;}
.sf-field#sf-addr,.sf-form .sf-field:first-child{flex:1;min-width:240px;}
.sf-field:first-child input{width:100%;}
.sf-go{align-self:flex-end;}
.sf-priv{font-family:'Space Mono',monospace;font-size:0.5rem;letter-spacing:0.04em;line-height:1.8;color:rgba(248,242,227,0.55);margin-top:0.9rem;max-width:80ch;}
.sf-results{margin-top:1.3rem;}
.sf-msg{background:var(--paper);color:var(--ink);border-radius:var(--radius);padding:1.1rem 1.3rem;font-size:0.85rem;line-height:1.7;}
.sf-msg.load{color:var(--mid);font-family:'Space Mono',monospace;font-size:0.7rem;letter-spacing:0.08em;text-transform:uppercase;}
.sf-msg.warn{border-left:4px solid var(--terra);}
.sf-msg a{color:var(--terra);font-weight:600;}
.sf-soil{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:rgba(248,242,227,0.18);border-radius:var(--radius);overflow:hidden;margin-bottom:1rem;}
.sf-soil-row{background:var(--paper);padding:0.85rem 1rem;display:flex;flex-direction:column;gap:0.25rem;}
.sf-soil-row span{font-family:'Space Mono',monospace;font-size:0.48rem;letter-spacing:0.14em;text-transform:uppercase;color:var(--mid);}
.sf-soil-row b{font-family:'Epilogue';font-weight:800;font-size:1.1rem;color:var(--ink);line-height:1;}
.sf-soil-row b i{font-style:normal;font-size:0.7rem;color:var(--mid);font-weight:600;}
.sf-soil-note{grid-column:1/-1;background:var(--paper);padding:0.6rem 1rem;font-family:'Space Mono',monospace;font-size:0.5rem;letter-spacing:0.04em;line-height:1.7;color:var(--mid);}
.sf-soil-note i{color:var(--terra);font-style:italic;}
.sf-caveat{background:color-mix(in srgb,var(--marigold) 18%,var(--paper));color:var(--ink);border-radius:var(--radius);padding:0.85rem 1.1rem;font-size:0.78rem;line-height:1.65;margin-bottom:1.2rem;}
.sf-caveat b{font-weight:700;}
.sf-sec{margin-bottom:1.3rem;}
.sf-sec h4{font-family:'Space Mono',monospace;font-size:0.55rem;letter-spacing:0.2em;text-transform:uppercase;color:var(--marigold);font-weight:700;margin-bottom:0.7rem;}
.sf-packs{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:0.7rem;}
.sf-pack{display:flex;flex-direction:column;gap:0.25rem;background:var(--paper);border-radius:var(--radius);padding:0.9rem 1rem;text-decoration:none;border:2px solid transparent;transition:border-color .12s;}
.sf-pack:hover{border-color:var(--marigold);}
.sf-pack-series{font-family:'Space Mono',monospace;font-size:0.46rem;letter-spacing:0.14em;text-transform:uppercase;color:var(--terra);font-weight:700;}
.sf-pack-name{font-family:'Epilogue';font-weight:800;font-size:1.05rem;color:var(--ink);line-height:1.05;}
.sf-pack-why{font-family:'Space Mono',monospace;font-size:0.46rem;letter-spacing:0.06em;text-transform:uppercase;color:var(--mid);}
.sf-sps{display:flex;flex-wrap:wrap;gap:0.5rem;}
.sf-sp{display:flex;flex-direction:column;gap:0.15rem;background:var(--paper);border-radius:var(--radius-sm);padding:0.5rem 0.75rem;text-decoration:none;}
.sf-sp{color:var(--ink);font-family:'Epilogue';font-weight:700;font-size:0.82rem;}
.sf-sp em{font-family:'Space Grotesk';font-style:italic;font-weight:400;font-size:0.66rem;color:var(--terra);}
.sf-sp b{font-family:'Space Mono',monospace;font-weight:700;font-size:0.46rem;letter-spacing:0.06em;text-transform:uppercase;color:var(--green);}
.sf-sp:hover{outline:2px solid var(--marigold);}
.sf-none,.sf-more{font-size:0.8rem;color:rgba(248,242,227,0.85);line-height:1.6;}
.sf-more{margin-top:0.6rem;}
.sf-none a,.sf-more a{color:var(--marigold);font-weight:600;text-decoration:none;}

/* ── CREDITS PAGE ── */
.credits-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1px;background:rgba(34,48,27,0.16);border-top:var(--line-strong);border-bottom:var(--line-strong);}
.credit{background:var(--paper);display:flex;gap:0.9rem;padding:0.9rem 1rem;align-items:center;}
.credit img{width:60px;height:60px;object-fit:cover;border-radius:6px;flex:0 0 auto;}
.credit .c-nm{font-family:'Space Grotesk';font-style:italic;font-size:0.8rem;color:var(--ink);}
.credit .c-meta{font-family:'Space Mono',monospace;font-size:0.5rem;letter-spacing:0.06em;color:var(--mid);line-height:1.6;margin-top:0.2rem;}
.credit .c-meta a{color:var(--terra);text-decoration:none;}
.credit .c-sub{color:var(--terra);font-size:0.46rem;}

/* ════ RESPONSIVE ════ */
@media(max-width:1000px){
  .hero-grid{grid-template-columns:1fr;}
  .hero-main{border-right:none;border-bottom:var(--line);}
  .hero-photo{min-height:340px;}
  .featured-grid{grid-template-columns:1fr;}
  .featured-item{border-right:none;border-bottom:var(--line);}
  .featured-item:last-child{border-bottom:none;}
  .split-band,.split-band.compact{grid-template-columns:1fr;}
  .split-band .media{border-right:none;border-bottom:var(--line);}
  .split-band.compact .media{min-height:240px;}
  .split-band.flip .media{order:0;border-left:none;}
  .mission{grid-template-columns:1fr;}
  .mission .left{border-right:none;border-bottom:1px solid rgba(248,242,227,0.16);}
  .book-section{grid-template-columns:1fr;}
  .book-intro{border-right:none;border-bottom:1px solid rgba(248,242,227,0.16);}
  .event-row{grid-template-columns:90px 1fr 110px;gap:0.8rem;}
  .event-type{grid-column:2/4;justify-self:start;margin-top:0.3rem;}
}
@media(max-width:640px){
  html,body{overflow-x:hidden;}
  .nav-ticker{display:none;}
  /* stacked, wrapping nav so nothing is cut off on phones */
  .site-nav{position:static;height:auto;flex-wrap:wrap;}
  .nav-logo{width:100%;justify-content:center;border-right:none;border-bottom:var(--line);padding:0.85rem 1rem;font-size:1.12rem;letter-spacing:0.06em;gap:0.7rem;}
  .nav-logo svg{width:34px;height:34px;}
  .nav-links{width:100%;flex-wrap:wrap;justify-content:center;}
  .nav-links a{flex:1 1 auto;justify-content:center;border-left:none;border-bottom:var(--line);padding:0.7rem 0.5rem;font-size:0.56rem;letter-spacing:0.1em;min-height:42px;}
  .nav-links a.nav-cta{flex-basis:100%;border-bottom:none;background:var(--green);color:var(--paper);}
  .hero{padding-top:0;}
  .page-header{padding-top:0;}
  .hero-title{transform:none;font-size:clamp(2.6rem,12vw,4rem);}
  .hero-body{padding:2.2rem 1.25rem;}
  .hero-status{padding:0.8rem 1.25rem;}
  .section-header{padding:1.75rem 1.25rem 1.25rem;}
  .featured-meta{padding:1.25rem 1.25rem 1.6rem;}
  .split-band .copy{padding:2.2rem 1.25rem;}
  .mission .left,.mission .right{padding:2.2rem 1.25rem;}
  .service-band{grid-template-columns:1fr;}
  .service-cell{border-right:none;border-bottom:var(--line);}
  .service-cell:last-child{border-bottom:none;}
  .book-intro,.book-form{padding:2.2rem 1.25rem;}
  .form-row{grid-template-columns:1fr;}
  .event-row{grid-template-columns:1fr;gap:0.4rem;padding:1.1rem 1.25rem;}
  .event-type{grid-column:1;justify-self:start;}
  .instagram-strip{flex-direction:column;align-items:flex-start;gap:0.6rem;padding:1.5rem 1.25rem;}
  footer{flex-direction:column;text-align:center;gap:1rem;padding:2rem 1.25rem;}
  .page-header-inner{padding:2.5rem 1.25rem 2rem;flex-direction:column;align-items:flex-start;gap:1.25rem;}
  .filter-search{padding:1rem 1.25rem 0.7rem;}
  .filter-groups{padding:0.4rem 1.25rem 1rem;}
  .pack-head,.pk-cta{padding-left:1.25rem;padding-right:1.25rem;}
  /* collapse each pack's plant list on mobile */
  .pk-toggle{display:flex;align-items:center;justify-content:center;gap:0.5rem;width:100%;
    font-family:'Space Mono',monospace;font-size:0.6rem;letter-spacing:0.12em;text-transform:uppercase;font-weight:700;
    color:var(--ink);background:var(--panel);border:none;border-bottom:var(--line);padding:0.95rem 1.25rem;cursor:pointer;}
  .pk-toggle .chev{color:var(--terra);font-size:0.7rem;}
  .pack-block .plant-grid{display:none;}
  .pack-block.open .plant-grid{display:grid;}
  /* soil finder — mobile */
  .sf-toggle{padding-left:1.25rem;padding-right:1.25rem;gap:0.6rem;}
  .sf-toggle-l{font-size:0.92rem;}
  .sf-body{padding-left:1.25rem;padding-right:1.25rem;}
  .sf-soil{grid-template-columns:1fr;}
  .sf-intro{font-size:0.82rem;}
}

@media(max-width:900px){
  .value-props{grid-template-columns:1fr 1fr;}
  .vp-cell:nth-child(2){border-right:none;}
  .vp-cell:nth-child(1),.vp-cell:nth-child(2){border-bottom:var(--line);}
  .pack-head{grid-template-columns:1fr;}
}
@media(max-width:560px){
  .value-props{grid-template-columns:1fr;}
  .vp-cell{border-right:none;border-bottom:var(--line);}
  .vp-cell:last-child{border-bottom:none;}
  .plant-grid,.credits-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));}
  .filter-bar{position:static;}
}
