@import url('https://fonts.googleapis.com/css2?family=Outfit:wght@500;600;700;800&family=Inter:wght@400;500;600&family=IBM+Plex+Mono:wght@500;600&display=swap');

:root{
  --teal:#2F8F7A; --teal-dark:#226F5D; --coral:#F2955E; --coral-dark:#DD7B43;
  --ink:#1F2A37; --paper:#FAF7F2; --sage:#CFE3DA; --coral-tint:#FBDFCB; --line:#E8E1D6;
}
*{box-sizing:border-box;}
body{margin:0;background:var(--paper);color:var(--ink);font-family:'Inter',sans-serif;line-height:1.55;}
h1,h2,h3,.wm{font-family:'Outfit',sans-serif;}
a{color:inherit;}
.wrap{max-width:1180px;margin:0 auto;padding:0 6vw;}
.tag{font-family:'IBM Plex Mono',monospace;font-size:11.5px;letter-spacing:.07em;text-transform:uppercase;color:var(--teal-dark);}

/* Nav */
nav{background:var(--ink);}
nav .wrap{display:flex;align-items:center;gap:32px;padding:16px 6vw;}
nav .logo{display:flex;align-items:center;gap:10px;text-decoration:none;}
nav .logo svg{width:30px;height:30px;}
nav .logo span{font-weight:800;font-size:21px;color:#fff;}
nav .links{display:flex;gap:26px;margin-left:20px;flex:1;}
nav .links a{color:#fff;opacity:.82;font-size:14px;text-decoration:none;}
nav .links a.active{opacity:1;border-bottom:2px solid var(--coral);padding-bottom:3px;}
nav .cta{display:flex;gap:10px;align-items:center;}
nav .cta a.login{color:#fff;opacity:.82;font-size:14px;text-decoration:none;}
nav .cta .btn{background:var(--teal);color:#fff;font-weight:700;font-size:13.5px;padding:9px 16px;border-radius:8px;text-decoration:none;}

/* Hero (homepage, large with visual) */
header.hero{padding:76px 0 60px;border-bottom:1px solid var(--line);}
header.hero .wrap{display:flex;gap:50px;align-items:center;flex-wrap:wrap;}
header.hero .copy{flex:1;min-width:340px;}
header.hero .tag{margin-bottom:14px;}
header.hero h1{font-size:clamp(34px,4.4vw,54px);font-weight:800;line-height:1.08;margin:0 0 18px;}
header.hero p{font-size:17px;color:#4B5563;max-width:480px;margin:0 0 28px;}
header.hero .ctas{display:flex;gap:12px;flex-wrap:wrap;}
.btn-primary{background:var(--teal);color:#fff;font-family:'Outfit';font-weight:700;font-size:14.5px;padding:13px 22px;border-radius:10px;text-decoration:none;display:inline-block;}
.btn-accent{background:var(--coral);color:var(--ink);font-family:'Outfit';font-weight:700;font-size:14.5px;padding:13px 22px;border-radius:10px;text-decoration:none;display:inline-block;}
.btn-outline{border:1.5px solid var(--line);color:var(--ink);font-family:'Outfit';font-weight:700;font-size:14.5px;padding:11.5px 20px;border-radius:10px;text-decoration:none;background:#fff;display:inline-block;}
header.hero .visual{flex:1;min-width:320px;}
.stat-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:24px;box-shadow:0 20px 40px -20px rgba(31,42,55,.15);}
.stat-card .row{display:flex;gap:12px;margin-bottom:14px;}
.stat-card .pill{flex:1;background:var(--sage);border-radius:10px;padding:14px;}
.stat-card .pill.coral{background:var(--coral-tint);}
.stat-card .pill .k{font-family:'IBM Plex Mono';font-weight:600;font-size:18px;}
.stat-card .pill .l{font-size:11px;color:#6B7280;margin-top:2px;}
.stat-card .line{height:10px;border-radius:5px;background:var(--sage);margin-bottom:8px;}
.stat-card .line.w60{width:60%;}
.stat-card .line.w40{width:40%;background:var(--coral-tint);}

/* Page hero — smaller, for interior pages (Product / Industries / Pricing) */
header.page-hero{padding:56px 0 48px;border-bottom:1px solid var(--line);}
header.page-hero .tag{margin-bottom:12px;}
header.page-hero h1{font-size:clamp(28px,3.6vw,42px);font-weight:800;line-height:1.12;margin:0 0 14px;max-width:680px;}
header.page-hero p{font-size:16px;color:#4B5563;max-width:600px;margin:0;}

/* Dark hero variant — for accountants page */
header.hero-dark{background:var(--ink);color:#fff;padding:64px 0 56px;border-bottom:none;}
header.hero-dark .tag{color:var(--coral);margin-bottom:12px;}
header.hero-dark h1{color:#fff;font-size:clamp(30px,3.8vw,46px);font-weight:800;line-height:1.1;margin:0 0 16px;max-width:680px;}
header.hero-dark p{color:#C6CDD6;font-size:16px;max-width:560px;margin:0 0 26px;}

/* Trust bar */
.trustbar{padding:26px 0;border-bottom:1px solid var(--line);}
.trustbar .wrap{display:flex;align-items:center;gap:28px;flex-wrap:wrap;}
.trustbar .lbl{font-size:12.5px;color:#9CA3AF;font-family:'IBM Plex Mono';}
.trustbar .chip{background:#fff;border:1px solid var(--line);border-radius:20px;padding:7px 14px;font-size:13px;color:#4B5563;text-decoration:none;}

/* Sections */
section{padding:64px 0;border-bottom:1px solid var(--line);}
section .kicker{margin-bottom:10px;}
section h2{font-size:30px;font-weight:800;margin:0 0 12px;max-width:600px;}
section .lede{color:#6B7280;font-size:15px;max-width:560px;margin:0 0 36px;}
.grid3{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:20px;}
.grid2{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:24px;}
.feat{background:#fff;border:1px solid var(--line);border-radius:16px;padding:26px;}
.feat .ico{width:44px;height:44px;border-radius:12px;background:var(--sage);display:flex;align-items:center;justify-content:center;margin-bottom:16px;font-family:'IBM Plex Mono';font-weight:600;color:var(--teal-dark);}
.feat h3{font-size:16.5px;margin:0 0 8px;}
.feat p{font-size:13.5px;color:#6B7280;margin:0;}

/* Industries chips (used on homepage) */
.industries{display:flex;gap:14px;flex-wrap:wrap;}
.ind-chip{background:#fff;border:1px solid var(--line);border-radius:14px;padding:18px 22px;flex:1;min-width:150px;text-align:center;text-decoration:none;display:block;}
.ind-chip .name{font-family:'Outfit';font-weight:700;font-size:14.5px;color:var(--ink);}
.ind-chip .desc{font-size:12px;color:#6B7280;margin-top:4px;}

/* Industry detail blocks (industries.html) */
.ind-block{background:#fff;border:1px solid var(--line);border-radius:18px;padding:32px;display:flex;gap:30px;flex-wrap:wrap;align-items:flex-start;margin-bottom:20px;}
.ind-block .num{font-family:'IBM Plex Mono';font-size:12px;color:var(--coral-dark);background:var(--coral-tint);border-radius:20px;padding:3px 10px;display:inline-block;margin-bottom:10px;}
.ind-block .body{flex:2;min-width:280px;}
.ind-block h3{font-size:21px;margin:0 0 8px;}
.ind-block p{color:#6B7280;font-size:14.5px;margin:0 0 16px;max-width:480px;}
.ind-block ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px;flex:1;min-width:220px;}
.ind-block ul li{font-size:13.5px;color:var(--ink);display:flex;gap:9px;align-items:baseline;}
.ind-block ul li:before{content:"→";color:var(--teal-dark);font-weight:700;}

/* For accountants band / page sections */
.accountants{background:var(--ink);color:#fff;border-bottom:none;}
.accountants .wrap{display:flex;gap:40px;align-items:center;flex-wrap:wrap;}
.accountants .copy{flex:1;min-width:320px;}
.accountants .kicker{color:var(--coral);}
.accountants h2{color:#fff;}
.accountants p{color:#C6CDD6;font-size:15px;max-width:480px;margin:0 0 24px;}
.checks{list-style:none;padding:0;margin:0 0 26px;display:flex;flex-direction:column;gap:10px;}
.checks li{font-size:13.5px;display:flex;gap:10px;align-items:baseline;}
.checks li:before{content:"✓";color:var(--coral);font-weight:800;}
.accountants .checks li{color:#E5E9ED;}
.panel{flex:1;min-width:280px;background:#26374A;border-radius:16px;padding:22px;}
.panel .row{display:flex;justify-content:space-between;padding:10px 0;border-bottom:1px solid #33475B;font-size:13px;gap:14px;}
.panel .row:last-child{border-bottom:none;}
.panel .row .c{color:#9AA7B4;text-align:right;}

/* Role list (for-accountants.html) */
.role-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;}
.role-chip{background:#fff;border:1px solid var(--line);border-radius:12px;padding:14px 16px;}
.role-chip .r{font-family:'Outfit';font-weight:700;font-size:13.5px;}
.role-chip .d{font-size:12px;color:#6B7280;margin-top:3px;}

/* Pricing */
.pricing-note{background:var(--coral-tint);color:#7A3E1B;border-radius:12px;padding:14px 18px;font-size:13px;margin-bottom:32px;max-width:720px;}
.pricing-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:22px;}
.price-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:28px;display:flex;flex-direction:column;}
.price-card.featured{border:2px solid var(--teal);position:relative;}
.price-card .badge{position:absolute;top:-12px;right:24px;background:var(--teal);color:#fff;font-family:'Outfit';font-weight:700;font-size:11px;padding:4px 12px;border-radius:20px;}
.price-card .name{font-family:'Outfit';font-weight:700;font-size:18px;margin-bottom:6px;}
.price-card .price{font-family:'IBM Plex Mono';font-weight:600;font-size:28px;margin-bottom:2px;}
.price-card .price .per{font-size:13px;color:#6B7280;font-family:'Inter';font-weight:400;}
.price-card .for{font-size:12.5px;color:#6B7280;margin-bottom:20px;}
.price-card ul{list-style:none;padding:0;margin:0 0 24px;display:flex;flex-direction:column;gap:9px;flex:1;}
.price-card ul li{font-size:13px;display:flex;gap:8px;align-items:baseline;}
.price-card ul li:before{content:"✓";color:var(--teal-dark);font-weight:800;}
.api-tier{background:#fff;border:1px dashed var(--line);border-radius:16px;padding:24px 28px;display:flex;gap:20px;align-items:center;flex-wrap:wrap;margin-top:28px;}
.api-tier .body{flex:1;min-width:260px;}
.api-tier h3{font-size:16px;margin:0 0 6px;}
.api-tier p{font-size:13.5px;color:#6B7280;margin:0;max-width:480px;}

/* Testimonial */
.testimonial{text-align:center;max-width:640px;margin:0 auto;}
.testimonial p{font-size:19px;font-family:'Outfit';font-weight:600;color:var(--ink);line-height:1.4;margin:0 0 16px;}
.testimonial .who{font-size:13px;color:#6B7280;}

/* Final CTA */
.finalcta{background:var(--sage);border-bottom:none;}
.finalcta .wrap{text-align:center;}
.finalcta h2{margin:0 auto 12px;}
.finalcta p{margin:0 auto 26px;}
.finalcta .ctas{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;}

/* Footer */
footer{background:var(--ink);color:#C6CDD6;padding:50px 0 30px;}
footer .wrap{display:grid;grid-template-columns:2fr repeat(3,1fr);gap:30px;}
footer .logo{display:flex;align-items:center;gap:8px;margin-bottom:12px;}
footer .logo svg{width:24px;height:24px;}
footer .logo span{font-weight:800;font-size:17px;color:#fff;}
footer p.desc{font-size:13px;color:#9AA7B4;max-width:260px;}
footer h4{font-size:12px;text-transform:uppercase;letter-spacing:.05em;color:#8B98A5;margin:0 0 14px;}
footer ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:10px;}
footer a{font-size:13.5px;color:#DDE3E8;text-decoration:none;}
footer .bottom{margin-top:40px;padding-top:20px;border-top:1px solid #33475B;font-size:12px;color:#8B98A5;display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;}

.wf-note{background:var(--coral-tint);color:#7A3E1B;font-family:'IBM Plex Mono';font-size:12px;text-align:center;padding:8px;}
