:where(.top-bar,.vx-nav,.site-footer) *,:where(.mega-overlay){margin:0;padding:0;box-sizing:border-box}
:where(.vx-nav,.site-footer) ul{list-style:none}:where(.site-footer) li{margin-bottom:9px}
:where(.top-bar,.vx-nav,.site-footer){line-height:1.5;font-family:'Inter','Inter Fallback',sans-serif}:where(.site-footer,.vx-nav,.top-bar) a{color:inherit}
@font-face{
    font-family:'Inter Fallback';
    src:local('Arial');
    ascent-override:90%; descent-override:22.43%;
    line-gap-override:0%; size-adjust:107.12%;
  }
:root{
    --ink:#10160D;
    --ink-soft:#182014;
    --paper:#F6F7F1;
    --paper-dim:#EBEDE2;
    --brass:#8FD13F;
    --brass-light:#B6E86E;
    --money:#4C9A2A;
    --money-light:#63B93B;
    --charcoal:#171B13;
    --rule:#DBDED0;
    --rule-dark:#28331F;
    --money-text:#37711C;
  }
.mono{font-family:'IBM Plex Mono', monospace;}
nav{
    position:sticky; top:0; z-index:50;
    background:rgba(247,244,236,0.92);
    backdrop-filter:blur(8px);
    border-bottom:1px solid var(--rule);
    padding:18px 6vw;
    display:flex; justify-content:space-between; align-items:center;
  }
@keyframes sway{
    0%,100%{transform:rotate(-1.2deg);}
    50%{transform:rotate(0.6deg);}
  }
@keyframes ticker{
    0%{transform:translateX(0);}
    100%{transform:translateX(-50%);}
  }
footer{
    padding:36px 6vw;
    display:flex; justify-content:space-between; align-items:center;
    border-top:1px solid var(--rule);
    font-size:0.8rem; color:#7a8090;
    flex-wrap:wrap; gap:12px;
  }
footer .mono{font-family:'IBM Plex Mono', monospace;}
.top-bar{
    background:var(--ink);
    color:#dfe4d5;
    text-align:center;
    padding:9px 16px;
    font-size:0.82rem;
    font-family:'Inter','Inter Fallback',sans-serif;
    display:flex; align-items:center; justify-content:center; gap:10px;
    flex-wrap:wrap;
  }
.top-bar .phone{
    color:var(--brass-light); font-weight:600;
    display:inline-flex; align-items:center; gap:6px;
    border:1px solid var(--rule-dark); border-radius:20px;
    padding:4px 12px;
  }
.mega-overlay{
    position:fixed; inset:0; top:var(--nav-h, 64px);
    background:rgba(16,22,13,0.35);
    z-index:35; display:none;
  }
.site-footer{
    background:var(--ink);
    background-image:radial-gradient(rgba(255,255,255,0.05) 1px, transparent 1px);
    background-size:16px 16px;
    color:#c9d0bd;
    padding:7vh 6vw 4vh;
  }
.footer-grid{
    display:grid;
    grid-template-columns:repeat(5, 1fr);
    gap:36px;
    margin-bottom:56px;
  }
.footer-group{margin-bottom:32px;}
.footer-group h3{
    font-family:'IBM Plex Mono', monospace;
    font-size:0.75rem; letter-spacing:0.08em; text-transform:uppercase;
    color:var(--brass-light);
    margin-bottom:14px;
  }
.footer-group ul{list-style:none;}
.footer-group li{margin-bottom:9px;}
.footer-group a{
    color:#c9d0bd; text-decoration:none; font-size:0.86rem;
    opacity:0.85; transition:opacity 0.15s, color 0.15s;
  }
.footer-group a:hover{opacity:1; color:var(--brass-light);}
.footer-bottom-top{
    display:flex; justify-content:space-between; align-items:center;
    padding-bottom:28px; margin-bottom:20px;
    border-bottom:1px solid var(--rule-dark);
  }
.footer-logo{
    font-family:'Space Grotesk', sans-serif;
    font-weight:600; font-size:1.15rem; color:#fff;
    display:flex; align-items:center; gap:8px;
  }
.footer-logo .logo-mark{
    width:24px; height:24px; border:1.5px solid var(--brass-light);
    color:var(--brass-light);
    border-radius:3px; display:flex; align-items:center; justify-content:center;
    font-family:'IBM Plex Mono', monospace; font-size:0.6rem; font-weight:600;
  }
.footer-social{display:flex; gap:12px;}
.footer-social a{
    width:34px; height:34px; border-radius:50%;
    background:var(--ink-soft); border:1px solid var(--rule-dark);
    display:flex; align-items:center; justify-content:center;
    color:#c9d0bd; text-decoration:none; font-size:0.85rem;
  }
.footer-bottom-row{
    display:flex; justify-content:space-between; flex-wrap:wrap; gap:10px;
    font-size:0.78rem; color:#8a9178;
  }
