
:root{
  --ink:#16243D;
  --ink-soft:#2B3A56;
  --paper:#EDEEE6;
  --paper-raised:#F6F6F0;
  --brass:#AD7E2C;
  --brass-light:#C99A45;
  --stamp-green:#2F5D50;
  --stamp-green-light:#3E7A69;
  --line:#D8D6C8;
  --text:#1B1B18;
  --text-soft:#565448;
  --white:#FFFFFF;
  --radius:2px;
  --serif:'Fraunces', serif;
  --sans:'Public Sans', sans-serif;
  --mono:'IBM Plex Mono', monospace;
}
*{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
  font-family:var(--sans);
  background:var(--paper);
  color:var(--text);
  line-height:1.55;
  -webkit-font-smoothing:antialiased;
}
img{max-width:100%;display:block;}
a{color:inherit;text-decoration:none;}
.container{max-width:1180px;margin:0 auto;padding:0 32px;}
.eyebrow{
  font-family:var(--mono);
  font-size:12px;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:var(--brass);
  display:flex;
  align-items:center;
  gap:10px;
  margin-bottom:14px;
}
.eyebrow::before{content:"";width:22px;height:1px;background:var(--brass);display:inline-block;}
h1,h2,h3,h4{font-family:var(--serif);font-weight:600;color:var(--ink);letter-spacing:-.01em;}
h2{font-size:clamp(30px,4vw,44px);line-height:1.08;}
h3{font-size:22px;}
.lede{font-size:18px;color:var(--text-soft);max-width:640px;}
.mono-num{font-family:var(--mono);font-variant-numeric:tabular-nums;}

/* Ledger rule divider - signature motif */
.ledger-rule{width:100%;height:6px;position:relative;margin:0;}
.ledger-rule::before,.ledger-rule::after{
  content:"";position:absolute;left:0;right:0;height:1px;background:var(--line);
}
.ledger-rule::before{top:0;}
.ledger-rule::after{top:5px;}

/* Header */
header{
  position:sticky;top:0;z-index:100;
  background:rgba(237,238,230,.92);
  backdrop-filter:blur(8px);
  border-bottom:1px solid var(--line);
}
.nav-wrap{display:flex;align-items:center;justify-content:space-between;padding:18px 32px;max-width:1180px;margin:0 auto;}
.logo{display:flex;align-items:center;gap:10px;font-family:var(--serif);font-weight:700;font-size:21px;color:var(--ink);}
.logo .mark{
  width:30px;height:30px;border:1.5px solid var(--ink);border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  font-family:var(--mono);font-size:12px;font-weight:600;color:var(--brass);
}
nav ul{list-style:none;display:flex;gap:34px;}
nav a{font-size:14.5px;font-weight:500;color:var(--ink-soft);}
nav a:hover{color:var(--brass);}
.nav-actions{display:flex;align-items:center;gap:18px;}
.region-pills{display:flex;gap:6px;font-family:var(--mono);font-size:11px;}
.region-pills span{border:1px solid var(--line);padding:3px 7px;border-radius:2px;color:var(--text-soft);}
.btn{
  display:inline-flex;align-items:center;gap:8px;
  padding:12px 22px;font-size:14px;font-weight:600;
  border-radius:2px;border:1px solid transparent;cursor:pointer;
  font-family:var(--sans);
  transition:all .18s ease;
}
.btn-primary{background:var(--ink);color:var(--paper-raised);}
.btn-primary:hover{background:var(--stamp-green);}
.btn-outline{border:1px solid var(--ink);color:var(--ink);background:transparent;}
.btn-outline:hover{background:var(--ink);color:var(--paper-raised);}
.menu-toggle{display:none;background:none;border:none;font-size:24px;color:var(--ink);cursor:pointer;}

