/* ScaleUp Accounting — Services page (builds on styles.css) */
body{font-family:'Geist',ui-sans-serif,system-ui,sans-serif;color:#1C1B24;-webkit-font-smoothing:antialiased;overflow-x:clip}
.v-sec{padding:72px 0}
.v-k{margin:0 0 18px;font-family:'Geist Mono',monospace;font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:#1E9471}
.v-h2{margin:0;font-size:clamp(34px,3.9vw,56px);line-height:1.02;font-weight:600;letter-spacing:-0.048em;text-wrap:balance}
.v-lede{margin:16px 0 0;max-width:600px;font-size:18px;line-height:1.55;color:#5B5A66}
html{scroll-padding-top:110px}

/* Hero */
.v-hero-in{display:flex;align-items:center;gap:56px;padding-top:56px;padding-bottom:8px}
.v-hero-txt{flex:1 1 58%;min-width:0}
.v-hero h1{margin:0;font-size:clamp(46px,5.6vw,80px);line-height:.98;font-weight:600;letter-spacing:-0.054em;text-wrap:balance}
.v-hero h1 span{color:#8A8996}
.v-sub{margin:28px 0 0;max-width:520px;font-size:20px;line-height:1.6;color:#5B5A66}
.v-cta{margin-top:38px;display:flex;flex-wrap:wrap;gap:12px}
.v-hero-art{flex:1 1 42%;min-width:0;display:flex;justify-content:center}
.v-hero-art img{display:block;width:100%;max-width:560px;height:auto;mix-blend-mode:multiply;animation:sFade 1s cubic-bezier(.2,.8,.2,1) .2s backwards}

/* Index of services */
.v-idx{margin-top:44px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.v-idx a{display:flex;align-items:center;gap:12px;padding:12px 16px 12px 12px;border-radius:20px;box-shadow:inset 0 0 0 1px #ECECF0;text-decoration:none;color:#1C1B24;font-size:15px;font-weight:550;letter-spacing:-0.01em;transition:box-shadow .3s,background .3s}
.v-idx a:hover{background:#FAFAFB;box-shadow:inset 0 0 0 1px #DADAE0}
.v-idx img{width:40px;height:40px;object-fit:contain;flex:none}
.v-idx svg{margin-left:auto;flex:none;color:#C9C8D2;transition:transform .3s,color .3s}
.v-idx a:hover svg{transform:translateY(2px);color:#1C1B24}

/* Group header */
.v-grp{display:flex;align-items:flex-end;justify-content:space-between;gap:32px;margin-bottom:40px}
.v-grp .v-lede{margin:0;max-width:420px;font-size:16.5px}

/* Service rows */
.v-list{display:flex;flex-direction:column;gap:16px}
.v-svc{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:0;border-radius:28px;box-shadow:inset 0 0 0 1px #ECECF0;overflow:hidden;background:#FFFFFF}
.v-svc-l{padding:34px 36px 36px;display:flex;flex-direction:column}
.v-svc-top{display:flex;align-items:center;justify-content:space-between;gap:12px}
.v-svc-top img{width:64px;height:64px;object-fit:contain;margin:-6px 0 0 -6px}
.v-n{font-family:'Geist Mono',monospace;font-size:13px;color:#A3A2AF}
.v-svc h3{margin:22px 0 0;font-size:30px;line-height:1.1;font-weight:600;letter-spacing:-0.035em}
.v-svc-d{margin:12px 0 0;font-size:16.5px;line-height:1.6;color:#5B5A66}
.v-tag{margin-top:auto;padding-top:26px;display:flex;flex-wrap:wrap;gap:8px}
.v-tag span{display:inline-flex;align-items:center;gap:7px;padding:7px 12px;border-radius:999px;font-size:13px;font-weight:550;background:#F4F4F6;color:#3E3D4A}
.v-tag span i{width:7px;height:7px;border-radius:50%}
.v-svc-r{padding:34px 36px 36px;background:#FAFAFB;box-shadow:inset 1px 0 0 #ECECF0}
.v-svc-r h4{margin:0 0 16px;font-family:'Geist Mono',monospace;font-size:11.5px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:#8A8996}
.v-inc{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 24px}
.v-inc li{display:flex;gap:10px;font-size:15px;line-height:1.45;color:#3E3D4A}
.v-ck{flex:none;width:18px;height:18px;border-radius:50%;background:#1E9471;display:grid;place-items:center;margin-top:1px}
.v-for{margin:26px 0 0;padding-top:20px;border-top:1px solid #ECECF0;font-size:14.5px;line-height:1.55;color:#5B5A66}
.v-for b{color:#1C1B24;font-weight:600}

/* Add-ons: dark */
.v-dark{background:#18171F;color:#FFFFFF;border-radius:40px;margin:0 16px;padding:80px 0}
.v-dark .v-k{color:#FCA732}
.v-dark .v-lede{color:#A3A2AF}
.v-dark .v-svc{background:#22212B;box-shadow:inset 0 0 0 1px rgba(255,255,255,.08)}
.v-dark .v-svc-l{background:#22212B}
.v-dark .v-svc-top img{background:#FFFFFF;border-radius:20px;padding:6px;margin:0;width:60px;height:60px;box-sizing:border-box}
.v-dark .v-svc-d{color:#A3A2AF}
.v-dark .v-tag span{background:rgba(252,167,50,.14);color:#FCC77A}
.v-dark .v-svc-r{background:#1D1C25;box-shadow:inset 1px 0 0 rgba(255,255,255,.08)}
.v-dark .v-inc li{color:#E4E4EA}
.v-dark .v-for{border-top-color:rgba(255,255,255,.1);color:#A3A2AF}
.v-dark .v-for b{color:#FFFFFF}
.v-dark .v-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.v-dark .v-svc{grid-template-columns:1fr}
.v-dark .v-svc-r{box-shadow:inset 0 1px 0 rgba(255,255,255,.08)}
.v-dark .v-inc{grid-template-columns:1fr}

/* Tech stack */
.v-stack{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:64px;align-items:center}
.v-stack-r{display:flex;flex-direction:column;gap:14px}
.v-row{display:flex;align-items:center;gap:16px;padding:18px 22px;border-radius:20px;box-shadow:inset 0 0 0 1px #ECECF0}
.v-row-k{flex:none;width:118px;font-family:'Geist Mono',monospace;font-size:11.5px;letter-spacing:.07em;text-transform:uppercase;color:#8A8996}
.v-chips{display:flex;flex-wrap:wrap;gap:8px}
.v-chip{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;border-radius:999px;background:#F4F4F6;font-size:14.5px;font-weight:550}
.v-chip i{width:8px;height:8px;border-radius:50%}
.v-chip.v-main{background:#1C1B24;color:#FFFFFF}
.v-chip.v-main i{background:#FCA732}
.v-row-note{font-size:14px;color:#77768A}

/* Not included */
.v-no{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:40px}
.v-no-c{padding:30px 32px;border-radius:28px;background:#F6F6F8}
.v-no-c h3{margin:0;display:flex;align-items:center;gap:12px;font-size:21px;font-weight:600;letter-spacing:-0.025em}
.v-no-c p{margin:12px 0 0;font-size:15.5px;line-height:1.6;color:#5B5A66}
.v-no-i{flex:none;width:30px;height:30px;border-radius:50%;display:grid;place-items:center}

/* Final CTA */
.v-final{text-align:center;padding:72px 32px;border-radius:28px;background:#F6F6F8}
.v-final p{margin:18px auto 0;max-width:520px;font-size:18px;line-height:1.55;color:#5B5A66}
.v-final .v-final-c{margin-top:22px;font-size:15px}
.v-final a{color:#1C1B24}

/* Tablet */
@media (max-width:1024px){
  .v-idx{grid-template-columns:repeat(2,minmax(0,1fr))}
  .v-svc{grid-template-columns:1fr}
  .v-svc-r{box-shadow:inset 0 1px 0 #ECECF0}
  .v-dark .v-list{grid-template-columns:1fr}
  .v-stack{grid-template-columns:1fr;gap:32px}
}
/* Phone */
@media (max-width:760px){
  .v-sec{padding:48px 0}
  .v-hero-in{flex-direction:column-reverse;align-items:stretch;gap:8px;padding-top:20px}
  .v-hero-art img{max-width:400px}
  .v-hero h1 br{display:none}
  .v-sub{font-size:18px;margin-top:20px}
  .v-cta{margin-top:28px}
  .v-cta a{width:100%;justify-content:center}
  .v-idx{margin-top:28px;gap:8px}
  .v-idx a{font-size:13.5px;padding:10px 10px 10px 8px;gap:8px;border-radius:14px}
  .v-idx img{width:30px;height:30px}
  .v-idx svg{display:none}
  .v-grp{flex-direction:column;align-items:flex-start;gap:14px;margin-bottom:28px}
  .v-svc{border-radius:28px}
  .v-svc-l,.v-svc-r{padding:24px 22px}
  .v-svc h3{font-size:25px;margin-top:16px}
  .v-svc-d{font-size:16px}
  .v-tag{padding-top:18px}
  .v-inc{grid-template-columns:1fr;gap:12px}
  .v-dark{margin:0;border-radius:28px;padding:52px 0}
  .v-row{flex-direction:column;align-items:flex-start;gap:10px;padding:18px}
  .v-row-k{width:auto}
  .v-no{grid-template-columns:1fr;margin-top:28px;gap:12px}
  .v-no-c{padding:24px 22px}
  .v-final{padding:52px 22px;border-radius:28px}
}

/* Monthly services: tabs */
.v-tabs{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:16px;align-items:start}
.v-tablist{display:flex;flex-direction:column;gap:8px;position:sticky;top:110px}
.v-tab{display:flex;align-items:center;gap:14px;width:100%;padding:14px 18px 14px 14px;border:0;border-radius:20px;background:#FFFFFF;box-shadow:inset 0 0 0 1px #ECECF0;font:inherit;color:#1C1B24;text-align:left;cursor:pointer;transition:background .3s,box-shadow .3s,transform .3s}
.v-tab:hover{box-shadow:inset 0 0 0 1px #DADAE0}
.v-tab img{width:44px;height:44px;object-fit:contain;flex:none}
.v-tab span{display:flex;flex-direction:column;gap:4px;min-width:0}
.v-tab b{font-size:17px;font-weight:600;letter-spacing:-0.02em}
.v-tab small{display:flex;align-items:center;gap:6px;font-size:12.5px;color:#8A8996}
.v-tab small i{width:6px;height:6px;border-radius:50%;flex:none}
.v-tab em{margin-left:auto;font-style:normal;font-family:'Geist Mono',monospace;font-size:12px;color:#C9C8D2}
.v-tab[aria-selected="true"]{background:#18171F;color:#FFFFFF;box-shadow:0 20px 40px -28px rgba(28,27,36,.6)}
.v-tab[aria-selected="true"] small{color:#A3A2AF}
.v-tab[aria-selected="true"] em{color:#FCA732}
.v-tab[aria-selected="true"] img{background:#FFFFFF;border-radius:14px;padding:3px;box-sizing:border-box}
.v-tab:focus-visible{outline:2px solid #FCA732;outline-offset:2px}
.v-pane{padding:40px 44px 40px;border-radius:28px;background:#FAFAFB;box-shadow:inset 0 0 0 1px #ECECF0;min-height:100%;box-sizing:border-box;animation:vIn .45s cubic-bezier(.2,.8,.2,1)}
@keyframes vIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.v-pane-top{display:flex;align-items:center;gap:18px}
.v-pane-top img{width:84px;height:84px;object-fit:contain;flex:none;mix-blend-mode:multiply}
.v-pane h3{margin:6px 0 0;font-size:34px;line-height:1.05;font-weight:600;letter-spacing:-0.04em}
.v-pane .v-svc-d{margin-top:20px;font-size:18px;max-width:560px}
.v-pane .v-tag{margin-top:0;padding-top:18px}
.v-pane h4{margin:30px 0 16px;padding-top:26px;border-top:1px solid #ECECF0;font-family:'Geist Mono',monospace;font-size:11.5px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:#8A8996}
@media (max-width:1024px){
  .v-tabs{grid-template-columns:1fr}
  .v-tablist{position:static;flex-direction:row;overflow-x:auto;scroll-snap-type:x mandatory;margin:0 -24px;padding:2px 24px 6px;scrollbar-width:none}
  .v-tablist::-webkit-scrollbar{display:none}
  .v-tab{flex:none;width:auto;scroll-snap-align:start;padding:10px 16px 10px 10px}
  .v-tab small,.v-tab em{display:none}
  .v-tab b{font-size:15px;white-space:nowrap}
  .v-tab img{width:32px;height:32px}
}
@media (max-width:760px){
  .v-pane{padding:26px 22px;border-radius:28px}
  .v-pane-top img{width:60px;height:60px}
  .v-pane h3{font-size:27px}
  .v-pane .v-svc-d{font-size:16.5px}
}

/* Tech stack: approach */
.v-steps{list-style:none;margin:0;padding:0;border-radius:28px;box-shadow:inset 0 0 0 1px #ECECF0;overflow:hidden}
.v-steps li{display:flex;gap:18px;padding:24px 28px}
.v-steps li + li{border-top:1px solid #ECECF0}
.v-step-n{flex:none;width:34px;height:34px;border-radius:50%;display:grid;place-items:center;color:#FFFFFF;font-weight:700;font-size:15px}
.v-steps h3{margin:4px 0 0;font-size:19px;font-weight:600;letter-spacing:-0.02em}
.v-steps p{margin:6px 0 0;font-size:15.5px;line-height:1.55;color:#5B5A66}
.v-tools{margin-top:16px;padding:22px 28px;border-radius:28px;background:#F6F6F8}
.v-tools-k{display:block;margin-bottom:12px;font-family:'Geist Mono',monospace;font-size:11.5px;letter-spacing:.07em;text-transform:uppercase;color:#8A8996}
.v-tools .v-chip{background:#FFFFFF;box-shadow:inset 0 0 0 1px #ECECF0}
.v-tools .v-chip.v-main{background:#1C1B24;box-shadow:none}
.v-chip.v-more{background:none !important;box-shadow:none !important;border:1px dashed #C9C8D2;padding:7px 13px;color:#77768A}
@media (max-width:760px){.v-steps li{padding:20px}.v-tools{padding:20px}}

/* ===== Alignment & spacing pass ===== */
.v-sec{padding:104px 0}
.v-sec-tight{padding-top:0}
.v-hero-in{padding-bottom:0}
.v-idx{margin-top:48px}
/* group headers: heading + lede stacked, left aligned */
.v-grp{display:block;margin-bottom:44px}
.v-grp .v-lede{margin-top:16px;max-width:600px;font-size:18px}
/* tabs: list and panel same height */
.v-tabs{align-items:stretch}
.v-tablist{position:static;justify-content:space-between}
.v-tab{flex:1 1 0;min-height:72px}
.v-panes{display:flex}
.v-pane{flex:1;min-height:0}
.v-pane-top img{width:72px;height:72px}
.v-pane h3{margin-top:4px}
.v-pane .v-svc-d{margin-top:22px}
.v-pane h4{margin-top:28px}
/* add-ons: aligned rows across both cards */
.v-dark{padding:104px 0}
.v-dark .v-list{grid-template-rows:auto auto}
.v-dark .v-svc{grid-row:span 2;display:grid;grid-template-rows:subgrid;gap:0}
.v-dark .v-svc-l,.v-dark .v-svc-r{padding:36px 40px}
.v-dark .v-tag{margin-top:auto}
/* tech stack: top aligned */
.v-stack{align-items:start}
.v-stack .v-lede{max-width:500px}
/* not-included cards */
.v-no{margin-top:44px}
.v-no-c{padding:32px 36px}
.v-no-c p{max-width:520px}
@media (max-width:1024px){
  .v-tablist{justify-content:flex-start}
  .v-tab{flex:none;min-height:0}
  .v-dark .v-list{grid-template-rows:none}
  .v-dark .v-svc{grid-row:auto;grid-template-rows:auto auto}
}
@media (max-width:760px){
  .v-sec{padding:64px 0}
  .v-sec-tight{padding-top:0}
  .v-dark{padding:64px 0}
  .v-dark .v-svc-l,.v-dark .v-svc-r{padding:24px 22px}
  .v-grp{margin-bottom:28px}
  .v-grp .v-lede{font-size:16.5px}
  .v-no{margin-top:28px}
  .v-no-c{padding:24px 22px}
  #contact{padding-bottom:64px !important}
}
.v-stack{grid-template-columns:minmax(0,4fr) minmax(0,7fr);gap:56px}
.v-stack .v-lede{margin-top:22px}
.v-tools .v-chips{gap:6px}
.v-tools .v-chip{padding:7px 12px;font-size:14px}
.v-final .v-final-c{max-width:640px}
@media (max-width:1024px){.v-stack{grid-template-columns:1fr;gap:32px}}

/* v12 consistency */
@media (min-width:641px){.v-sec{padding:96px 0}.v-dark{padding:96px 0}}
.v-pane h3,.v-svc-l h3{font-size:28px}
.v-steps h3,.v-no-c h3{font-size:20px}
