/* =========================================================
   LnI Multiservices LLC — brand design system
   Palette from the official logo: black + lime + forest green.
   ========================================================= */
:root{
  --black:#0B0F0B; --ink:#111811; --panel:#16201A; --panel-2:#1D2A20;
  --lime:#4CC417; --lime-bright:#5FE01E; --forest:#0B6B0F; --forest-2:#0E7A12;
  --paper:#F5F7F3; --surface:#FFFFFF; --line:#E1E6DD; --line-dark:#26362A;
  --text:#14201A; --text-soft:#38493E; --muted:#6A7A70; --muted-dark:#93A79A;
  --font-display:'Fraunces',Georgia,serif; --font-body:'Inter',-apple-system,BlinkMacSystemFont,sans-serif;
  --font-mono:'IBM Plex Mono',ui-monospace,monospace; --container:1140px;
}
*,*::before,*::after{box-sizing:border-box;}
html{scroll-behavior:smooth;}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto;}*{animation-duration:.01ms!important;transition-duration:.01ms!important;}}
body{margin:0;font-family:var(--font-body);color:var(--text);background:var(--paper);line-height:1.62;font-size:17px;}
img{max-width:100%;display:block;}
a{color:var(--forest-2);text-decoration-thickness:1.5px;text-underline-offset:3px;}
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid var(--lime);outline-offset:2px;}
h1,h2,h3,h4{font-family:var(--font-display);font-weight:600;line-height:1.14;margin:0 0 .5em;color:var(--ink);}
h1{font-size:clamp(2.1rem,4vw,3.3rem);font-weight:500;letter-spacing:-.01em;}
h2{font-size:clamp(1.6rem,3vw,2.3rem);}
h3{font-size:1.22rem;}
p{margin:0 0 1em;color:var(--text-soft);}
.container{max-width:var(--container);margin:0 auto;padding:0 24px;}
.eyebrow{font-family:var(--font-mono);font-size:.78rem;letter-spacing:.09em;text-transform:uppercase;color:var(--forest-2);display:inline-block;margin-bottom:.75em;}
/* header */
header.site{position:sticky;top:0;z-index:50;background:var(--black);border-bottom:1px solid var(--line-dark);}
.nav-row{display:flex;align-items:center;justify-content:space-between;padding:12px 0;}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:#fff;}
.brand img{height:46px;width:auto;border-radius:8px;background:#fff;padding:3px;}
.brand .brand-text{font-family:var(--font-display);font-weight:600;font-size:1.1rem;line-height:1.1;}
.brand .brand-text small{display:block;font-family:var(--font-mono);font-size:.62rem;letter-spacing:.12em;color:var(--lime);text-transform:uppercase;font-weight:500;margin-top:2px;}
nav.links{display:flex;gap:22px;align-items:center;}
nav.links a{color:#D4E0D6;font-size:.92rem;text-decoration:none;}
nav.links a:hover{color:var(--lime-bright);}
.lang-switch{display:flex;gap:6px;}
.lang-switch a{font-family:var(--font-mono);font-size:.78rem;padding:4px 8px;border:1px solid var(--line-dark);border-radius:4px;color:#D4E0D6;}
.lang-switch a[aria-current="page"]{background:var(--lime);color:var(--black);border-color:var(--lime);font-weight:600;}
.nav-toggle{display:none;background:none;border:1px solid var(--line-dark);border-radius:6px;padding:8px 10px;font-family:var(--font-mono);color:#fff;}
@media (max-width:860px){nav.links{position:absolute;top:100%;left:0;right:0;flex-direction:column;align-items:flex-start;gap:4px;background:var(--ink);border-bottom:1px solid var(--line-dark);padding:12px 24px 20px;display:none;}nav.links.open{display:flex;}.nav-toggle{display:inline-block;}}
/* node chain */
.node-chain{display:flex;align-items:center;gap:0;margin:2.4rem 0 .5rem;overflow-x:auto;padding-bottom:6px;}
.node{display:flex;flex-direction:column;align-items:center;min-width:92px;flex-shrink:0;}
.node .dot{width:46px;height:46px;border-radius:50%;background:var(--surface);border:2px solid var(--forest);display:flex;align-items:center;justify-content:center;font-family:var(--font-mono);font-size:.8rem;color:var(--forest-2);font-weight:600;}
.node.active .dot{background:linear-gradient(135deg,var(--lime),var(--forest));color:#fff;border-color:var(--forest);}
.node .label{margin-top:8px;font-size:.76rem;text-align:center;color:var(--muted);max-width:96px;}
.chain-link{flex:1;min-width:16px;height:2px;background:linear-gradient(90deg,var(--forest),var(--lime));margin-top:-22px;opacity:.5;}
/* hero */
.hero{padding:78px 0 44px;position:relative;}
.hero.dark{background:radial-gradient(1200px 400px at 20% -10%,rgba(76,196,23,.16),transparent 60%),var(--black);color:#EAF0EA;}
.hero.dark h1{color:#fff;}
.hero.dark p{color:#C4D2C6;}
.hero.dark .eyebrow{color:var(--lime-bright);}
.hero .lede{font-size:1.16rem;max-width:660px;}
.hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:1.6rem;}
.hero.dark .node .label{color:#9DB3A2;}
.hero.dark .node .dot{background:var(--panel);border-color:var(--lime);}
.hero.dark .node.active .dot{background:linear-gradient(135deg,var(--lime),var(--forest));}
.btn{display:inline-flex;align-items:center;gap:8px;padding:13px 24px;border-radius:7px;font-weight:600;font-size:.95rem;text-decoration:none;border:1.5px solid transparent;cursor:pointer;}
.btn-primary{background:var(--lime);color:var(--black);}
.btn-primary:hover{background:var(--lime-bright);}
.btn-ghost{border-color:#fff;color:#fff;}
.btn-ghost:hover{background:#fff;color:var(--black);}
.on-light .btn-ghost{border-color:var(--ink);color:var(--ink);}
.on-light .btn-ghost:hover{background:var(--ink);color:#fff;}
/* sections */
section{padding:58px 0;}
section.alt{background:var(--surface);border-top:1px solid var(--line);border-bottom:1px solid var(--line);}
.grid-6{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:20px;}
.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:42px;}
@media (max-width:820px){.grid-2{grid-template-columns:1fr;}}
.card{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:26px 24px;height:100%;position:relative;transition:border-color .15s,transform .15s;}
.card:hover{border-color:var(--lime);transform:translateY(-2px);}
.card .code{font-family:var(--font-mono);font-size:.76rem;color:var(--forest-2);font-weight:600;letter-spacing:.05em;}
.card h3{margin-top:6px;}
.card ul{padding-left:1.1em;color:var(--text-soft);}
.card a.card-link{font-size:.9rem;font-weight:600;color:var(--forest-2);}
.proof{border-left:3px solid var(--lime);padding:10px 0 10px 20px;margin:20px 0;color:var(--text-soft);font-style:italic;background:linear-gradient(90deg,rgba(76,196,23,.05),transparent);}
.local-block{display:flex;gap:28px;flex-wrap:wrap;align-items:flex-start;}
.local-block .fact{font-size:.98rem;color:var(--text-soft);line-height:2;}
.cta-band{background:linear-gradient(120deg,var(--forest),var(--lime));color:#fff;text-align:center;}
.cta-band h2{color:#fff;}
.cta-band p{color:rgba(255,255,255,.9);}
.cta-band .btn-primary{background:#fff;color:var(--forest-2);}
.cta-band .btn-primary:hover{background:var(--black);color:#fff;}
.breadcrumb{font-family:var(--font-mono);font-size:.78rem;color:var(--muted);margin-bottom:1.2em;}
.breadcrumb a{color:var(--muted);}
/* footer */
footer.site{background:var(--black);color:#C9D6CB;padding:50px 0 26px;}
footer.site a{color:#BFE0C2;}
footer.site .foot-brand{display:flex;align-items:center;gap:12px;margin-bottom:22px;}
footer.site .foot-brand img{height:44px;background:#fff;border-radius:8px;padding:3px;}
footer.site .foot-brand span{font-family:var(--font-display);font-size:1.05rem;color:#fff;}
footer.site .cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:24px;margin-bottom:28px;}
footer.site h4{color:var(--lime);font-family:var(--font-body);font-size:.8rem;text-transform:uppercase;letter-spacing:.07em;}
footer.site .fine{font-size:.8rem;border-top:1px solid var(--line-dark);padding-top:18px;color:#7E9484;}
footer.site .tagline{font-family:var(--font-mono);font-size:.72rem;letter-spacing:.14em;color:var(--lime);text-transform:uppercase;}
