:root {
  --octo-blue: #00b6e3;
  --octo-blue-deep: #067f99;
  --octo-navy: #0b2542;
  --octo-ink: #173044;
  --octo-muted: #5c7080;
  --octo-line: #e3ecef;
  --octo-mist: #f4fbfd;
  --octo-pale: #e7f7fb;
  --octo-white: #fff;
  --octo-font: Inter, system-ui, sans-serif;
  --octo-display: "Plus Jakarta Sans", Inter, sans-serif;
}

body, button, input, select, textarea { font-family: var(--octo-font); color: var(--octo-ink); }
h1, h2, h3, h4 { font-family: var(--octo-display); }
a:focus-visible, button:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible { outline: 2px solid var(--octo-blue-deep); outline-offset: 2px; }
.ct-header { background: #fff; border-bottom: 1px solid var(--octo-line); }
.ct-header .site-logo-container img { height: 34px; width: auto; max-width: 132px; }
.ct-header .menu-item > .ct-menu-link { color: var(--octo-navy); font-family: var(--octo-font); font-size: 0.92rem; font-weight: 500; }
.ct-header .current-menu-item > .ct-menu-link { color: var(--octo-blue-deep); }
.ct-header .menu-item.octo-nav-cta > .ct-menu-link {
  display: inline-flex; align-items: center; min-height: 42px; padding: 0 16px; border-radius: 8px;
  background: var(--octo-blue-deep); color: #fff; font-weight: 600;
}
.ct-header .menu-item.octo-nav-cta > .ct-menu-link:hover { background: var(--octo-navy); color: #fff; }
footer#footer.ct-footer { display: none !important; }
.home .site-main > .ct-container-full,
.home .entry-content,
.elementor-614 .e-con,
.elementor-614 .e-con-inner,
.elementor-614 .elementor-widget-container { padding: 0; margin: 0; max-width: none; }

.octo-home { color: var(--octo-ink); font-family: var(--octo-font); font-size: 1rem; line-height: 1.6; background: #fff; }
.octo-home * { box-sizing: border-box; }
.octo-home h1, .octo-home h2, .octo-home h3 { font-family: var(--octo-display); color: var(--octo-navy); letter-spacing: -0.03em; line-height: 1.12; margin: 0; }
.octo-home p { margin: 0; }
.octo-wrap { width: min(1180px, calc(100% - 40px)); margin-inline: auto; }
.octo-wrap-wide { width: min(1240px, calc(100% - 40px)); margin-inline: auto; }
.octo-kicker { margin: 0 0 12px; color: var(--octo-blue-deep); font-size: 0.72rem; font-weight: 700; letter-spacing: 0.14em; text-transform: uppercase; }
.octo-lead { max-width: 38rem; color: var(--octo-muted); font-size: 1.05rem; }
.octo-home h1 { font-size: clamp(2.4rem, 4.4vw, 4.15rem); max-width: 11ch; }
.octo-home h1 span { color: var(--octo-blue-deep); }
.octo-home h2 { font-size: clamp(1.7rem, 2.6vw, 2.45rem); }

.octo-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 26px; }
.octo-btn { display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 48px; padding: 0 18px; border-radius: 8px; border: 1.5px solid transparent; font: 600 0.95rem/1 var(--octo-font); text-decoration: none; cursor: pointer; }
.octo-btn-primary { background: var(--octo-blue-deep); color: #fff; }
.octo-btn-primary:hover { background: var(--octo-navy); color: #fff; }
.octo-btn-secondary { background: #fff; border-color: #c9dbe2; color: var(--octo-navy); }
.octo-btn-secondary:hover { border-color: var(--octo-blue-deep); color: var(--octo-blue-deep); }
.octo-btn-light { background: transparent; border-color: rgba(255,255,255,.7); color: #fff; }
.octo-btn-block { width: 100%; }
.octo-link { color: var(--octo-blue-deep); font-weight: 600; text-decoration: none; }
.octo-link:hover { text-decoration: underline; }
.octo-home a:focus-visible, .octo-home button:focus-visible, .octo-home select:focus-visible, .octo-home input:focus-visible, .ct-header a:focus-visible { outline: 2px solid var(--octo-navy); outline-offset: 3px; }

.octo-hero { padding: 54px 0 28px; background: linear-gradient(180deg, #f7fcfe 0%, #fff 80%); }
.octo-hero-grid { display: grid; grid-template-columns: 1.05fr 0.95fr; gap: 36px; align-items: center; }
.octo-benefits { display: flex; flex-wrap: wrap; gap: 8px 18px; margin: 22px 0 0; padding: 0; list-style: none; color: var(--octo-navy); font-size: 0.84rem; font-weight: 600; }
.octo-benefits li { display: flex; align-items: center; gap: 6px; }
.octo-benefits li::before { content: ""; width: 7px; height: 7px; border-radius: 99px; background: var(--octo-blue); }
.octo-hero-visual { position: relative; }
.octo-hero-visual img { display: block; width: 100%; height: 480px; object-fit: cover; object-position: center bottom; border-radius: 18px; }
.octo-dash { position: absolute; right: 18px; bottom: 18px; width: min(250px, 70%); padding: 14px 14px 12px; border-radius: 16px; background: rgba(255,255,255,.94); box-shadow: 0 16px 40px rgba(11,37,66,.16); }
.octo-dash-script { font-family: Caveat, cursive; color: var(--octo-blue-deep); font-size: 1.25rem; }
.octo-dash-label { margin-top: 4px; color: var(--octo-muted); font-size: 0.75rem; font-weight: 600; }
.octo-dash-figure { margin-top: 4px; color: var(--octo-navy); font-family: var(--octo-display); font-size: 1.6rem; font-weight: 700; }
.octo-dash-figure small { color: var(--octo-muted); font-size: 0.7rem; font-weight: 600; }
.octo-bars { display: flex; align-items: flex-end; gap: 6px; height: 54px; margin: 8px 0; }
.octo-bars span { flex: 1; border-radius: 4px 4px 0 0; background: var(--octo-blue); }
.octo-bars span:nth-child(1) { height: 40%; opacity: .45; }
.octo-bars span:nth-child(2) { height: 62%; opacity: .6; }
.octo-bars span:nth-child(3) { height: 48%; opacity: .75; }
.octo-bars span:nth-child(4) { height: 80%; }
.octo-bars span:nth-child(5) { height: 100%; }
.octo-dash ul { display: flex; flex-wrap: wrap; gap: 6px; margin: 0; padding: 0; list-style: none; }
.octo-dash li { color: var(--octo-muted); font-size: 0.72rem; }
.octo-note { margin-top: 6px; color: var(--octo-blue-deep); font-size: 0.68rem; }

.octo-partners { padding: 18px 0 8px; border-bottom: 1px solid var(--octo-line); }
.octo-partners .octo-wrap { display: flex; align-items: center; gap: 28px; }
.octo-partners p { max-width: 90px; color: var(--octo-muted); font-size: 0.68rem; font-weight: 700; letter-spacing: 0.08em; text-transform: uppercase; }
.octo-partners ul { display: flex; flex-wrap: wrap; align-items: center; gap: 22px 32px; margin: 0; padding: 0; list-style: none; }
.octo-partners li, .octo-partners .is-xero, .octo-partners .is-qb, .octo-partners .is-stripe, .octo-partners .is-dext { color: var(--octo-navy); font-style: normal; font-family: var(--octo-display); font-weight: 700; font-size: 1.05rem; letter-spacing: -0.03em; }

.octo-section { padding: 72px 0; }
.octo-section-head { display: flex; justify-content: space-between; align-items: flex-end; gap: 24px; margin-bottom: 28px; }
.octo-needs { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; }
.octo-path, .octo-service, .octo-resource { color: inherit; text-decoration: none; }
.octo-path { display: flex; flex-direction: column; min-height: 100%; border: 1px solid var(--octo-line); border-radius: 16px; overflow: hidden; background: #fff; }
.octo-path:hover { border-color: var(--octo-blue); }
.octo-path h3, .octo-service h3, .octo-resource h3 { font-size: 1.12rem; }
.octo-path h3, .octo-path p, .octo-path em { margin-left: 16px; margin-right: 16px; }
.octo-path h3 { margin-top: 14px; }
.octo-path p { margin-top: 8px; color: var(--octo-muted); font-size: 0.92rem; }
.octo-path em { margin-top: auto; padding: 14px 0 16px; color: var(--octo-blue-deep); font-style: normal; font-weight: 700; font-size: 0.88rem; }
.octo-scene { display: block; height: 148px; background: var(--octo-pale); }
.octo-scene-chart { display: flex; align-items: flex-end; gap: 10px; padding: 28px 22px 0; }
.octo-scene-chart i { flex: 1; background: var(--octo-blue-deep); border-radius: 6px 6px 0 0; }
.octo-scene-chart i:nth-child(1) { height: 45%; opacity: .35; }
.octo-scene-chart i:nth-child(2) { height: 70%; opacity: .55; }
.octo-scene-chart i:nth-child(3) { height: 55%; opacity: .75; }
.octo-scene-chart i:nth-child(4) { height: 90%; }
.octo-scene-phone { display: grid; place-items: center; }
.octo-scene-phone b { display: grid; place-items: center; width: 92px; height: 120px; border-radius: 16px; background: #fff; color: #13b5ea; font-style: italic; box-shadow: 0 10px 24px rgba(11,37,66,.08); }
.octo-scene-docs { display: flex; align-items: flex-end; justify-content: center; gap: 8px; }
.octo-scene-docs b { width: 54px; background: #fff; border: 1px solid #d5e4ea; border-bottom: 0; border-radius: 4px 4px 0 0; }
.octo-scene-docs b:nth-child(1) { height: 78px; }
.octo-scene-docs b:nth-child(2) { height: 110px; }
.octo-scene-docs b:nth-child(3) { height: 92px; }
.octo-scene-team { display: flex; align-items: flex-end; justify-content: center; gap: 8px; }
.octo-scene-team b { width: 36px; height: 36px; border-radius: 99px; background: #9fd8ea; box-shadow: 0 28px 0 10px #d7eef5; }

.octo-clarity { background: var(--octo-mist); }
.octo-clarity-grid { display: grid; grid-template-columns: 1.05fr 0.95fr; gap: 36px; align-items: start; }
.octo-ticks { margin: 18px 0; padding: 0; list-style: none; }
.octo-ticks li { position: relative; padding-left: 22px; margin: 8px 0; color: var(--octo-ink); }
.octo-ticks li::before { content: ""; position: absolute; left: 0; top: 0.45em; width: 8px; height: 8px; border-radius: 99px; background: var(--octo-blue); }
.octo-report { margin-top: 8px; padding: 18px; border-radius: 16px; background: #fff; border: 1px solid var(--octo-line); box-shadow: 0 12px 30px rgba(11,37,66,.05); }
.octo-report-brand { color: var(--octo-blue-deep); font-weight: 800; letter-spacing: 0.08em; }
.octo-report-title { margin-top: 4px; font-family: var(--octo-display); font-weight: 700; color: var(--octo-navy); }
.octo-report-sample, .octo-fine { margin-top: 8px; color: var(--octo-muted); font-size: 0.84rem; }
.octo-report ul { margin: 10px 0 0; padding-left: 18px; color: var(--octo-ink); }
.octo-form { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; padding: 22px; border-radius: 18px; background: #fff; border: 1px solid var(--octo-line); }
.octo-form h3 { grid-column: 1 / -1; font-size: 1.35rem; }
.octo-form h3 small { display: block; margin-top: 4px; color: var(--octo-muted); font-family: var(--octo-font); font-size: 0.8rem; font-weight: 500; letter-spacing: 0; }
.octo-field { display: flex; flex-direction: column; gap: 6px; }
.octo-field-wide, .octo-form .octo-btn, .octo-fine, .octo-result { grid-column: 1 / -1; }
.octo-field label { color: var(--octo-navy); font-size: 0.84rem; font-weight: 600; }
.octo-field input, .octo-field select { min-height: 48px; padding: 0 12px; border: 1px solid #d5e2e8; border-radius: 8px; background: #fff; color: var(--octo-ink); font: 400 1rem/1.4 var(--octo-font); }
.octo-hp { position: absolute; left: -9999px; }
.octo-result { padding: 14px; border-radius: 12px; background: var(--octo-pale); }
.octo-result[data-state="error"] { background: #fdf2f3; color: #c43d4b; }
.octo-result[data-state="success"] { background: #eef8f3; }

.octo-services { display: grid; grid-template-columns: repeat(4, 1fr); gap: 14px; }
.octo-service a { color: var(--octo-blue-deep); font-weight: 600; }
.octo-close a:not(.octo-btn) { color: #fff; text-decoration: underline; }
.octo-service:hover { border-color: var(--octo-blue); }
.octo-service span { color: var(--octo-blue); font-weight: 700; }
.octo-service p { margin-top: 8px; color: var(--octo-muted); font-size: 0.92rem; }
.octo-service em { margin-top: auto; padding-top: 12px; color: var(--octo-blue-deep); font-style: normal; font-weight: 700; }

.octo-split-grid { display: grid; grid-template-columns: 1.35fr 0.75fr; gap: 28px; }
.octo-industries { display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; margin-top: 18px; }
.octo-industries article { position: relative; min-height: 150px; overflow: hidden; border-radius: 14px; }
.octo-industries img { width: 100%; height: 150px; object-fit: cover; display: block; filter: saturate(0.85); }
.octo-industries h3 { position: absolute; left: 12px; bottom: 10px; color: #fff; font-size: 1rem; text-shadow: 0 1px 8px rgba(0,0,0,.45); }
.octo-why-card { padding: 22px; border-radius: 18px; background: var(--octo-mist); }
.octo-why-card ul { margin: 16px 0; padding: 0; list-style: none; }
.octo-why-card li { margin: 10px 0; padding-left: 16px; position: relative; }
.octo-why-card li::before { content: ""; position: absolute; left: 0; top: 0.55em; width: 7px; height: 7px; border-radius: 99px; background: var(--octo-blue); }
.octo-facts { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.octo-facts p { padding: 12px; border-radius: 12px; background: #fff; }
.octo-facts strong { display: block; color: var(--octo-navy); font-family: var(--octo-display); font-size: 1.2rem; }
.octo-facts span { color: var(--octo-muted); font-size: 0.8rem; }

.octo-process { display: grid; grid-template-columns: 1.2fr 0.8fr; gap: 28px; align-items: center; }
.octo-steps { margin: 18px 0 0; padding: 0; list-style: none; display: grid; gap: 14px; }
.octo-steps li { display: grid; grid-template-columns: 36px 1fr; gap: 12px; }
.octo-steps span { display: grid; place-items: center; width: 36px; height: 36px; border-radius: 99px; background: var(--octo-pale); color: var(--octo-blue-deep); font-weight: 700; }
.octo-steps p { color: var(--octo-muted); }
.octo-note-card { display: grid; place-items: center; min-height: 280px; padding: 28px; border-radius: 18px; background: linear-gradient(160deg, #f3efe6, #e7dfd2); }
.octo-note-card p { max-width: 12ch; padding: 18px; border-radius: 12px; background: rgba(255,255,255,.9); font-family: Caveat, cursive; font-size: 2.2rem; line-height: 1.05; color: var(--octo-navy); transform: rotate(-2deg); }

.octo-close { background: var(--octo-navy); color: #fff; padding: 0; }
.octo-close-grid { display: grid; grid-template-columns: 1fr 1fr; min-height: 320px; }
.octo-close-grid > div { padding: 64px 8px; }
.octo-close h2, .octo-close .octo-kicker { color: #fff; }
.octo-close p { max-width: 36rem; color: #d5e4ea; }
.octo-close img { width: 100%; height: 100%; object-fit: cover; }

.octo-resources { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; }
.octo-resource { overflow: hidden; border: 1px solid var(--octo-line); border-radius: 16px; }
.octo-resource img { width: 100%; height: 190px; object-fit: cover; display: block; }
.octo-resource h3, .octo-resource p { margin-left: 16px; margin-right: 16px; }
.octo-resource h3 { margin-top: 14px; }
.octo-resource p { margin: 8px 16px 18px; color: var(--octo-muted); }

.octo-foot { background: #f7fbfc; border-top: 1px solid var(--octo-line); padding: 48px 0 20px; }
.octo-foot-grid { display: grid; grid-template-columns: 1.2fr repeat(3, 1fr); gap: 22px; }
.octo-foot-logo { font-family: var(--octo-display); font-weight: 800; letter-spacing: 0.08em; color: var(--octo-navy); }
.octo-foot h2 { font-size: 0.95rem; margin-bottom: 8px; }
.octo-foot a, .octo-foot p { display: block; margin: 6px 0; color: var(--octo-muted); text-decoration: none; font-size: 0.92rem; }
.octo-foot a:hover { color: var(--octo-blue-deep); }
.octo-foot .octo-btn { margin-top: 8px; color: #fff; }
.octo-foot-base { display: flex; justify-content: space-between; gap: 12px; margin-top: 28px; padding-top: 16px; border-top: 1px solid var(--octo-line); }

@media (max-width: 1024px) {
  .octo-hero-grid, .octo-clarity-grid, .octo-split-grid, .octo-process, .octo-close-grid, .octo-foot-grid { grid-template-columns: 1fr; }
  .octo-needs, .octo-services { grid-template-columns: 1fr 1fr; }
  .octo-hero-visual img { height: 320px; }
  .octo-close img { height: 220px; }
}
@media (max-width: 768px) {
  .octo-wrap, .octo-wrap-wide { width: min(1180px, calc(100% - 32px)); }
  .octo-hero { padding-top: 28px; }
  .octo-hero-visual { order: 2; }
  .octo-needs, .octo-services, .octo-resources, .octo-industries, .octo-form { grid-template-columns: 1fr; }
  .octo-actions, .octo-actions .octo-btn { width: 100%; }
  .octo-section { padding: 48px 0; }
  .octo-section-head { display: block; }
  .octo-partners .octo-wrap { display: block; }
  .octo-dash { position: static; width: auto; margin-top: 12px; }
}
.page-id-618 .entry-content,
.page-id-616 .entry-content,
.page-id-620 .entry-content,
.page-id-1312 .entry-content,
.page-id-1246 .entry-content,
.page-id-3 .entry-content,
.page-id-618 .elementor-widget-container,
.page-id-616 .elementor-widget-container,
.page-id-620 .elementor-widget-container,
.page-id-1312 .elementor-widget-container,
.page-id-1246 .elementor-widget-container,
.page-id-3 .elementor-widget-container { padding: 0; margin: 0; max-width: none; }
.octo-page h1 { max-width: 16ch; font-size: clamp(2.1rem, 4vw, 3.35rem); }
.octo-page-hero { padding: 56px 0 12px; }
.octo-prose { display: grid; gap: 14px; }
.octo-prose h2 { margin-top: 18px; font-size: clamp(1.6rem, 2vw, 2.1rem); }
.octo-prose a { color: var(--octo-blue-deep); }
.octo-page .octo-close .octo-wrap { padding: 64px 0; }
.octo-page .octo-services { margin: 8px 0 12px; }
.octo-cf7 label { display: grid; gap: 6px; font-weight: 600; color: var(--octo-navy); }
.octo-cf7 input, .octo-cf7 textarea { width: 100%; min-height: 48px; padding: 12px; border: 1px solid #d5e2e8; border-radius: 8px; font: inherit; }
.octo-cf7 textarea { min-height: 140px; }
.octo-cf7 input[type="submit"] { width: auto; min-height: 48px; padding: 0 18px; border: 0; background: var(--octo-blue-deep); color: #fff; font-weight: 600; cursor: pointer; }
.page-id-3 .entry-header,
.page-id-616 .entry-header,
.page-id-618 .entry-header,
.page-id-620 .entry-header,
.page-id-1246 .entry-header,
.page-id-1312 .entry-header,
.blog .hero-section,
.blog .entry-header { display: none; }
.blog .octo-page-hero { padding: 56px 0 8px; }
.blog .octo-page-hero h1 { max-width: 16ch; font-family: var(--octo-display); font-size: clamp(2.1rem, 4vw, 3.35rem); color: var(--octo-navy); letter-spacing: -0.03em; line-height: 1.12; }
.blog .entry-card, .blog article { margin-bottom: 18px; }
@media (prefers-reduced-motion: reduce) {
  .octo-note-card p { transform: none; }
}
