*, *::before, *::after { box-sizing: border-box; }
  html { scroll-behavior: smooth; }
  [id] { scroll-margin-top: 88px; }
  a:focus-visible, button:focus-visible, input:focus-visible { outline: 2px solid #1B6B52; outline-offset: 3px; }
  [data-mobile-cta] { display: none; }
  @media (max-width: 700px) {
    [data-mobile-cta] { display: flex !important; }
    body { padding-bottom: 86px; }
  }
  body { margin: 0; background: #F4F1E9; color: #161A18; font-family: 'Instrument Sans', system-ui, sans-serif; -webkit-font-smoothing: antialiased; }
  a { color: #1B6B52; text-decoration: none; }
  a:hover { color: #A45C3C; }
  h1, h2, h3, h4 { margin: 0; font-family: 'Archivo', system-ui, sans-serif; font-weight: 700; letter-spacing: -0.03em; line-height: 1.0; text-wrap: balance; }
  p { margin: 0; text-wrap: pretty; }
  input, textarea, button { font-family: inherit; }
  input[type="range"] { accent-color: #1B6B52; }
  @keyframes marquee { from { transform: translateX(0); } to { transform: translateX(-50%); } }
  @keyframes blip { 0%, 100% { opacity: 1; } 50% { opacity: 0.2; } }
  @keyframes floaty { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(-14px); } }
  @keyframes floatyB { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(11px); } }
  @keyframes drift { 0%, 100% { transform: translate3d(0,0,0) scale(1); } 50% { transform: translate3d(3%, -4%, 0) scale(1.08); } }
  @keyframes riseIn { from { opacity: 0; transform: translateY(26px); } to { opacity: 1; transform: none; } }
  @keyframes barGrow { from { transform: scaleY(0.06); } to { transform: scaleY(1); } }
  @media (max-width: 640px) { [data-promo-note] { display: none; } }
  @media (max-width: 940px) {
    [data-menu-btn] { display: grid !important; }
    [data-navlinks] {
      display: none !important; position: absolute; top: 100%; left: 0; right: 0;
      flex-direction: column; align-items: stretch !important; gap: 0 !important;
      background: #F4F1E9; border-bottom: 1px solid rgba(22,26,24,0.12);
      padding: 6px 18px 18px; box-shadow: 0 24px 40px -28px rgba(22,26,24,0.4);
    }
    [data-navlinks][data-open="1"] { display: flex !important; }
    [data-navlinks] > a { font-size: 16.5px; padding: 14px 2px; border-bottom: 1px solid rgba(22,26,24,0.08); }
    [data-navlinks] > a:last-child { margin-top: 14px; border-bottom: none; text-align: center; padding: 15px 18px; }
  }
  @media (max-width: 620px) {
    [data-hero-cards] { grid-template-columns: 1fr !important; }
  }
  @media (hover: none) {
    a, button { -webkit-tap-highlight-color: rgba(27,107,82,0.15); }
  }
  @media (prefers-reduced-motion: reduce) {
    *, *::before, *::after { animation-duration: .001ms !important; animation-iteration-count: 1 !important; transition-duration: .001ms !important; }
    [data-reveal] { opacity: 1 !important; transform: none !important; }
  }
  @media (max-width: 560px) {
    [data-hero-badge] { position: static !important; margin-top: 12px; width: fit-content; }
    [data-about-badge] { position: static !important; margin-top: 14px; }
    [data-float] { animation: none !important; }
  }

/* static export: interaction states */
.x1:hover { color: #161A18 !important }
.x2:hover { color: #161A18 !important }
.x3:hover { color: #161A18 !important }
.x4:hover { color: #161A18 !important }
.x5:hover { color: #161A18 !important }
.x6:hover { color: #161A18 !important }
.x7:hover { background: #165843 !important; color: #F7F6F0 !important; transform: translateY(-1px) !important }
.x8:hover { background: #165843 !important; color: #F7F6F0 !important; transform: translateY(-2px) !important; box-shadow: 0 20px 38px -14px rgba(27,107,82,0.7) !important }
.x9:hover { border-color: #161A18 !important; background: rgba(22,26,24,0.04) !important; color: #161A18 !important }
.x10:hover { border-color: rgba(27,107,82,0.45) !important; box-shadow: 0 20px 44px -26px rgba(22,26,24,0.35) !important }
.x11:hover { border-color: rgba(27,107,82,0.45) !important; box-shadow: 0 20px 44px -26px rgba(22,26,24,0.35) !important }
.x12:hover { border-color: rgba(27,107,82,0.45) !important; box-shadow: 0 20px 44px -26px rgba(22,26,24,0.35) !important }
.x13:hover { border-color: rgba(27,107,82,0.45) !important; box-shadow: 0 20px 44px -26px rgba(22,26,24,0.35) !important }
.x14:hover { border-color: rgba(27,107,82,0.45) !important; box-shadow: 0 20px 44px -26px rgba(22,26,24,0.35) !important }
.x15:hover { border-color: rgba(27,107,82,0.45) !important; box-shadow: 0 20px 44px -26px rgba(22,26,24,0.35) !important }
.x16:hover { border-color: rgba(27,107,82,0.45) !important; box-shadow: 0 20px 44px -26px rgba(22,26,24,0.35) !important }
.x17:hover { border-color: rgba(27,107,82,0.45) !important; box-shadow: 0 20px 44px -26px rgba(22,26,24,0.35) !important }
.x18:hover { border-color: rgba(27,107,82,0.45) !important; box-shadow: 0 20px 44px -26px rgba(22,26,24,0.35) !important }
.x19:hover { border-color: rgba(27,107,82,0.45) !important; box-shadow: 0 20px 44px -26px rgba(22,26,24,0.35) !important }
.x20:hover { border-color: rgba(184,233,134,0.6) !important; background: rgba(240,239,230,0.06) !important }
.x21:hover { border-color: rgba(184,233,134,0.6) !important; background: rgba(240,239,230,0.06) !important }
.x22:hover { border-color: rgba(184,233,134,0.6) !important; background: rgba(240,239,230,0.06) !important }
.x23:hover { border-color: rgba(184,233,134,0.6) !important; background: rgba(240,239,230,0.06) !important }
.x24:hover { background: #CBF29E !important; color: #10231C !important; transform: translateY(-2px) !important }
.x25:hover { box-shadow: 0 22px 46px -26px rgba(22,26,24,0.38) !important }
.x26:hover { box-shadow: 0 22px 46px -26px rgba(22,26,24,0.38) !important }
.x27:hover { box-shadow: 0 22px 46px -26px rgba(22,26,24,0.38) !important }
.x28:hover { border-color: #B8E986 !important; color: #B8E986 !important }
.x29:hover { box-shadow: 0 20px 44px -26px rgba(22,26,24,0.35) !important }
.x30:hover { box-shadow: 0 20px 44px -26px rgba(22,26,24,0.35) !important }
.x31:hover { transform: translateY(-3px) !important; box-shadow: 0 14px 32px rgba(22,26,24,0.10) !important; border-color: rgba(29,191,115,0.55) !important }
.x32:hover { transform: translateY(-3px) !important; box-shadow: 0 14px 32px rgba(22,26,24,0.10) !important; border-color: rgba(20,168,0,0.5) !important }
.x33:hover { background: #183327 !important }
.x34:hover { background: #CBF29E !important; transform: translateY(-2px) !important }
.x35:hover { border-color: #B8E986 !important; color: #B8E986 !important }
.x36:hover { border-color: #1DBF73 !important }
.x37:hover { border-color: #14A800 !important }
.x38:hover { border-color: #1DBF73 !important }
.x39:hover { border-color: #55C300 !important }
.x38b:hover { border-color: #B8E986 !important; background: rgba(184,233,134,0.1) !important }

button { font: inherit; }
[data-faq] { min-height: 56px; }