.footer-bottom-row .disclaimer{color:var(--brass-light);}
@media (max-width:1000px){.footer-grid{grid-template-columns:repeat(2, 1fr);}}
@media (max-width:560px){.footer-grid{grid-template-columns:1fr;}.footer-bottom-top{flex-direction:column; align-items:flex-start; gap:16px;}}
.skip-link{position:absolute;left:-9999px;top:0;z-index:200;background:var(--ink);color:var(--paper);
  padding:12px 20px;font-family:'IBM Plex Mono',monospace;font-size:0.8rem;letter-spacing:0.08em;
  text-transform:uppercase;text-decoration:none;}
.skip-link:focus{left:0;}
.brand-lockup{display:block;height:30px;width:auto;}
.logo,.footer-logo{gap:0 !important;}
.footer-logo .brand-lockup{height:28px;}
@media(max-width:520px){.logo .brand-lockup{height:25px;}}
footer.site-footer{display:block;border-top:0;font-size:1rem;color:#c9d0bd;}
.site-footer .footer-grid,
.site-footer .footer-bottom-top,
.site-footer .footer-bottom-row{width:100%;}
nav.vx-nav{
  position:sticky; top:0; z-index:80;
  background:rgba(246,247,241,0.96); backdrop-filter:blur(10px);
  border-bottom:1px solid var(--rule);
  display:flex; align-items:center; justify-content:space-between;
  gap:24px; padding:14px 5vw;
}
.vx-brand{display:flex; align-items:center; text-decoration:none; flex:0 0 auto;}
.vx-right{display:flex; align-items:center; gap:14px; flex:0 0 auto;}
.vx-si{position:relative;}
.vx-si-btn{background:none;border:1px solid var(--rule);color:var(--ink);font:inherit;
  font-size:.86rem;font-weight:600;padding:9px 15px;border-radius:2px;cursor:pointer;
  white-space:nowrap;display:inline-flex;align-items:center;gap:6px;}
.vx-si-btn:hover{border-color:var(--ink);}
.vx-si-btn svg{width:11px;height:11px;transition:transform .18s;}
.vx-si.open .vx-si-btn svg{transform:rotate(180deg);}
.vx-si-pop{position:absolute;top:calc(100% + 8px);right:0;min-width:250px;background:#fff;
  border:1px solid var(--rule);box-shadow:0 12px 34px rgba(16,22,13,.13);padding:7px;
  opacity:0;visibility:hidden;transform:translateY(-6px);transition:.16s;z-index:80;}
.vx-si.open .vx-si-pop{opacity:1;visibility:visible;transform:translateY(0);}
.vx-si-pop a{display:block;padding:11px 13px;text-decoration:none;color:var(--ink);
  border-radius:2px;}
.vx-si-pop a:hover{background:var(--dim);}
.vx-si-pop b{display:block;font-size:.92rem;font-weight:600;}
.vx-si-pop em{display:block;font-style:normal;font-size:.79rem;color:#5F6570;margin-top:2px;
  line-height:1.45;}
.vx-si-sep{border-top:1px solid var(--rule);margin:6px 4px;}
@media(max-width:900px){.vx-si{display:none;}}
.vx-apply{
  background:var(--ink); color:var(--paper); text-decoration:none;
  padding:10px 18px; font-size:.86rem; font-weight:600; border-radius:2px; white-space:nowrap;
}
.vx-apply:hover{background:#000;}
.vx-menu{display:flex; align-items:center; gap:4px; flex:1 1 auto; justify-content:center;}
.vx-item{position:static;}
.vx-top{
  background:none; border:0; cursor:pointer; font-family:inherit;
  font-size:.93rem; font-weight:500; color:var(--charcoal);
  padding:10px 13px; display:inline-flex; align-items:center; gap:7px; white-space:nowrap;
}
.vx-top:hover{color:var(--ink);}
.vx-caret{width:7px; height:7px; border-right:1.6px solid currentColor;
  border-bottom:1.6px solid currentColor; transform:rotate(45deg) translate(-2px,-2px);
  transition:transform .18s ease; opacity:.6;}
.vx-item.open .vx-caret{transform:rotate(-135deg) translate(-2px,-2px);}
.vx-item.open .vx-top{color:var(--money);}
.vx-panel{
  position:absolute; left:0; right:0; top:100%;
  background:var(--paper); border-top:1px solid var(--rule);
  border-bottom:1px solid var(--rule);
  box-shadow:0 24px 40px -24px rgba(16,22,13,.28);
  opacity:0; visibility:hidden; transform:translateY(-6px);
  transition:opacity .16s ease, transform .16s ease, visibility .16s;
}
.vx-item.open .vx-panel{opacity:1; visibility:visible; transform:none;}
.vx-panel-in{
  max-width:1240px; margin:0 auto; padding:34px 5vw 38px;
  display:grid; grid-template-columns:1fr 280px; gap:44px; align-items:start;
}
.vx-cols{display:grid; grid-template-columns:repeat(auto-fit,minmax(240px,1fr)); gap:34px;}
.vx-panel-wide .vx-cols{grid-template-columns:2fr 1fr;}
.vx-coltitle{
  font-family:'IBM Plex Mono',monospace; font-size:.68rem; letter-spacing:.13em;
  text-transform:uppercase; color:var(--money); margin-bottom:14px;
  padding-bottom:10px; border-bottom:1px solid var(--rule);
}
.vx-links{display:flex; flex-direction:column; gap:2px;}
.vx-links-2{display:grid; grid-template-columns:1fr 1fr; gap:2px 18px;}
.vx-links a{
  display:flex; gap:12px; align-items:flex-start; text-decoration:none;
  padding:9px 10px; margin-left:-10px; border-radius:3px; transition:background .14s;
}
.vx-links a:hover{background:var(--paper-dim);}
.vx-ic{
  flex:0 0 auto; width:30px; height:30px; border:1px solid var(--rule);
  display:flex; align-items:center; justify-content:center; color:var(--money);
  background:#fff; border-radius:3px;
}
.vx-ic svg{width:16px; height:16px;}
.vx-links a:hover .vx-ic{border-color:var(--money); background:var(--brass); color:var(--ink);}
.vx-t{display:block; min-width:0;}
.vx-t b{
  display:block; font-family:'Space Grotesk',sans-serif; font-size:.92rem;
  font-weight:600; color:var(--ink); line-height:1.3;
}
.vx-t em{display:block; font-style:normal; font-size:.8rem; color:#6b7280; margin-top:2px;}
.vx-promo{background:var(--ink); color:var(--paper); padding:26px 24px;}
.vx-promo-h{
  font-family:'Space Grotesk',sans-serif; font-size:1.02rem; font-weight:600;
  color:var(--paper); margin-bottom:9px; line-height:1.25;
}
.vx-promo p{font-size:.86rem; color:rgba(246,247,241,.66); line-height:1.5;}
.vx-promo a{
  display:inline-block; margin-top:16px; color:var(--brass);
  font-size:.85rem; font-weight:600; text-decoration:none;
}
.vx-promo a:hover{text-decoration:underline;}
.vx-burger{display:none; background:none; border:0; cursor:pointer; padding:8px 6px;
  flex-direction:column; gap:5px; width:38px;}
.vx-burger span{display:block; height:2px; width:24px; background:var(--ink);
  transition:transform .2s ease, opacity .2s ease;}
.vx-burger[aria-expanded="true"] span:nth-child(1){transform:translateY(7px) rotate(45deg);}
.vx-burger[aria-expanded="true"] span:nth-child(2){opacity:0;}
.vx-burger[aria-expanded="true"] span:nth-child(3){transform:translateY(-7px) rotate(-45deg);}
.vx-apply-m{display:none;}
@media (max-width:1080px){.vx-top{font-size:.88rem; padding:10px 9px;}.vx-panel-in{grid-template-columns:1fr; gap:28px;}.vx-promo{display:none;}}
@media (max-width:920px){nav.vx-nav{padding:12px 5vw; backdrop-filter:none; background:var(--paper);}.vx-burger{display:flex;}.vx-apply{display:none;}.vx-menu{
    position:fixed; left:0; right:0; top:var(--vx-navh,64px); bottom:0;
    display:block; background:var(--paper);
    overflow-y:auto; -webkit-overflow-scrolling:touch;
    padding:0 0 40px; z-index:90;
    transform:translateX(100%); transition:transform .24s ease;
    visibility:hidden;
  }body.vx-open .vx-menu{transform:none; visibility:visible;}.vx-item{border-bottom:1px solid var(--rule);}.vx-top{
    width:100%; justify-content:space-between; padding:18px 6vw;
    font-size:1.02rem; font-weight:600; color:var(--ink);
  }.vx-caret{opacity:.45;}.vx-panel{
    position:static; opacity:1; visibility:visible; transform:none;
    border:0; box-shadow:none; background:var(--paper-dim);
    display:none;
  }.vx-item.open .vx-panel{display:block;}.vx-panel-in{display:block; padding:6px 6vw 22px; max-width:none;}.vx-cols,.vx-panel-wide .vx-cols{display:block;}.vx-col{margin-top:16px;}.vx-coltitle{margin-bottom:8px;}.vx-links,.vx-links-2{display:block;}.vx-links a{padding:12px 0; margin:0; border-bottom:1px solid rgba(219,222,208,.7);}.vx-links a:last-child{border-bottom:0;}.vx-links a:hover{background:none;}.vx-t em{font-size:.82rem;}.vx-apply-m{
    display:block; margin:22px 6vw 0; padding:15px 20px; text-align:center;
    background:var(--ink); color:var(--paper); text-decoration:none;
    font-weight:600; font-size:.95rem;
  }.vx-apply-m2{background:none; color:var(--ink); border:1px solid var(--ink); margin-top:10px;}}
@media (max-width:920px) and (prefers-reduced-motion:reduce){.vx-menu{transition:none;}}
/* footer alignment — explicit, beats any cached/global rule */
footer.site-footer ul{list-style:none!important;margin:0!important;padding:0!important}
footer.site-footer li{margin:0 0 9px!important;padding:0!important}
footer.site-footer .footer-group h3{margin:0 0 14px!important;padding:0!important}
footer.site-footer .footer-grid{align-items:start}
@media (min-width:561px) and (max-width:1100px){footer.site-footer .footer-grid{grid-template-columns:repeat(3,1fr)!important}}