/* Hero */
.hero{padding:90px 0 60px;}
.hero-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:60px;align-items:center;}
.hero h1{font-size:clamp(36px,5vw,58px);line-height:1.04;margin-bottom:22px;}
.hero h1 em{font-style:italic;color:var(--brass);}
.hero .lede{margin-bottom:32px;}
.hero-ctas{display:flex;gap:16px;align-items:center;margin-bottom:40px;flex-wrap:wrap;}
.hero-note{font-family:var(--mono);font-size:12.5px;color:var(--text-soft);}
.trust-strip{display:flex;gap:38px;flex-wrap:wrap;padding-top:26px;border-top:1px solid var(--line);}
.trust-strip div{display:flex;flex-direction:column;}
.trust-strip .num{font-family:var(--mono);font-size:26px;font-weight:600;color:var(--ink);}
.trust-strip .lbl{font-size:12.5px;color:var(--text-soft);}

/* Ledger visual - signature */
.ledger-card{
  background:var(--paper-raised);
  border:1px solid var(--line);
  border-radius:4px;
  padding:28px;
  box-shadow:0 30px 60px -30px rgba(22,36,61,.25);
}
.ledger-card .lc-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px;padding-bottom:14px;border-bottom:1px dashed var(--line);}
.lc-head span{font-family:var(--mono);font-size:11.5px;text-transform:uppercase;letter-spacing:.08em;color:var(--text-soft);}
.lc-cols{display:grid;grid-template-columns:1fr 1fr;gap:0;}
.lc-col{padding:0 16px;}
.lc-col:first-child{border-right:1px dashed var(--line);}
.lc-col-title{font-family:var(--mono);font-size:11px;color:var(--brass);text-transform:uppercase;letter-spacing:.1em;margin-bottom:10px;}
.lc-row{display:flex;justify-content:space-between;padding:7px 0;font-family:var(--mono);font-size:13.5px;color:var(--ink-soft);border-bottom:1px solid #E5E4D8;opacity:0;transform:translateY(6px);animation:rowIn .5s ease forwards;}
.lc-row .amt{font-weight:500;}
.lc-total{display:flex;justify-content:space-between;margin-top:14px;padding-top:14px;border-top:1px solid var(--line);font-family:var(--mono);font-weight:600;font-size:15px;color:var(--ink);}
.stamp{
  margin-top:20px;padding:14px;border:2px solid var(--stamp-green);border-radius:4px;
  color:var(--stamp-green);text-align:center;font-family:var(--mono);letter-spacing:.14em;font-size:13px;font-weight:600;
  transform:rotate(-2deg);opacity:0;animation:stampIn .4s ease .9s forwards;
}
@keyframes rowIn{to{opacity:1;transform:translateY(0);}}
@keyframes stampIn{from{opacity:0;transform:rotate(-2deg) scale(1.3);}to{opacity:1;transform:rotate(-2deg) scale(1);}}
.lc-row:nth-child(1){animation-delay:.1s}.lc-row:nth-child(2){animation-delay:.25s}.lc-row:nth-child(3){animation-delay:.4s}.lc-row:nth-child(4){animation-delay:.55s}

/* Sections generic */
section{padding:86px 0;}
.section-head{max-width:640px;margin-bottom:52px;}
.tag-strip{background:var(--ink);color:var(--paper);padding:16px 0;}
.tag-strip .container{display:flex;gap:46px;flex-wrap:wrap;justify-content:space-between;align-items:center;}
.tag-strip span{font-family:var(--mono);font-size:13px;letter-spacing:.05em;color:#C7CBD8;}
.tag-strip strong{color:var(--brass-light);}

/* Trust badges */
.trust-badges{background:var(--paper-raised);border-bottom:1px solid var(--line);padding:20px 0;}
.tb-row{display:flex;justify-content:space-between;flex-wrap:wrap;gap:20px;}
.tb-item{display:flex;flex-direction:column;font-family:var(--mono);font-size:12.5px;color:var(--ink-soft);gap:2px;}
.tb-item .tb-icon{color:var(--brass);font-size:10px;margin-bottom:2px;}
.tb-item small{color:var(--text-soft);font-size:11px;}

/* Team section */
.team-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:30px;}
.team-card{text-align:center;}
.avatar{
  width:88px;height:88px;border-radius:50%;margin:0 auto 16px;
  display:flex;align-items:center;justify-content:center;
  font-family:var(--serif);font-size:26px;font-weight:600;color:#fff;
  border:2px solid var(--paper);box-shadow:0 0 0 1px var(--line);
}
.team-card h4{font-size:15.5px;margin-bottom:3px;}
.team-card .role{font-family:var(--mono);font-size:11.5px;color:var(--brass);text-transform:uppercase;letter-spacing:.05em;margin-bottom:6px;}
.team-card p{font-size:12.5px;color:var(--text-soft);}
.team-note{font-size:13px;color:var(--text-soft);margin-top:36px;text-align:center;font-style:italic;}

/* Global delivery / map section */
.map-band{background:var(--ink);color:#DCE0EB;}
.map-band .eyebrow{color:var(--brass-light);}
.map-band h2{color:#fff;}
.map-band .lede{color:#AEB4C6;}
.map-grid{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center;}
.office-list{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:24px;}
.office-card{border:1px solid rgba(255,255,255,.15);border-radius:4px;padding:16px 18px;}
.office-card .oc-tag{font-family:var(--mono);font-size:10.5px;color:var(--brass-light);letter-spacing:.08em;}
.office-card h4{color:#fff;font-size:15px;margin-top:6px;font-family:var(--serif);}
.office-card p{font-size:12px;color:#9AA2B8;margin-top:4px;}
.world-svg{width:100%;height:auto;}
.world-svg .pin{fill:var(--brass-light);}
.world-svg .pin-pulse{fill:none;stroke:var(--brass-light);stroke-width:1;opacity:.5;}

/* Case studies */
.case-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;}
.case-card{background:var(--paper-raised);border:1px solid var(--line);border-radius:4px;padding:30px;}
.case-tag{font-family:var(--mono);font-size:11px;color:var(--brass);text-transform:uppercase;letter-spacing:.08em;margin-bottom:14px;}
.case-stat{font-family:var(--mono);font-size:34px;color:var(--ink);font-weight:600;margin-bottom:6px;}
.case-card h4{font-size:16px;margin-bottom:10px;}
.case-card p{font-size:13.5px;color:var(--text-soft);margin-bottom:16px;}
.case-card a{font-family:var(--mono);font-size:12px;color:var(--ink);border-bottom:1px solid var(--ink);padding-bottom:2px;}
.case-card a:hover{color:var(--brass);border-color:var(--brass);}

/* White-label CPA band */
.wl-band{background:var(--paper-raised);border-top:1px solid var(--line);border-bottom:1px solid var(--line);}
.wl-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center;}
.wl-list{list-style:none;margin-top:22px;}
.wl-list li{display:flex;gap:12px;padding:12px 0;border-bottom:1px solid var(--line);font-size:14.5px;color:var(--ink-soft);}
.wl-list li::before{content:"✓";color:var(--stamp-green);font-weight:700;}
.wl-card{background:#fff;border:1px solid var(--line);border-radius:4px;padding:30px;}
.wl-card .lc-head{margin-bottom:16px;}

/* Security section */
.security-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:26px;}
.sec-item{border-top:2px solid var(--brass);padding-top:16px;}
.sec-item h4{font-size:15.5px;margin-bottom:8px;}
.sec-item p{font-size:13.5px;color:var(--text-soft);}
.checklist-box{background:var(--paper-raised);border:1px solid var(--line);border-radius:4px;padding:34px;margin-top:40px;}
.checklist-box h4{font-family:var(--serif);font-size:18px;margin-bottom:18px;color:var(--ink);}
.checklist-cols{display:grid;grid-template-columns:1fr 1fr;gap:30px;}
.checklist-cols h5{font-family:var(--mono);font-size:12px;letter-spacing:.06em;text-transform:uppercase;margin-bottom:12px;}
.checklist-cols.good h5{color:var(--stamp-green);}
.checklist-cols.bad h5{color:#A6432F;}
.checklist-cols ul{list-style:none;}
.checklist-cols li{font-size:13.5px;color:var(--ink-soft);padding:7px 0;display:flex;gap:8px;}
.checklist-cols.good li::before{content:"✓";color:var(--stamp-green);}
.checklist-cols.bad li::before{content:"✕";color:#A6432F;}

/* Services grid */
.services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line);}
.service-card{background:var(--paper-raised);padding:34px 28px;transition:background .2s ease;}
.service-card:hover{background:#fff;}
.service-no{font-family:var(--mono);font-size:12px;color:var(--brass);margin-bottom:18px;}
.service-card h3{margin-bottom:10px;font-size:19px;}
.service-card p{color:var(--text-soft);font-size:14.5px;margin-bottom:16px;}
.service-card a{font-family:var(--mono);font-size:12.5px;color:var(--ink);border-bottom:1px solid var(--ink);padding-bottom:2px;}
.service-card a:hover{color:var(--brass);border-color:var(--brass);}

/* Why us */
.why-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:40px 36px;}
.why-item{display:flex;gap:16px;}
.why-icon{
  width:44px;height:44px;flex:none;border-radius:50%;
  border:1px solid var(--brass);color:var(--brass);
  display:flex;align-items:center;justify-content:center;font-family:var(--mono);font-size:15px;
}
.why-item h4{font-size:16.5px;margin-bottom:6px;color:var(--ink);}
.why-item p{font-size:14px;color:var(--text-soft);}

/* Process */
.process-strip{background:var(--stamp-green);color:#EDF3F0;}
.process-strip h2{color:#fff;}
.process-strip .lede{color:#CFE2DA;}
.process-list{display:grid;grid-template-columns:repeat(5,1fr);gap:24px;margin-top:50px;position:relative;}
.process-list::before{content:"";position:absolute;top:22px;left:0;right:0;height:1px;background:rgba(255,255,255,.25);}
.process-step{position:relative;}
.process-num{
  width:44px;height:44px;border-radius:50%;background:#EDF3F0;color:var(--stamp-green);
  font-family:var(--mono);font-weight:600;display:flex;align-items:center;justify-content:center;
  margin-bottom:18px;position:relative;z-index:2;font-size:14px;
}
.process-step h4{font-size:15.5px;margin-bottom:8px;color:#fff;font-family:var(--serif);}
.process-step p{font-size:13.5px;color:#CFE2DA;}

/* Software */
.software-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:14px;}
.software-badge{
  border:1px solid var(--line);background:var(--paper-raised);border-radius:2px;
  padding:22px 14px;text-align:center;font-family:var(--mono);font-size:13px;color:var(--ink-soft);
  transition:all .18s ease;
}
.software-badge:hover{border-color:var(--brass);color:var(--brass);transform:translateY(-2px);}

/* Industries */
.industries-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:1px;background:var(--line);border:1px solid var(--line);}
.industry-card{background:var(--paper-raised);padding:26px 18px;text-align:left;}
.industry-card .idx-tag{font-family:var(--mono);font-size:10.5px;color:var(--brass);letter-spacing:.08em;}
.industry-card h4{font-size:15px;margin-top:8px;color:var(--ink);font-family:var(--serif);}

/* Pricing */
.pricing-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;}
.price-card{
  background:var(--paper-raised);border:1px solid var(--line);border-radius:4px;padding:34px;
  display:flex;flex-direction:column;
}
.price-card.featured{border:1.5px solid var(--brass);position:relative;background:#fff;}
.price-card.featured::before{
  content:"MOST HIRED";position:absolute;top:-12px;left:34px;background:var(--brass);color:#fff;
  font-family:var(--mono);font-size:10.5px;letter-spacing:.08em;padding:4px 10px;border-radius:2px;
}
.price-card h3{font-size:18px;margin-bottom:6px;}
.price-rate{font-family:var(--mono);font-size:30px;color:var(--ink);margin:14px 0 4px;}
.price-rate span{font-size:13px;color:var(--text-soft);font-family:var(--sans);}
.price-sub{font-size:13px;color:var(--text-soft);margin-bottom:20px;}
.price-list{list-style:none;margin-bottom:26px;flex:1;}
.price-list li{
  font-size:13.5px;color:var(--ink-soft);padding:9px 0;border-bottom:1px solid var(--line);
  display:flex;gap:8px;
}
.price-list li::before{content:"—";color:var(--brass);}

/* Testimonials */
.testi-wrap{position:relative;overflow:hidden;}
.testi-track{display:flex;transition:transform .5s ease;}
.testi-slide{min-width:100%;padding:0 4px;}
.testi-card{
  background:var(--paper-raised);border:1px solid var(--line);border-radius:4px;
  padding:44px;max-width:760px;margin:0 auto;text-align:center;
}
.testi-card p{font-family:var(--serif);font-size:22px;line-height:1.4;color:var(--ink);margin-bottom:22px;}
.testi-name{font-family:var(--mono);font-size:13px;color:var(--brass);}
.testi-role{font-size:12.5px;color:var(--text-soft);}
.testi-dots{display:flex;justify-content:center;gap:8px;margin-top:26px;}
.testi-dots button{width:8px;height:8px;border-radius:50%;border:none;background:var(--line);cursor:pointer;}
.testi-dots button.active{background:var(--brass);}

/* CTA band */
.cta-band{background:var(--ink);color:var(--paper);}
.cta-band-grid{display:flex;justify-content:space-between;align-items:center;gap:40px;flex-wrap:wrap;}
.cta-band h2{color:#fff;font-size:30px;max-width:480px;}
.cta-band .lede{color:#B9C0D2;}

/* FAQ */
.faq-item{border-bottom:1px solid var(--line);}
.faq-q{
  display:flex;justify-content:space-between;align-items:center;padding:22px 0;cursor:pointer;
  font-family:var(--serif);font-size:17px;color:var(--ink);
}
.faq-q .plus{font-family:var(--mono);color:var(--brass);font-size:20px;transition:transform .2s ease;}
.faq-item.open .faq-q .plus{transform:rotate(45deg);}
.faq-a{max-height:0;overflow:hidden;transition:max-height .3s ease;}
.faq-a p{padding-bottom:22px;color:var(--text-soft);font-size:14.5px;max-width:640px;}

/* Contact form */
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px;}
.form-field{margin-bottom:18px;}
.form-field label{display:block;font-family:var(--mono);font-size:11.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--text-soft);margin-bottom:7px;}
.form-field input,.form-field select,.form-field textarea{
  width:100%;padding:12px 14px;border:1px solid var(--line);background:var(--paper-raised);
  font-family:var(--sans);font-size:14.5px;color:var(--text);border-radius:2px;
}
.form-field textarea{resize:vertical;min-height:100px;}
.form-field input:focus,.form-field select:focus,.form-field textarea:focus{outline:2px solid var(--brass);outline-offset:1px;}
.contact-side .info-row{display:flex;gap:16px;padding:16px 0;border-bottom:1px solid var(--line);}
.contact-side .info-row .k{font-family:var(--mono);font-size:11px;color:var(--brass);width:90px;flex:none;text-transform:uppercase;letter-spacing:.06em;padding-top:2px;}
.contact-side .info-row .v{font-size:14.5px;color:var(--ink-soft);}

/* Footer */
footer{background:var(--ink);color:#B9C0D2;padding-top:70px;}
.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:40px;padding-bottom:50px;}
.footer-grid h5{font-family:var(--mono);font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--brass-light);margin-bottom:18px;}
.footer-grid ul{list-style:none;}
.footer-grid li{margin-bottom:11px;font-size:14px;}
.footer-grid a:hover{color:#fff;}
.footer-bottom{border-top:1px solid rgba(255,255,255,.12);padding:22px 0;display:flex;justify-content:space-between;font-size:12.5px;color:#8891A6;flex-wrap:wrap;gap:10px;}
.footer-logo{font-family:var(--serif);font-size:22px;color:#fff;margin-bottom:14px;}
.footer-desc{font-size:14px;max-width:280px;margin-bottom:20px;color:#9AA2B8;}

/* reveal on scroll */
.reveal{opacity:0;transform:translateY(18px);transition:opacity .6s ease, transform .6s ease;}
.reveal.in{opacity:1;transform:translateY(0);}

@media (max-width:900px){
  nav, .region-pills, .trust-strip{display:none;}
  .menu-toggle{display:block;}
  .hero-grid,.contact-grid{grid-template-columns:1fr;}
  .services-grid,.industries-grid{grid-template-columns:repeat(2,1fr);}
  .why-grid,.software-grid,.pricing-grid,.case-grid,.security-grid{grid-template-columns:1fr 1fr;}
  .process-list{grid-template-columns:1fr 1fr;}
  .process-list::before{display:none;}
  .footer-grid{grid-template-columns:1fr 1fr;}
  .wl-grid,.checklist-cols{grid-template-columns:1fr;}
  .team-grid{grid-template-columns:1fr 1fr;}
  .map-grid{grid-template-columns:1fr;}
  .office-list{grid-template-columns:1fr;}
  .tb-row{justify-content:center;text-align:center;}
}
@media (prefers-reduced-motion:reduce){
  *{animation-duration:.001s !important;transition-duration:.001s !important;}
}

/* Logo mark (SVG icon) */
.logo{display:flex;align-items:center;gap:10px;font-family:var(--serif);font-weight:700;font-size:20px;color:var(--ink);}
.logo .mark-svg{width:34px;height:34px;flex:none;}
.logo .brand-stack{display:flex;flex-direction:column;line-height:1.1;}
.logo .tagline-mini{font-family:var(--mono);font-size:9.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--brass);font-weight:500;}

/* Mobile nav panel */
.mobile-nav{
  display:none;
  position:fixed;top:66px;left:0;right:0;bottom:0;
  background:var(--paper);z-index:99;
  padding:20px 32px;overflow-y:auto;
  transform:translateY(-8px);opacity:0;pointer-events:none;
  transition:opacity .2s ease, transform .2s ease;
}
.mobile-nav.open{opacity:1;transform:translateY(0);pointer-events:auto;}
.mobile-nav ul{list-style:none;}
.mobile-nav li{border-bottom:1px solid var(--line);}
.mobile-nav a{display:block;padding:16px 0;font-size:16px;color:var(--ink);font-weight:500;}
.mobile-nav .btn{margin-top:20px;width:100%;justify-content:center;}
@media (max-width:900px){
  .mobile-nav{display:block;}
}

/* Services page: category accordion */
.svc-cat{border:1px solid var(--line);border-radius:4px;margin-bottom:18px;background:var(--paper-raised);overflow:hidden;}
.svc-cat-head{
  display:flex;justify-content:space-between;align-items:center;
  padding:24px 28px;cursor:pointer;
}
.svc-cat-head-left{display:flex;align-items:center;gap:16px;}
.svc-cat-icon{
  width:42px;height:42px;border-radius:50%;border:1px solid var(--brass);color:var(--brass);
  display:flex;align-items:center;justify-content:center;flex:none;
}
.svc-cat-head h3{font-size:18px;margin-bottom:2px;}
.svc-cat-head p{font-size:13px;color:var(--text-soft);}
.svc-cat-head .plus{font-family:var(--mono);color:var(--brass);font-size:22px;transition:transform .2s ease;flex:none;}
.svc-cat.open .svc-cat-head .plus{transform:rotate(45deg);}
.svc-body{max-height:0;overflow:hidden;transition:max-height .35s ease;}
.svc-cat.open .svc-body{max-height:900px;}
.svc-list{display:grid;grid-template-columns:1fr 1fr;gap:4px 30px;padding:0 28px 26px;}
.svc-list li{list-style:none;font-size:14.5px;color:var(--ink-soft);padding:9px 0;border-bottom:1px dashed var(--line);display:flex;gap:10px;}
.svc-list li::before{content:"—";color:var(--brass);}
@media (max-width:700px){ .svc-list{grid-template-columns:1fr;} }

/* Services hero (sub-page hero, smaller than homepage) */
.subpage-hero{padding:60px 0 40px;border-bottom:1px solid var(--line);}
.subpage-hero .eyebrow{margin-bottom:12px;}
.subpage-hero h1{font-size:clamp(30px,4vw,46px);line-height:1.08;margin-bottom:14px;}

/* Blog grid */
.blog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;}
.blog-card{background:var(--paper-raised);border:1px solid var(--line);border-radius:4px;overflow:hidden;display:flex;flex-direction:column;}
.blog-card-top{height:6px;background:var(--brass);}
.blog-card-body{padding:26px;flex:1;display:flex;flex-direction:column;}
.blog-tag{font-family:var(--mono);font-size:10.5px;color:var(--brass);text-transform:uppercase;letter-spacing:.08em;margin-bottom:12px;}
.blog-card h3{font-size:18px;margin-bottom:10px;line-height:1.25;}
.blog-card p{font-size:14px;color:var(--text-soft);margin-bottom:18px;flex:1;}
.blog-meta{display:flex;justify-content:space-between;align-items:center;font-family:var(--mono);font-size:11.5px;color:var(--text-soft);border-top:1px solid var(--line);padding-top:14px;}
.blog-meta a{color:var(--ink);border-bottom:1px solid var(--ink);}
.blog-meta a:hover{color:var(--brass);border-color:var(--brass);}
.blog-featured{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center;background:var(--paper-raised);border:1px solid var(--line);border-radius:4px;padding:40px;margin-bottom:56px;}
.blog-featured .blog-tag{margin-bottom:16px;}
.blog-filters{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:40px;}
.blog-filters span{font-family:var(--mono);font-size:12.5px;padding:8px 16px;border:1px solid var(--line);border-radius:20px;color:var(--text-soft);cursor:pointer;}
.blog-filters span.active{background:var(--ink);color:var(--paper);border-color:var(--ink);}
@media (max-width:900px){
  .blog-grid{grid-template-columns:1fr 1fr;}
  .blog-featured{grid-template-columns:1fr;}
}
@media (max-width:600px){ .blog-grid{grid-template-columns:1fr;} }

/* Blog post page */
.post-hero{padding:56px 0 30px;}
.post-hero h1{font-size:clamp(28px,4.5vw,44px);margin:14px 0;}
.post-meta{display:flex;gap:20px;font-family:var(--mono);font-size:12.5px;color:var(--text-soft);flex-wrap:wrap;}
.post-body{max-width:760px;margin:0 auto;}
.post-body p{margin-bottom:22px;font-size:16.5px;color:var(--ink-soft);line-height:1.7;}
.post-body h2{font-size:26px;margin:40px 0 18px;}
.post-body h3{font-size:20px;margin:30px 0 14px;}
.post-body ul{margin:0 0 22px 22px;}
.post-body li{margin-bottom:10px;font-size:16px;color:var(--ink-soft);}
.post-cta{background:var(--paper-raised);border:1px solid var(--line);border-radius:4px;padding:30px;text-align:center;margin-top:50px;}
