:root{--paper:#f5f0e4;--sheet:#fffdf6;--ink:#1d2a26;--spruce:#1f3d34;--spruce-d:#142822;--apple:#c8372d;--gold:#b88a2e;--rule:#cfd9c8;--margin:#e7a39b}
html{scroll-behavior:smooth;scroll-padding-top:120px}
body{font-family:'IBM Plex Sans',system-ui,sans-serif;background:var(--paper);color:var(--ink);font-size:1.05rem;line-height:1.65}
h1,h2,h3,h4,.display{font-family:'Rokkitt',Georgia,serif;font-weight:800;line-height:1.05;color:var(--spruce)}
.mono{font-family:'IBM Plex Mono',monospace}
.eyebrow{font-family:'IBM Plex Mono',monospace;text-transform:uppercase;letter-spacing:.14em;font-size:.78rem;font-weight:500;color:var(--apple)}
a{color:var(--spruce)}
/* nav */
.topbar{background:var(--spruce-d);color:#e9efe6;font-size:.9rem}
.topbar a{color:#fff;text-decoration:none;font-weight:600}
.site-nav{background:var(--sheet);border-bottom:3px double var(--spruce);padding:.6rem 0}
.brand-wrap{display:flex;flex-direction:column;align-items:center;text-decoration:none}
.logo-chip{background:var(--spruce-d);border-radius:.4rem;padding:.3rem .7rem;line-height:0}
.logo-chip img{height:48px;width:auto}
.brand-name{font-family:'Rokkitt',serif;font-weight:800;font-size:1.35rem;color:var(--spruce);margin-top:.2rem;letter-spacing:.01em}
.site-nav .nav-link{font-family:'IBM Plex Mono',monospace;font-size:.82rem;text-transform:uppercase;letter-spacing:.08em;color:var(--ink);font-weight:500}
.site-nav .nav-link:hover{color:var(--apple)}
.nav-cta{background:var(--apple);color:#fff!important;border-radius:.3rem;padding:.4rem .9rem!important}
/* ledger paper */
.ledger{background-color:var(--sheet);background-image:linear-gradient(to right,transparent 74px,var(--margin) 74px,var(--margin) 76px,transparent 76px),repeating-linear-gradient(to bottom,transparent 0,transparent 35px,var(--rule) 35px,var(--rule) 36px)}
.hero{padding:5rem 0 4.5rem}
.hero h1{font-size:clamp(2.8rem,7vw,5.6rem);max-width:15ch}
.hero h1 em{font-style:normal;color:var(--apple)}
.hero .lead{max-width:40rem;font-size:1.2rem}
.btn-apple{background:var(--apple);color:#fff;font-weight:600;border-radius:.3rem;padding:.8rem 1.5rem;border:2px solid var(--apple)}
.btn-apple:hover{background:#a82b22;color:#fff}
.btn-ghost{border:2px solid var(--spruce);color:var(--spruce);font-weight:600;border-radius:.3rem;padding:.8rem 1.5rem}
.btn-ghost:hover{background:var(--spruce);color:#fff}
.timesheet{background:var(--paper);border:2px solid var(--spruce);border-radius:.3rem;padding:1.2rem 1.4rem;box-shadow:8px 8px 0 var(--spruce);font-family:'IBM Plex Mono',monospace;font-size:.95rem}
.timesheet .row-l{display:flex;justify-content:space-between;border-bottom:1px dotted var(--spruce);padding:.35rem 0}
.timesheet .row-l:last-child{border:0;font-weight:600;color:var(--apple)}
.timesheet h3{font-size:1.2rem;font-family:'Rokkitt',serif}
.stamp-seal{display:inline-grid;place-items:center;width:112px;height:112px;border:3px solid var(--apple);border-radius:50%;color:var(--apple);font-family:'Rokkitt',serif;font-weight:800;text-align:center;line-height:1;transform:rotate(-9deg);font-size:1rem;text-transform:uppercase}
.stamp-seal b{display:block;font-size:2.1rem}
/* sections */
section{padding:5rem 0}
.band-dark{background:var(--spruce);color:#eef3ea}
.band-dark h2,.band-dark h3{color:#fff}
.band-dark .eyebrow{color:#f3b3ab}
.band-dark a{color:#fff}
.sec-title{font-size:clamp(2.1rem,4.5vw,3.4rem)}
.ix-group{border-top:3px solid var(--spruce);padding-top:1rem;height:100%}
.ix-group h3{font-size:1.9rem}
.ix{list-style:none;padding:0;margin:.8rem 0 0}
.ix li{display:flex;align-items:baseline;gap:.5rem;padding:.28rem 0}
.ix li::after{content:"";order:2;flex:1;border-bottom:1px dotted #8aa08f;min-width:1rem}
.ix li span{order:1}
.ix li i{order:3;font-style:normal;font-family:'IBM Plex Mono',monospace;font-size:.75rem;color:var(--apple)}
.pillgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:.7rem}
.pillgrid a,.pillgrid div{background:var(--sheet);border:1px solid var(--spruce);border-left:6px solid var(--apple);padding:.7rem .9rem;border-radius:.2rem;text-decoration:none;font-weight:600;color:var(--spruce)}
.pillgrid a:hover{background:var(--spruce);color:#fff}
.tax-card{background:var(--sheet);border:2px solid var(--spruce);padding:1.4rem;border-radius:.3rem}
.tax-card h3{font-size:1.5rem}
.pay-card{background:var(--paper);color:var(--ink);border-radius:.3rem;padding:1.6rem;height:100%;border-top:6px solid var(--apple)}
.pay-card h3{color:var(--spruce)}
.pay-card a.btn{margin-top:.6rem}
.pull{background:var(--apple);color:#fff;padding:3.2rem 0;text-align:center}
.pull p{font-family:'Rokkitt',serif;font-weight:800;font-size:clamp(1.6rem,3.6vw,2.7rem);line-height:1.1;margin:0 auto;max-width:48rem}
.fact{font-family:'Rokkitt',serif;font-weight:800;font-size:3.2rem;color:var(--spruce);line-height:1}
.facts div{border-left:4px solid var(--apple);padding-left:1rem}
.contact-card{background:var(--sheet);border:2px solid var(--spruce);padding:1.8rem;border-radius:.3rem}
.contact-card dt{font-family:'IBM Plex Mono',monospace;font-size:.75rem;text-transform:uppercase;letter-spacing:.1em;color:var(--apple);margin-top:.9rem}
.contact-card dd{margin:0;font-size:1.1rem}
iframe.map{border:2px solid var(--spruce);width:100%;height:100%;min-height:380px;border-radius:.3rem}
footer{background:var(--spruce-d);color:#cfdacb;padding:2.5rem 0 5rem;font-size:.95rem}
footer a{color:#fff}
.footer-chip{display:inline-block;background:#0b1713;border-radius:.4rem;padding:.4rem .8rem;line-height:0}
.footer-chip img{height:44px;width:auto}
@media(max-width:991px){.ledger{background-image:repeating-linear-gradient(to bottom,transparent 0,transparent 35px,var(--rule) 35px,var(--rule) 36px)}.hero{padding:3rem 0}section{padding:3.5rem 0}.site-nav .nav-link{padding:.6rem 0}}
