
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{background:#eef2e8;color:#343a2f;font-family:Candara, Optima, 'Segoe UI', sans-serif;line-height:1.8;
  font-size:18px;-webkit-font-smoothing:antialiased}
img{display:block;max-width:100%;height:auto}
a{color:inherit;text-decoration:none}
h1,h2,h3{font-family:Futura, 'Century Gothic', 'Segoe UI', sans-serif;line-height:1.2}

.topnav{display:flex;justify-content:space-between;align-items:baseline;
  max-width:900px;margin:0 auto;padding:1.6rem clamp(1rem,4vw,2rem)}
.brand{font-family:Futura, 'Century Gothic', 'Segoe UI', sans-serif;font-weight:600;font-size:1.2rem;letter-spacing:.02em}
.links{display:flex;gap:1.6rem}
.links a{color:#858c7c;font-size:.9rem}
.links a:hover{color:#6f9a4f}

.stack{max-width:820px;margin:0 auto;padding:1rem clamp(1rem,4vw,2rem) 6rem;
  display:flex;flex-direction:column;align-items:center;gap:clamp(2rem,5vw,3.5rem)}
.sprig{width:120px;height:60px;margin:1rem auto .5rem;transform-origin:60px 58px;
  animation:sway 6s ease-in-out infinite}
@keyframes sway{0%,100%{transform:rotate(-3deg)}50%{transform:rotate(3deg)}}

.plate{position:relative;width:100%;background:#f8fbf2;border:1px solid rgba(111,154,79,0.5);
  padding:clamp(2.4rem,6vw,4rem)}
.plate-in{position:relative;text-align:center}
.fc{position:absolute;width:64px;height:64px}
.fc svg{width:100%;height:100%;display:block}
.fc.tl{top:8px;left:8px}
.fc.tr{top:8px;right:8px;transform:scaleX(-1)}
.fc.bl{bottom:8px;left:8px;transform:scaleY(-1)}
.fc.br{bottom:8px;right:8px;transform:scale(-1,-1)}

.hero .kick{letter-spacing:.3em;text-transform:uppercase;font-size:.75rem;
  color:#6f9a4f;margin-bottom:1.2rem}
.hero h1{font-weight:400;font-size:clamp(2.4rem,7vw,4rem);letter-spacing:-.01em}
.hero .dek{color:#858c7c;font-size:clamp(1.1rem,3vw,1.3rem);margin:1.2rem auto 1.8rem;
  max-width:34ch}
.btn{display:inline-block;border:1.5px solid #6f9a4f;color:#6f9a4f;padding:.75rem 1.8rem;
  border-radius:2px;font-family:Futura, 'Century Gothic', 'Segoe UI', sans-serif;letter-spacing:.06em;transition:.25s}
.btn:hover{background:#6f9a4f;color:#ffffff}

.plate h2{font-weight:500;font-size:clamp(1.5rem,4vw,2.1rem);color:#6f9a4f;
  margin-bottom:1.2rem}
.plate p{color:#343a2f}
.plate h2::after{content:"";display:block;width:60px;height:1px;background:rgba(111,154,79,0.5);
  margin:.9rem auto 0}

.banner{width:100%;padding:.6rem;border:1px solid rgba(111,154,79,0.5);background:#f8fbf2}
.banner img{width:100%;aspect-ratio:20/9;object-fit:cover}

.specimens{display:grid;grid-template-columns:1fr 1fr;gap:1.6rem;text-align:left;
  margin-top:.6rem}
.specimen{padding:1.2rem;border:1px solid rgba(52,58,47,0.14)}
.sp-n{font-family:Futura, 'Century Gothic', 'Segoe UI', sans-serif;font-style:italic;color:#6f9a4f;font-size:1.3rem}
.specimen h3{font-size:1.1rem;margin:.3rem 0 .5rem;font-weight:500}
.specimen p{color:#858c7c;font-size:.94rem}

.gallery{width:100%;text-align:center}
.gh{font-family:Futura, 'Century Gothic', 'Segoe UI', sans-serif;font-weight:500;font-size:clamp(1.5rem,4vw,2rem);
  color:#6f9a4f;margin-bottom:1.8rem}
.herbs{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem}
.herb{margin:0;padding:.5rem;border:1px solid rgba(111,154,79,0.5);background:#f8fbf2}
.herb img{width:100%;aspect-ratio:4/5;object-fit:cover}
.herb figcaption{font-family:Futura, 'Century Gothic', 'Segoe UI', sans-serif;font-style:italic;font-size:.8rem;color:#858c7c;
  margin-top:.5rem}

.quote blockquote{font-family:Futura, 'Century Gothic', 'Segoe UI', sans-serif;font-style:italic;
  font-size:clamp(1.4rem,4vw,2rem);line-height:1.35;max-width:26ch;margin:0 auto}
.quote .by{color:#6f9a4f;letter-spacing:.2em;text-transform:uppercase;
  font-size:.78rem;margin-top:1rem}

.clines{display:flex;flex-direction:column;gap:.3rem;margin-top:1.2rem;font-weight:600}
.clines a:hover{color:#6f9a4f}
.clines span{color:#858c7c;font-weight:400}

.foot{text-align:center;margin-top:1rem}
.foot p{font-family:Futura, 'Century Gothic', 'Segoe UI', sans-serif}
.foot .fine{color:#858c7c;font-size:.85rem;margin-top:.4rem}

@media(max-width:720px){
  .links{display:none}
  .specimens,.herbs{grid-template-columns:1fr}
  .herbs{grid-template-columns:repeat(2,1fr)}
}
@media(prefers-reduced-motion:reduce){
  .sprig{animation:none}
  .btn{transition:none}
}


.xq{box-sizing:border-box;font-family:Candara, Optima, 'Segoe UI', sans-serif;color:#343a2f;padding:56px 24px;width:100%}
.xq *{box-sizing:border-box;margin:0}
.xq .xq-wrap{max-width:1060px;margin:0 auto}
.xq h2{font-family:Futura, 'Century Gothic', 'Segoe UI', sans-serif;font-size:1.7rem;line-height:1.2;margin-bottom:8px}
.xq .xq-kick{display:block;font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;color:#6f9a4f;margin-bottom:10px;font-weight:700}

.xq-hours{border-top:1px solid rgba(52,58,47,0.14)}
.xq-hours-in{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:26px;align-items:start}
.xq-hours address{font-style:normal;color:#858c7c;line-height:1.8;margin-top:8px}
.xq-hourtable{width:100%;border-collapse:collapse}
.xq-hourtable th,.xq-hourtable td{text-align:left;padding:12px 6px;border-bottom:1px solid rgba(52,58,47,0.14)}
.xq-hourtable th{font-family:Futura, 'Century Gothic', 'Segoe UI', sans-serif}
.xq-hourtable td{color:#6f9a4f;font-weight:700;text-align:right}


.xq-strip{padding-left:0;padding-right:0}
.xq-strip .xq-wrap{padding:0 24px}
.xq-striprail{list-style:none;display:flex;gap:12px;overflow-x:auto;padding:14px 24px;scroll-snap-type:x mandatory}
.xq-striprail li{flex:0 0 min(64vw,300px);scroll-snap-align:start}
.xq-striprail img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:20px;display:block}


/* =====================================================
   DESIGN DNA: terminal-green
   Whole-page visual system applied over the layout
   archetype. Appended last so it wins the cascade.
   ===================================================== */
body,p,li,a,td,th,dt,dd,input,textarea{font-family:'Courier New', Courier, monospace !important}
h1,h2,h3{font-family:'Courier New', Courier, monospace !important;text-transform:uppercase !important;letter-spacing:.06em !important}
h1::after{content:'\2588';margin-left:.15em;color:#6f9a4f}
@media (prefers-reduced-motion: no-preference){@keyframes dnablink{50%{opacity:0}}h1::after{animation:dnablink 1.1s steps(1) infinite}}
html::before{content:'';position:fixed;inset:0;z-index:99980;pointer-events:none;background:repeating-linear-gradient(0deg,rgba(0,0,0,.5) 0 1px,transparent 1px 3px);opacity:.10;}
img{filter:grayscale(1) contrast(1.25) brightness(.92);border-radius:0 !important;border:1px solid rgba(111,154,79,.6) !important}
a[class*="btn"],button,span[class*="btn"]{border-radius:0 !important;border:1px solid #6f9a4f !important;font-family:'Courier New', Courier, monospace !important;text-transform:uppercase;box-shadow:none !important}
div[class*="card"]:not([class*="cards"]),article[class*="card"],a[class*="card"],figure[class*="card"],li[class*="card"]{border-radius:0 !important;border:1px solid rgba(111,154,79,.45) !important;box-shadow:none !important}
::selection{background:#6f9a4f;color:#eef2e8}
