:root{color-scheme:light;box-sizing:border-box;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px)}html{scroll-padding-top:env(safe-area-inset-top,0px)}body{margin:0;padding:0;font:14px -apple-system,BlinkMacSystemFont,sans-serif;background:#faf9f5;color:#141413}img{max-width:100%}[hidden]:not([hidden=until-found i]){display:none!important}
/* Layout concept: announcement bar, contact strip, pill navigation, then a two-column hero: big condensed headline + CTA row + stats card on the left, tilted photo card with floating stats on the right. */
:root {
  --bg1: #E8EEF8; --bg2: #F6F2F3;
  --fg: #0A0F1A; --muted: #3C4656;
  --lime: #5846D2; --lime-ink: #FFFFFF; --lime-soft: #DDD8F7; --lime-tint: #EEEBFC; --lime-text: #4635B5;
  --card: #FFFFFF; --line: #E1E7EF;
  --wa: #14B53C; --wa-ink: #FFFFFF;
  --btn-dark: #0A0A0A; --btn-dark-ink: #FFFFFF;
  --bar: #000000; --bar-ink: #FFFFFF;
  --shadow: 0 14px 34px -14px rgba(15, 30, 60, .28);
  --font-display: "Bebas Neue", "Arial Narrow", Impact, sans-serif;
  --font-body: "Inter", system-ui, -apple-system, "Segoe UI", sans-serif;
}
@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) {
    --bg1: #0A1220; --bg2: #101B2C; --fg: #F0F4F8; --muted: #A9B6C6;
    --lime: #8576F0; --lime-ink: #0A0F1A; --lime-soft: #251F4D; --lime-tint: #1B1739; --lime-text: #B6ACFF;
    --card: #142033; --line: #26364C; --btn-dark: #F0F4F8; --btn-dark-ink: #0A0F1A;
    --shadow: 0 14px 34px -14px rgba(0, 0, 0, .7); color-scheme: dark;
  }
}
:root[data-theme="dark"] {
  --bg1: #0A1220; --bg2: #101B2C; --fg: #F0F4F8; --muted: #A9B6C6;
  --lime: #8576F0; --lime-ink: #0A0F1A; --lime-soft: #251F4D; --lime-tint: #1B1739; --lime-text: #B6ACFF;
  --card: #142033; --line: #26364C; --btn-dark: #F0F4F8; --btn-dark-ink: #0A0F1A;
  --shadow: 0 14px 34px -14px rgba(0, 0, 0, .7); color-scheme: dark;
}
* { box-sizing: border-box; }
body { background: linear-gradient(135deg, var(--bg1), var(--bg2)); background-color: var(--bg1); color: var(--fg); font-family: var(--font-body); font-size: 16px; line-height: 1.6; padding-block: 0; padding-inline: 0; min-height: 100%; }
a { color: inherit; text-decoration: none; }
:focus-visible { outline: 3px solid var(--lime); outline-offset: 3px; border-radius: 6px; }
.wrap { max-width: 1240px; margin-inline: auto; padding-inline: 16px; }

/* announcement bar */
.announce { background: var(--bar); color: var(--bar-ink); text-align: center; font-size: 13px; font-weight: 600; padding-block: 6px; display: flex; justify-content: center; align-items: center; gap: 8px; padding-inline: 16px; }
.announce svg { width: 14px; height: 14px; fill: var(--lime); flex: none; }

/* contact strip */
.strip { background: var(--lime); color: var(--lime-ink); font-size: 13px; font-weight: 500; }
.strip .wrap { display: flex; justify-content: space-between; align-items: center; gap: 8px 24px; flex-wrap: wrap; padding-block: 8px; }
.strip ul { display: flex; flex-wrap: wrap; gap: 6px 28px; list-style: none; margin: 0; padding: 0; }
.strip li { display: flex; align-items: center; gap: 8px; min-width: 0; }
.strip li svg { width: 15px; height: 15px; fill: currentColor; flex: none; }
.strip li span { overflow-wrap: anywhere; }
.socials { display: flex; gap: 14px; }
.socials a { width: 22px; height: 22px; display: grid; place-items: center; font-size: 12px; font-weight: 700; border-radius: 50%; background: var(--lime-ink); color: var(--lime); }
.socials a:hover { transform: translateY(-1px); }

/* nav */
.nav { padding-block: 16px; }
.nav .wrap { display: flex; align-items: center; gap: 20px; }
.logo { display: flex; align-items: stretch; border: 2px solid var(--lime); background: var(--card); border-radius: 3px; flex: none; }
.logo b { font-family: var(--font-display); font-weight: 400; font-size: 30px; letter-spacing: .02em; padding: 2px 14px; line-height: 1.2; display: flex; align-items: center; }
.logo i { font-style: normal; background: var(--lime); color: var(--lime-ink); font-size: 11px; font-weight: 600; line-height: 1.2; padding: 4px 10px; display: flex; flex-direction: column; justify-content: center; letter-spacing: .03em; }
.logo i strong { font-family: var(--font-display); font-weight: 400; font-size: 20px; line-height: 1; }
.pill-nav { flex: 1; min-width: 0; background: var(--lime-soft); border-radius: 999px; padding: 8px 10px; }
.pill-nav ul { display: flex; justify-content: center; gap: 4px 26px; list-style: none; margin: 0; padding: 0; overflow-x: auto; scrollbar-width: none; }
.pill-nav ul::-webkit-scrollbar { display: none; }
.pill-nav a { display: block; font-size: 12.5px; font-weight: 600; padding: 4px 6px; white-space: nowrap; }
.pill-nav a:hover, .pill-nav a[aria-current] { color: var(--lime-text); }
.cta-pill { flex: none; background: var(--lime); color: var(--lime-ink); font-weight: 700; font-size: 14px; letter-spacing: .02em; text-transform: uppercase; padding: 14px 30px; border-radius: 999px; box-shadow: var(--shadow); }
.cta-pill:hover { transform: translateY(-1px); }

/* hero */
.hero { padding-block: 56px 72px; display: grid; grid-template-columns: minmax(0, 1.12fr) minmax(0, .88fr); gap: 56px; align-items: center; }
.badge { display: inline-flex; align-items: center; gap: 8px; background: var(--lime-tint); color: var(--lime-text); font-size: 12px; font-weight: 600; letter-spacing: .04em; text-transform: uppercase; padding: 10px 16px; border-radius: 10px; border: 1px solid var(--lime-soft); max-width: 100%; }
.badge i { width: 8px; height: 8px; border-radius: 50%; background: var(--lime); flex: none; }
.hero h1 { font-family: var(--font-display); font-weight: 400; text-transform: uppercase; font-size: clamp(52px, 8.6vw, 98px); line-height: .96; letter-spacing: .005em; margin: 28px 0 0; text-wrap: balance; }
.hero h1 em { font-style: normal; color: var(--lime); }
.kicker { font-size: 18px; letter-spacing: .02em; margin-top: 22px; color: var(--fg); }
.hero .copy { margin-top: 26px; display: grid; gap: 14px; max-width: 54ch; color: var(--muted); font-size: 16px; }
.hero .copy strong { color: var(--fg); }
.btns { display: flex; flex-wrap: wrap; gap: 14px; margin-top: 30px; }
.btn { display: inline-flex; align-items: center; justify-content: center; gap: 8px; padding: 15px 30px; border-radius: 999px; font-weight: 600; font-size: 14.5px; border: 1.5px solid transparent; box-shadow: var(--shadow); white-space: nowrap; }
.btn:hover { transform: translateY(-1px); }
.btn.wa { background: var(--wa); color: var(--wa-ink); }
.btn.dark { background: var(--btn-dark); color: var(--btn-dark-ink); }
.btn.line { background: var(--card); color: var(--fg); border-color: var(--lime); }
.btn svg { width: 16px; height: 16px; fill: currentColor; }

.stat-card { margin-top: 28px; background: var(--card); border: 1px solid var(--line); border-radius: 10px; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); box-shadow: var(--shadow); }
.stat-card div { padding: 18px 8px; text-align: center; border-left: 1px solid var(--line); min-width: 0; }
.stat-card div:first-child { border-left: 0; }
.stat-card strong { display: block; font-size: 26px; font-weight: 700; line-height: 1.2; font-variant-numeric: tabular-nums; }
.stat-card span { display: block; font-size: 13px; color: var(--muted); line-height: 1.3; }

/* photo card */
.visual { position: relative; padding: 24px 30px 30px 6px; min-width: 0; }
.visual .back { position: absolute; inset: 14px 0 6px 40px; background: var(--lime-soft); border-radius: 36px; transform: rotate(3.5deg); transform-origin: bottom right; }
.frame { position: relative; background: var(--card); border-radius: 30px; padding: 14px; box-shadow: var(--shadow); }
.photo { position: relative; aspect-ratio: 4 / 5; border-radius: 22px; overflow: hidden; background: linear-gradient(160deg, #3A4A63 0%, #1B2638 100%); display: grid; align-items: end; }
.photo svg { width: 100%; height: auto; display: block; }
.photo .hint { position: absolute; left: 0; right: 0; top: 16px; text-align: center; color: rgba(255,255,255,.55); font-size: 12px; letter-spacing: .08em; text-transform: uppercase; }
.float { position: absolute; background: var(--card); border-radius: 16px; padding: 12px 22px 12px 16px; box-shadow: var(--shadow); border: 1px solid var(--line); }
.float small { display: block; font-size: 12px; color: var(--muted); font-weight: 500; line-height: 1.3; }
.float strong { display: block; font-size: 22px; font-weight: 700; line-height: 1.3; }
.float.a { left: -6px; top: 22%; }
.float.b { right: 0; bottom: 8%; }

/* about section */
.about-sec { padding-block: 40px 96px; display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, .9fr); gap: 56px; align-items: start; }
.eyebrow { color: var(--lime-text); font-size: 13px; font-weight: 600; letter-spacing: .04em; text-transform: uppercase; }
.about-sec h2 { font-family: var(--font-display); font-weight: 400; text-transform: uppercase; font-size: clamp(42px, 6.4vw, 68px); line-height: 1; letter-spacing: .005em; margin: 14px 0 24px; text-wrap: balance; }
.about-sec .text p { margin: 0 0 14px; color: var(--muted); max-width: 62ch; }
.about-sec .text strong { color: var(--fg); }
.callout { margin-top: 26px; background: var(--lime-tint); border: 1px solid var(--lime); border-radius: 22px; padding: 16px 22px; font-weight: 600; font-style: italic; font-size: 15px; line-height: 1.5; max-width: 62ch; }
.links { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 24px; }
.links a { background: var(--card); border-radius: 10px; padding: 10px 16px; font-size: 13px; font-weight: 500; display: inline-flex; align-items: center; gap: 8px; box-shadow: var(--shadow); }
.links a:hover { transform: translateY(-1px); }
.links i { font-style: normal; width: 20px; height: 20px; border-radius: 5px; color: #fff; font-size: 10px; font-weight: 700; display: grid; place-items: center; flex: none; }
.links .yt i { background: #E11D1D; }
.links .li i { background: #0A66C2; border-radius: 50%; }
.links .fb i { background: #1877F2; border-radius: 50%; }
.links .ig i { background: #C13584; }
.photo.wide { aspect-ratio: 9 / 10; border-radius: 10px; box-shadow: var(--shadow); }
/* trusted-by tabs */
.band { background: color-mix(in srgb, var(--card) 55%, var(--bg1)); padding-block: 56px 64px; }
.sec-title { font-family: var(--font-display); font-weight: 400; text-transform: uppercase; font-size: clamp(40px, 6vw, 62px); line-height: 1; letter-spacing: .005em; margin: 12px 0 14px; text-wrap: balance; }
.sec-sub { font-size: 14.5px; color: var(--muted); max-width: 60ch; }
.tabs { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 26px; }
.tab { font-family: inherit; font-size: 12.5px; font-weight: 500; background: var(--card); color: var(--muted); border: 0; border-radius: 10px; padding: 9px 16px; cursor: pointer; box-shadow: 0 1px 2px rgba(15,30,60,.08); }
.tab[aria-selected="true"] { background: var(--btn-dark); color: var(--btn-dark-ink); font-weight: 600; }
.tab:hover { color: var(--fg); }
.tab[aria-selected="true"]:hover { color: var(--btn-dark-ink); }
.tab-panel { margin-top: 20px; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px 16px; }
.pill-item { background: var(--card); border-radius: 10px; padding: 10px 16px; font-size: 13px; display: flex; align-items: baseline; gap: 10px; min-width: 0; box-shadow: 0 1px 2px rgba(15,30,60,.06); }
.pill-item::before { content: ""; width: 7px; height: 7px; border-radius: 50%; background: var(--lime); flex: none; align-self: center; }
.pill-item span { overflow-wrap: anywhere; }
.pill-item small { color: var(--muted); font-size: 12px; margin-left: auto; text-align: right; flex: none; }
a.pill-item:hover { outline: 1.5px solid var(--lime); }

/* reviews */
.reviews { padding-block: 64px 88px; }
.rv-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; margin-top: 28px; }
.rv { background: var(--card); border: 1.5px solid var(--lime); border-radius: 16px; padding: 22px; display: flex; flex-direction: column; gap: 14px; min-width: 0; }
.num { width: 32px; height: 32px; border-radius: 10px; background: var(--lime-tint); display: grid; place-items: center; font-weight: 700; font-size: 13px; }
.tagpill { align-self: flex-start; display: inline-flex; align-items: center; gap: 8px; background: var(--lime-tint); color: var(--lime-text); font-size: 11px; font-weight: 600; letter-spacing: .04em; text-transform: uppercase; padding: 6px 14px; border-radius: 999px; max-width: 100%; }
.tagpill::before { content: ""; width: 6px; height: 6px; border-radius: 50%; background: var(--lime); flex: none; }
.rv h3 { font-size: 16px; font-weight: 600; line-height: 1.35; margin: 0; }
.by { font-size: 13px; font-weight: 500; display: flex; align-items: center; gap: 8px; }
.by svg { width: 14px; height: 14px; fill: currentColor; flex: none; }
.rv blockquote { margin: 0; font-style: italic; font-size: 14px; line-height: 1.6; color: var(--muted); }
.rv .foot { margin-top: auto; padding-top: 6px; font-size: 12px; font-weight: 600; color: var(--lime-text); }
.center { display: flex; justify-content: center; margin-top: 28px; }

/* services grid */
.svc-sec { padding-block: 88px 96px; }
.svc-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; margin-top: 28px; }
.svc { background: var(--card); border: 1px solid var(--lime); border-radius: 16px; padding: 24px; display: flex; flex-direction: column; gap: 14px; min-width: 0; box-shadow: var(--shadow); }
.svc .ico2 { width: 44px; height: 44px; border-radius: 12px; background: var(--lime-tint); display: grid; place-items: center; }
.svc .ico2 svg { width: 24px; height: 24px; fill: none; stroke: var(--lime-text); stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.svc h3 { font-size: 20px; font-weight: 600; line-height: 1.2; margin: 6px 0 0; text-wrap: balance; }
.svc p { margin: 0; font-size: 14px; line-height: 1.6; color: var(--muted); }
.svc .go { margin-top: auto; padding-top: 10px; font-size: 14px; font-weight: 500; color: var(--lime-text); }
.svc .go:hover { text-decoration: underline; }
.svc .cat { font-size: 11px; font-weight: 600; letter-spacing: .06em; text-transform: uppercase; color: var(--muted); }
.svc-head { display: flex; justify-content: space-between; align-items: center; gap: 12px; }

/* how I work + skills */
.work-sec { padding-block: 72px 88px; }
.work-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 56px; align-items: start; }
.work-grid h2 { font-family: var(--font-display); font-weight: 400; text-transform: uppercase; font-size: clamp(40px, 5.6vw, 60px); line-height: 1; letter-spacing: .005em; margin: 12px 0 0; text-wrap: balance; }
.steps { margin-top: 36px; border-top: 1px solid var(--line); }
.step { padding: 26px 0 26px 24px; border-bottom: 1px solid var(--line); }
.step h3 { font-family: var(--font-display); font-weight: 400; font-size: 24px; letter-spacing: .02em; line-height: 1.1; margin: 0 0 8px; }
.step p { margin: 0; font-size: 14px; color: var(--muted); max-width: 52ch; }
.skills-card { margin-top: 36px; background: var(--card); border-radius: 16px; padding: 40px 32px 44px; box-shadow: var(--shadow); text-align: center; }
.skills-card h3 { font-size: clamp(22px, 3vw, 28px); font-weight: 600; line-height: 1.3; margin: 0 0 14px; text-wrap: balance; }
.skills-card > p { margin: 0 auto; font-size: 14.5px; color: var(--muted); max-width: 44ch; }
.chips { display: flex; flex-wrap: wrap; justify-content: center; gap: 12px; margin-top: 32px; }
.chips span { background: color-mix(in srgb, var(--fg) 9%, var(--card)); color: var(--fg); font-size: 12px; font-weight: 500; letter-spacing: .03em; text-transform: uppercase; padding: 9px 20px; border-radius: 999px; }
@media (max-width: 860px) { .work-grid { grid-template-columns: minmax(0, 1fr); gap: 48px; } .work-sec { padding-block: 56px 64px; } .skills-card { padding: 32px 20px 36px; } }

/* how I work + skills */
.work-sec { padding-block: 88px 96px; }
.two { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 56px; align-items: start; }
.two > div { min-width: 0; }
.steps { margin-top: 36px; border-top: 1px solid var(--line); }
.step { padding: 26px 8px 26px 24px; border-bottom: 1px solid var(--line); }
.step h3 { font-family: var(--font-display); font-weight: 400; font-size: 28px; letter-spacing: .01em; line-height: 1.1; margin: 0 0 8px; }
.step p { margin: 0; font-size: 14px; line-height: 1.6; color: var(--muted); max-width: 52ch; }
.skill-card { background: var(--card); border-radius: 16px; padding: 40px 28px 44px; text-align: center; box-shadow: var(--shadow); margin-top: 36px; }
.skill-card h3 { font-size: clamp(22px, 3vw, 28px); font-weight: 600; line-height: 1.3; margin: 0; text-wrap: balance; }
.skill-card > p { margin: 14px auto 0; font-size: 15px; color: var(--muted); max-width: 44ch; }
.chips2 { display: flex; flex-wrap: wrap; justify-content: center; gap: 12px; margin-top: 32px; }
.chip2 { background: color-mix(in srgb, var(--fg) 8%, var(--card)); font-size: 12.5px; font-weight: 500; letter-spacing: .03em; text-transform: uppercase; padding: 10px 20px; border-radius: 999px; }
@media (max-width: 860px) { .work-sec { padding-block: 56px 64px; } .two { grid-template-columns: minmax(0, 1fr); gap: 48px; } .step { padding-left: 4px; } .skill-card { padding-inline: 18px; } }

/* call-to-action band */
.cta-lime { background: var(--lime); color: var(--lime-ink); text-align: center; padding-block: 64px 72px; }
.cta-lime h2 { font-family: var(--font-display); font-weight: 400; text-transform: uppercase; font-size: clamp(44px, 7.4vw, 80px); line-height: 1; letter-spacing: .005em; margin: 0; text-wrap: balance; }
.cta-lime h2 span { color: #FFFFFF; }
.cta-lime .sub { margin: 22px auto 0; max-width: 60ch; font-size: 14px; font-weight: 700; letter-spacing: .02em; text-transform: uppercase; }
.cta-lime .btns { justify-content: center; margin-top: 36px; }
.cta-lime .btn { min-width: 240px; box-shadow: none; }
.cta-lime .btn.blk { background: #000000; color: #FFFFFF; }
.cta-lime .btn.wht { background: var(--card); color: var(--fg); }
@media (max-width: 620px) { .cta-lime { padding-block: 48px 56px; } .cta-lime .btn { min-width: 0; } }

/* dark differentiator band (black in both themes) */
:root { --night: #000000; --night-card: #0E0E0E; --night-ink: #FFFFFF; --night-muted: #8F979F; --night-lime: #A99DFF; --night-line: #1C1C1C; }
.night { background: var(--night); color: var(--night-ink); padding-block: 96px; }
.night .grid { display: grid; grid-template-columns: minmax(0, .92fr) minmax(0, 1.08fr); gap: 56px; align-items: center; }
.night .eyebrow { color: var(--night-lime); }
.night h2 { font-family: var(--font-display); font-weight: 400; text-transform: uppercase; font-size: clamp(44px, 6.6vw, 72px); line-height: 1; letter-spacing: .005em; margin: 18px 0 22px; text-wrap: balance; }
.night .lead { font-size: 16px; max-width: 46ch; color: var(--night-ink); }
.night .cards { display: grid; gap: 16px; min-width: 0; }
.night .card { background: var(--night-card); border: 1px solid var(--night-line); border-radius: 22px; padding: 22px 26px; display: grid; grid-template-columns: 40px minmax(0, 1fr); gap: 18px; align-items: start; }
.night .ico { width: 40px; height: 40px; border-radius: 12px; background: #1E1A3C; display: grid; place-items: center; }
.night .ico svg { width: 22px; height: 22px; fill: none; stroke: var(--night-lime); stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.night h3 { font-family: var(--font-display); font-weight: 400; text-transform: uppercase; font-size: 22px; letter-spacing: .02em; line-height: 1.15; margin: 0 0 6px; }
.night .card p { margin: 0; font-size: 14px; color: var(--night-muted); line-height: 1.55; }
@media (max-width: 860px) { .night { padding-block: 64px; } .night .grid { grid-template-columns: minmax(0, 1fr); gap: 36px; } .night .card { padding: 18px 20px; gap: 14px; } }

@media (max-width: 960px) { .tab-panel, .rv-grid, .svc-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 620px) { .svc-sec { padding-block: 56px 64px; } .tab-panel, .rv-grid, .svc-grid { grid-template-columns: minmax(0, 1fr); } .band { padding-block: 44px 48px; } .reviews { padding-block: 48px 64px; } }
@media (max-width: 860px) {
  .about-sec { grid-template-columns: minmax(0, 1fr); gap: 40px; padding-block: 8px 64px; }
  .about-sec .photo.wide { max-width: 520px; width: 100%; }
}
@media (prefers-reduced-motion: reduce) { .links a:hover { transform: none; } }

@media (max-width: 1020px) {
  .nav .wrap { flex-wrap: wrap; }
  .pill-nav { order: 3; flex-basis: 100%; }
  .pill-nav ul { justify-content: flex-start; }
  .cta-pill { margin-left: auto; }
}
@media (max-width: 860px) {
  .hero { grid-template-columns: minmax(0, 1fr); gap: 48px; padding-block: 36px 56px; }
  .visual { max-width: 460px; margin-inline: auto; width: 100%; }
}
@media (max-width: 600px) {
  .strip li.addr { display: none; }
  .stat-card { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .stat-card div:nth-child(3) { border-left: 0; }
  .stat-card div:nth-child(n+3) { border-top: 1px solid var(--line); }
  .btn { flex: 1 1 100%; }
  .logo b { font-size: 26px; padding-inline: 10px; }
  .cta-pill { padding: 12px 20px; font-size: 13px; }
  .float.a { left: 0; }
}
@media (prefers-reduced-motion: reduce) { .btn:hover, .cta-pill:hover, .socials a:hover { transform: none; } }

/* google reviews carousel */
.g-sec{padding-block:72px 40px}
.g-head{text-align:center}
.g-head .sec-sub{margin-inline:auto}
.g-wrap{position:relative;margin-top:36px}
.g-track{display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding:4px 2px 10px}
.g-track::-webkit-scrollbar{display:none}
.g-card{flex:0 0 calc((100% - 48px)/4);scroll-snap-align:start;background:var(--card);border:1.5px solid var(--lime);border-radius:20px;padding:18px 22px 14px;display:flex;flex-direction:column;gap:10px;min-width:0;min-height:200px}
.g-top{display:flex;align-items:center;gap:10px}
.g-av{width:34px;height:34px;border-radius:50%;background:var(--lime-soft);color:var(--lime-text);font-weight:700;font-size:13px;display:grid;place-items:center;flex:none}
.g-name{font-size:13px;font-weight:600;line-height:1.2}
.g-name small{display:block;font-size:11.5px;font-weight:400;color:var(--muted)}
.g-logo{margin-left:auto;width:18px;height:18px;flex:none}
.g-stars{display:flex;align-items:center;gap:2px;color:#F5B800}
.g-stars svg{width:15px;height:15px;fill:currentColor}
.g-stars .ok{width:14px;height:14px;fill:#2F7BF5;margin-left:6px}
.g-card p{margin:0;font-size:13.5px;line-height:1.55}
.g-card .more{font-size:12px;color:var(--muted)}
.g-q{margin-top:auto;align-self:flex-end;font-family:Georgia,serif;font-size:44px;line-height:.6;color:var(--lime-text);opacity:.6}
.g-arrow{position:absolute;top:50%;width:34px;height:34px;border-radius:50%;border:1px solid var(--lime);background:var(--card);color:var(--fg);cursor:pointer;display:grid;place-items:center;box-shadow:var(--shadow);transform:translateY(-50%)}
.g-arrow.l{left:-16px}.g-arrow.r{right:-16px}
.g-arrow svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}

/* faq */
.faq-sec{padding-block:56px 96px;display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:56px;align-items:start}
.faq-sec h2{font-family:var(--font-display);font-weight:400;text-transform:uppercase;font-size:clamp(42px,6vw,64px);line-height:1;margin:14px 0 22px;text-wrap:balance}
.faq-sec .lead{color:var(--muted);max-width:40ch;margin:0 0 28px}
.faq-list{display:grid;gap:14px}
.faq-list details{background:var(--lime-tint);border-left:2px solid var(--lime);border-radius:8px;padding:0 22px}
.faq-list summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:16px;font-weight:600;font-size:16px;padding:20px 0}
.faq-list summary::-webkit-details-marker{display:none}
.faq-list summary svg{width:16px;height:16px;flex:none;fill:none;stroke:var(--muted);stroke-width:2;stroke-linecap:round;stroke-linejoin:round;transition:transform .2s}
.faq-list details[open] summary svg{transform:rotate(180deg)}
.faq-list details p{margin:0;padding:0 0 20px;color:var(--muted);font-size:14.5px;max-width:62ch}
@media (max-width:1020px){.g-card{flex-basis:calc((100% - 16px)/2)}}
@media (max-width:860px){.faq-sec{grid-template-columns:minmax(0,1fr);gap:32px;padding-block:40px 64px}}
@media (max-width:560px){.g-card{flex-basis:88%}.g-arrow{display:none}.g-sec{padding-block:48px 24px}}

/* footer */
.ft{background:#000;color:#fff;padding-block:64px 0}
.ft-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1.1fr) minmax(0,.8fr);gap:56px;padding-bottom:48px}
.ft .logo{display:inline-flex;background:#fff;color:#0A0F1A;box-shadow:0 0 28px rgba(88,70,210,.5)}
.ft .logo b{font-size:34px}
.ft-bio{margin:22px 0 0;font-size:14px;line-height:1.7;color:#E8ECEF;max-width:46ch}
.ft h3{font-size:20px;font-weight:600;margin:0 0 16px;line-height:1.3}
.ft h3.sp{margin-top:26px}
.ft-svc{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:minmax(0,1fr);gap:12px}
.ft-svc a,.ft-contact a,.ft-contact span{font-size:14px;color:#A9B4C2;overflow-wrap:anywhere}
.ft-svc a:hover,.ft-contact a:hover{color:#A99DFF}
.ft-contact{display:grid;gap:6px}
.ft-soc{display:flex;gap:10px}
.ft-soc a{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;color:#fff}
.ft-soc a:hover{color:#A99DFF}
.ft-soc svg{width:22px;height:22px;fill:currentColor}
.ft-soc svg.st{fill:none;stroke:currentColor;stroke-width:2}
.ft-bar{border-top:1px solid #1C1C1C;padding-block:20px;text-align:center;font-size:13px;color:#8F979F}
@media (max-width:960px){.ft-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:40px}.ft-grid>div:first-child{grid-column:1/-1}}
@media (max-width:560px){.ft{padding-top:48px}.ft-grid{grid-template-columns:minmax(0,1fr)}}

.shero{padding-block:56px 72px;display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:56px;align-items:center}
.shero--solo{grid-template-columns:minmax(0,1fr);padding-block:56px 40px}
.shero-txt{min-width:0}
.shero .eyebrow{display:block;color:var(--lime);letter-spacing:.14em}
.shero h1{font-family:var(--font-display);font-weight:400;text-transform:uppercase;color:var(--lime);font-size:clamp(48px,7.4vw,104px);line-height:.96;letter-spacing:.005em;margin:18px 0 0;max-width:none;text-wrap:balance}
.shero p{margin:28px 0 0;max-width:44ch;font-size:clamp(16px,1.6vw,20px);line-height:1.65;color:var(--muted)}
.shero .btns{margin-top:36px}
.btn.pri{background:var(--lime);color:var(--lime-ink);box-shadow:0 14px 28px -10px rgba(88,70,210,.55)}
.btn.out{background:transparent;color:var(--lime);border-color:var(--lime);box-shadow:none}
.shero-card{background:var(--card);border:1px solid color-mix(in srgb,var(--fg) 10%,transparent);border-radius:20px;padding:28px;box-shadow:var(--shadow);min-width:0}
.shero-card .eyebrow{display:block;color:var(--lime);letter-spacing:.14em}
.ticks{list-style:none;margin:18px 0 0;padding:0;display:grid;gap:12px}
.ticks li{display:flex;align-items:center;gap:12px;font-weight:500;font-size:15px;line-height:1.4}
.ticks li::before{content:"\2713";flex:none;width:22px;height:22px;border-radius:50%;background:var(--lime-tint);color:var(--lime);display:grid;place-items:center;font-size:12px;font-weight:700}
.shero-foot{margin-top:22px;padding-top:18px;border-top:1px dashed color-mix(in srgb,var(--lime) 45%,transparent);display:flex;align-items:baseline;justify-content:space-between;gap:12px;color:var(--muted);font-size:14px}
.shero-foot strong{font-family:var(--font-display);font-weight:400;font-size:40px;line-height:1;color:var(--lime);text-transform:uppercase}
.frame img.ph{display:block;width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:22px;background:var(--lime-tint)}
@media (max-width:860px){.shero{grid-template-columns:minmax(0,1fr);gap:36px;padding-block:36px 48px}.shero--solo{padding-block:36px 24px}.visual{max-width:460px;margin-inline:auto;width:100%;overflow:clip}.float.a{left:0}}
@media (max-width:560px){.shero .btns .btn{width:100%}.shero-card{padding:22px}}

.wdo{padding-block:56px 72px;border-bottom:1px solid color-mix(in srgb,var(--fg) 12%,transparent)}
.wdo .wrap{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,.65fr);gap:20px 64px;align-items:end}
.wdo .wrap>.eyebrow{grid-column:1/-1}
.wdo-side{display:grid;gap:16px;min-width:0}
.wdo .eyebrow,.inc .eyebrow{display:block;color:var(--lime);letter-spacing:.14em;text-transform:uppercase}
.wdo h2{font-family:var(--font-display);font-weight:400;text-transform:uppercase;color:var(--lime);font-size:clamp(34px,5vw,56px);line-height:1.02;margin:0;max-width:none;text-wrap:balance}
.wdo p{margin:0;max-width:60ch;font-size:clamp(16px,1.5vw,18px);line-height:1.75;color:var(--muted)}
.inc{background:var(--lime-tint);padding-block:72px 88px}
.inc-grid{margin-top:36px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;background:color-mix(in srgb,var(--fg) 12%,transparent);border:1px solid color-mix(in srgb,var(--fg) 12%,transparent)}
.inc-grid article{background:var(--card);padding:30px 28px 34px;min-width:0}
.inc-grid h3{margin:0 0 12px;font-size:18px;font-weight:600;line-height:1.3}
.inc-grid p{margin:0;font-size:15px;line-height:1.7;color:var(--muted)}
.inc-grid .fill{grid-column:span 2;background:var(--lime);color:var(--lime-ink);padding:30px 32px;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;gap:12px;min-width:0}
.inc-grid .fill h3{margin:0;font-family:var(--font-display);font-weight:400;text-transform:uppercase;font-size:clamp(30px,3.4vw,44px);line-height:1;color:var(--lime-ink)}
.inc-grid .fill p{margin:0;color:var(--lime-ink);opacity:.9;max-width:42ch}
.inc-grid .fill .btn{margin-top:8px;background:var(--lime-ink);color:var(--lime)}
@media (max-width:1020px){.inc-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.inc-grid .fill{display:none}}
@media (max-width:860px){.wdo .wrap{grid-template-columns:minmax(0,1fr);gap:16px}}
@media (max-width:560px){.inc-grid{grid-template-columns:minmax(0,1fr)}.wdo,.inc{padding-block:48px 56px}}

.apr{padding-block:72px 88px}
.apr .eyebrow{display:block;color:var(--lime);letter-spacing:.14em;text-transform:uppercase}
.apr-grid{margin-top:36px;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));border:1px solid color-mix(in srgb,var(--fg) 12%,transparent)}
.apr-grid article{padding:44px 28px 40px;min-width:0;background:var(--card);border-left:1px solid color-mix(in srgb,var(--fg) 12%,transparent)}
.apr-grid article:first-child{border-left:0}
.apr-grid .n{display:block;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12px;color:var(--lime);opacity:.7;letter-spacing:.06em;margin-bottom:26px}
.apr-grid h3{margin:0 0 12px;font-size:20px;font-weight:600;line-height:1.3}
.apr-grid p{margin:0;font-size:15px;line-height:1.7;color:var(--muted)}
@media (max-width:1020px){.apr-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.apr-grid article{border-left:0;border-top:1px solid color-mix(in srgb,var(--fg) 12%,transparent)}.apr-grid article:nth-child(even){border-left:1px solid color-mix(in srgb,var(--fg) 12%,transparent)}.apr-grid article:nth-child(-n+2){border-top:0}}
@media (max-width:560px){.apr{padding-block:48px 56px}.apr-grid{grid-template-columns:minmax(0,1fr)}.apr-grid article,.apr-grid article:nth-child(even){border-left:0;border-top:1px solid color-mix(in srgb,var(--fg) 12%,transparent);padding:32px 24px}.apr-grid article:first-child{border-top:0}}

.qa{padding-block:72px 96px}
.qa .eyebrow{display:block;color:var(--lime);letter-spacing:.14em;text-transform:uppercase}
.qa h2{font-family:var(--font-display);font-weight:400;text-transform:uppercase;color:var(--lime);font-size:clamp(34px,5vw,56px);line-height:1.02;margin:14px 0 0;text-wrap:balance}
.qa .wrap{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:56px;align-items:start}
.qa-head{min-width:0}
.qa-note{margin:22px 0 24px;color:var(--muted);max-width:36ch}
.qa-list{margin-top:0;max-width:none;min-width:0;border-bottom:1px solid color-mix(in srgb,var(--fg) 12%,transparent)}
.qa-list details{border-top:1px dashed color-mix(in srgb,var(--lime) 45%,transparent)}
.qa-list summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:28px 0;font-size:clamp(16px,1.6vw,19px);font-weight:600;line-height:1.4}
.qa-list summary::-webkit-details-marker{display:none}
.qa-list summary i{position:relative;width:14px;height:14px;flex:none;color:var(--lime)}
.qa-list summary i::before,.qa-list summary i::after{content:"";position:absolute;left:0;top:50%;width:14px;height:1.5px;background:currentColor;transition:transform .2s}
.qa-list summary i::after{transform:rotate(90deg)}
.qa-list details[open] summary i::after{transform:rotate(0)}
.qa-list details p{margin:0;padding:0 40px 28px 0;color:var(--muted);font-size:15.5px;line-height:1.75;max-width:64ch}
@media (max-width:860px){.qa .wrap{grid-template-columns:minmax(0,1fr);gap:28px}}
@media (max-width:560px){.qa{padding-block:48px 64px}.qa-list summary{padding:22px 0}}

.cta2{background:var(--lime);color:var(--lime-ink);padding-block:64px;text-align:center}
.cta2 h2{font-family:var(--font-display);font-weight:400;text-transform:uppercase;font-size:clamp(34px,5vw,56px);line-height:1.02;margin:0 auto;max-width:20ch;text-wrap:balance}
.cta2 p{margin:16px auto 0;max-width:46ch;opacity:.9}
.cta2 .btn{margin-top:28px;background:var(--lime-ink);color:var(--lime)}
.inc-grid a.card{display:block;background:var(--card);padding:30px 28px 34px;min-width:0;color:inherit;text-decoration:none;transition:background .15s}
.inc-grid a.card:hover{background:var(--lime-tint)}
.inc-grid a.card h3{margin:0 0 12px;font-size:18px;font-weight:600}
.inc-grid a.card p{margin:0;font-size:15px;line-height:1.7;color:var(--muted)}
.inc-grid a.card span{display:inline-block;margin-top:16px;color:var(--lime);font-weight:600;font-size:14px}
.inc-grid .ico{width:28px;height:28px;margin-bottom:16px;display:block}
.abt{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:56px;align-items:center;padding-block:24px 72px}
.abt img{width:100%;border-radius:22px;background:var(--lime-tint)}
.abt p{color:var(--muted);line-height:1.8;margin:0 0 18px;max-width:60ch}
.cpage{background:var(--lime-tint);padding-block:56px 80px}
.cgrid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:48px;align-items:start}
.cinfo{display:grid;gap:14px;min-width:0}
.ccard{display:grid;grid-template-columns:44px minmax(0,1fr);gap:16px;align-items:center;background:var(--card);border:1px solid color-mix(in srgb,var(--fg) 12%,transparent);border-radius:14px;padding:18px 20px;color:inherit;text-decoration:none;min-width:0}
a.ccard:hover{border-color:var(--lime)}
.ccard img{width:44px;height:44px;padding:9px;border-radius:12px;background:var(--lime-tint)}
.ccard h3{margin:0;font-size:16px;font-weight:600;line-height:1.3}
.ccard p{margin:2px 0 0;font-size:14.5px;line-height:1.5;color:var(--muted);overflow-wrap:anywhere}
.cform{display:grid;gap:16px;max-width:none;margin:0;padding:32px;background:var(--card);border:1px solid color-mix(in srgb,var(--fg) 12%,transparent);border-radius:16px;box-shadow:var(--shadow);min-width:0}
.cform .row2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.cform .cnote{margin:0;font-size:14px;line-height:1.6;color:var(--muted)}
.cform label{display:grid;gap:6px;font-size:14px;font-weight:600}
.cform input,.cform textarea{font:inherit;padding:14px 16px;border-radius:12px;border:1px solid color-mix(in srgb,var(--fg) 20%,transparent);background:var(--card);color:var(--fg)}
.cform textarea{min-height:140px;resize:vertical}
.cform button{justify-self:start;border:0;cursor:pointer}
.crumb{display:block;color:var(--lime);letter-spacing:.14em;text-transform:uppercase}
.crumb a{color:inherit}
@media (max-width:860px){.abt{grid-template-columns:minmax(0,1fr);gap:28px}.cgrid{grid-template-columns:minmax(0,1fr);gap:32px}.cpage{padding-block:40px 56px}}
@media (max-width:560px){.cform{padding:22px 18px}.cform .row2{grid-template-columns:minmax(0,1fr)}}

.pill-nav ul{overflow:visible;flex-wrap:wrap;align-items:center}
.pill-nav li{position:relative;list-style:none}
.dd-toggle{font:inherit;font-size:12.5px;font-weight:600;background:none;border:0;color:inherit;cursor:pointer;padding:4px 6px;display:flex;align-items:center;gap:6px;white-space:nowrap}
.dd-toggle:hover,.dd-toggle[aria-current]{color:var(--lime-text)}
.dd-toggle svg{width:10px;height:10px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;transition:transform .2s}
.has-dd:hover .dd-toggle svg{transform:rotate(180deg)}
.pill-nav ul.dd{display:none;position:absolute;top:calc(100% + 10px);left:50%;transform:translateX(-50%);min-width:250px;margin:0;padding:8px;flex-direction:column;gap:2px;background:var(--card);border:1px solid color-mix(in srgb,var(--fg) 12%,transparent);border-radius:14px;box-shadow:0 18px 40px -12px rgba(0,0,0,.28);z-index:60}
.pill-nav ul.dd::before{content:"";position:absolute;left:0;right:0;top:-14px;height:14px}
.dd a{display:flex;align-items:center;justify-content:flex-start;text-align:left;gap:10px;padding:10px 12px;border-radius:8px;font-size:13.5px}
.dd a:hover{background:var(--lime-tint)}
a.soon:hover{cursor:default}
.dd a.soon::after{content:"Soon";margin-left:auto;font-size:10px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--muted);background:var(--lime-tint);padding:2px 8px;border-radius:999px}
.has-dd:hover>.dd,.has-dd:has(.dd-toggle:focus-visible)>.dd,.has-dd:has(.dd a:focus-visible)>.dd{display:flex}
.nav-toggle{display:none;width:44px;height:44px;border:1.5px solid var(--lime);background:var(--card);border-radius:12px;cursor:pointer;flex:none;flex-direction:column;justify-content:center;align-items:center;gap:5px;padding:0}
.nav-toggle span{display:block;width:20px;height:2px;background:var(--lime);border-radius:2px;transition:transform .2s,opacity .2s}
.nav.open .nav-toggle span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.nav.open .nav-toggle span:nth-child(2){opacity:0}
.nav.open .nav-toggle span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
@media (max-width:1100px){
.nav .wrap{flex-wrap:wrap}
.nav-toggle{display:flex}
.cta-pill{margin-left:auto;order:1}
.nav-toggle{order:2}
.pill-nav{display:none;order:3;flex-basis:100%;border-radius:20px;padding:8px 14px}
.nav.open .pill-nav{display:block}
.pill-nav ul{flex-direction:column;align-items:stretch;justify-content:flex-start;gap:0}
.pill-nav li+li{border-top:1px solid color-mix(in srgb,var(--fg) 10%,transparent)}
.pill-nav a,.dd-toggle{padding:13px 4px;font-size:14px;width:100%}
.dd-toggle{justify-content:space-between}
.dd-toggle svg{width:14px;height:14px}
.pill-nav ul.dd{position:static;transform:none;min-width:0;box-shadow:none;border:0;background:transparent;padding:0 0 8px 12px}
.pill-nav ul.dd::before{display:none}
.has-dd:hover>.dd{display:none}
.has-dd.open>.dd{display:flex}
.has-dd:hover .dd-toggle svg{transform:none}
.has-dd.open .dd-toggle svg{transform:rotate(180deg)}
}
@media (max-width:560px){.nav .cta-pill{display:none}.nav-toggle{margin-left:auto}}

.shero h1{max-width:none}

.wdo .wrap{align-items:start}
.cform input,.cform textarea{width:100%;min-width:0;box-sizing:border-box}
.cform .row2>*{min-width:0}

/* ===== match home colour system on inner pages ===== */
.shero .eyebrow{display:inline-flex;align-items:center;gap:8px;background:var(--lime-tint);color:var(--lime-text);font-size:12px;font-weight:600;letter-spacing:.04em;padding:10px 16px;border-radius:10px;border:1px solid var(--lime-soft)}
.shero .eyebrow::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--lime);flex:none}
.shero h1{color:var(--fg);margin-top:28px}
.shero h1 em,.wdo h2 em,.qa h2 em{font-style:normal;color:var(--lime)}
.wdo h2,.qa h2{color:var(--fg)}
.wdo .eyebrow,.inc .eyebrow,.qa .eyebrow{color:var(--lime-text);letter-spacing:.04em}
.wdo{border-bottom:0}
.shero-card{border:1px solid var(--lime);border-radius:16px}
.shero-foot{border-top-color:var(--lime-soft)}
/* what's included: band + bordered cards like Services */
.inc{background:color-mix(in srgb,var(--card) 55%,var(--bg1))}
.sec-h{font-family:var(--font-display);font-weight:400;text-transform:uppercase;color:var(--fg);font-size:clamp(34px,5vw,56px);line-height:1.02;margin:12px 0 0;text-wrap:balance}
.inc-grid{background:none;border:0;gap:18px}
.inc-grid article{border:1px solid var(--lime);border-radius:16px;box-shadow:var(--shadow)}
.inc-grid .fill{border:0;border-radius:16px;background:var(--lime)}
/* approach: black band like "Why work with me" */
.apr{background:var(--night);color:var(--night-ink)}
.apr .eyebrow{color:var(--night-lime);letter-spacing:.04em}
.apr .sec-h{color:var(--night-ink)}
.apr-grid{border:0;gap:16px}
.apr-grid article,.apr-grid article:first-child,.apr-grid article:nth-child(even){background:var(--night-card);border:1px solid var(--night-line);border-radius:22px;padding:30px 24px}
.apr-grid .n{color:var(--night-lime);opacity:1;margin-bottom:18px}
.apr-grid h3{color:var(--night-ink)}
.apr-grid p{color:var(--night-muted)}
.qa-list details{border-top-color:var(--lime-soft)}
@media (max-width:1020px){.apr-grid article,.apr-grid article:nth-child(even){border:1px solid var(--night-line)}}
@media (max-width:560px){.apr-grid article,.apr-grid article:nth-child(even){border:1px solid var(--night-line);padding:26px 22px}}

/* photo slots: real image replaces placeholder automatically */
.photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}

/* about page redesign */
.stat-card.s3{grid-template-columns:repeat(3,minmax(0,1fr))}
.ab-lead{margin:24px 0 0;max-width:52ch;font-size:16px;color:var(--muted)}
.hero-txt{min-width:0}
.hero-txt h1{font-family:var(--font-display);font-weight:400;text-transform:uppercase;font-size:clamp(46px,6.6vw,84px);line-height:.98;letter-spacing:.005em;margin:26px 0 0;text-wrap:balance}
.hero-txt h1 em{font-style:normal;color:var(--lime)}
.abs{padding-block:40px 88px}
.abs .wrap{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:56px;align-items:start}
.abs-text{min-width:0}
.abs .eyebrow{display:block;color:var(--lime-text)}
.abs h2{font-family:var(--font-display);font-weight:400;text-transform:uppercase;font-size:clamp(36px,5.2vw,58px);line-height:1.02;margin:14px 0 22px;text-wrap:balance}
.abs-text p{margin:0 0 14px;color:var(--muted);max-width:62ch}
.abs-text strong{color:var(--fg)}
.abs .callout{margin-top:22px}
.abs-side{display:grid;gap:26px;min-width:0}
.tl-group h3{margin:0 0 12px;font-size:13px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--lime-text)}
.tl{background:var(--card);border:1px solid var(--lime);border-radius:16px;padding:16px 22px;box-shadow:var(--shadow);margin-bottom:12px}
.tl strong{display:block;font-size:16px;font-weight:600;line-height:1.3}
.tl span{display:block;font-size:14px;color:var(--muted);margin-top:2px}
.night .card{color:inherit;text-decoration:none;transition:border-color .15s}
.night .card:hover{border-color:var(--night-lime)}
.night a.btn{display:inline-flex}
.night .btn{background:var(--lime);color:var(--lime-ink)}
@media (max-width:960px){.abs .wrap{grid-template-columns:minmax(0,1fr);gap:36px}}
@media (max-width:560px){.stat-card.s3 strong{font-size:22px}.abs{padding-block:24px 56px}}

/* about: story + why band */
.abs{padding-block:0 72px}
.abs .wrap{grid-template-columns:repeat(2,minmax(0,1fr));gap:40px}
.abs-text,.abs-side{display:none}
.about-sec{padding-top:72px}
.why-dark{background:var(--night);color:var(--night-ink);padding-block:80px}
.why-dark .wrap{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:40px;align-items:center}
.why-pill{display:inline-block;background:#1E1A3C;color:var(--night-lime);font-size:12px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;padding:8px 18px;border-radius:999px}
.why-dark h2{font-family:var(--font-display);font-weight:400;text-transform:uppercase;font-size:clamp(40px,6vw,68px);line-height:1;margin:18px 0 20px;text-wrap:balance}
.why-dark h2 em{font-style:normal;color:var(--night-lime)}
.why-dark p{margin:0;max-width:68ch;color:#E8ECEF}
.why-links{display:flex;flex-wrap:wrap;gap:10px;margin-top:26px}
.why-links a{border:1px solid var(--night-line);background:var(--night-card);color:var(--night-ink);font-size:13px;font-weight:500;padding:9px 16px;border-radius:999px}
.why-links a:hover{border-color:var(--night-lime);color:var(--night-lime)}
.why-btn{background:#fff;color:#0A0F1A;white-space:nowrap}
@media (max-width:860px){.why-dark{padding-block:56px}.why-dark .wrap{grid-template-columns:minmax(0,1fr);gap:28px}.abs .wrap{grid-template-columns:minmax(0,1fr);gap:20px}.about-sec{padding-top:48px}}

/* about: why / work-with two-column */
.wwm{padding-block:16px 88px}
.wwm .wrap{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:56px}
.wwm article{display:flex;gap:22px;align-items:flex-start;min-width:0}
.wwm-ico{flex:none;width:68px;height:68px;border-radius:50%;background:var(--lime);display:grid;place-items:center;box-shadow:var(--shadow)}
.wwm-ico svg{width:34px;height:34px;fill:none;stroke:#fff;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.wwm article>div:last-child{min-width:0}
.wwm h2{font-family:var(--font-display);font-weight:400;text-transform:uppercase;font-size:clamp(32px,4vw,46px);line-height:1.02;margin:6px 0 14px;text-wrap:balance}
.wwm p{margin:0;color:var(--muted);max-width:56ch}
.wwm .btn{margin-top:22px}
@media (max-width:960px){.wwm .wrap{grid-template-columns:minmax(0,1fr);gap:44px}}
@media (max-width:560px){.wwm{padding-block:8px 56px}.wwm article{flex-direction:column;gap:14px}.wwm-ico{width:56px;height:56px}.wwm-ico svg{width:28px;height:28px}}

/* about: faq cards + talk cta */
.qa-about{background:color-mix(in srgb,var(--card) 70%,var(--bg1))}
.qa-about .qa-head h2 em{font-style:normal;color:var(--lime)}
.qa-about .qa-list{border-bottom:0;display:grid;gap:14px}
.qa-about .qa-list details{border:0;background:var(--lime-tint);border-left:3px solid var(--lime);border-radius:12px;padding:0 24px}
.qa-about .qa-list summary{padding:20px 0}
.qa-about .qa-list details p{margin:0;padding:0 0 20px;color:var(--muted);max-width:62ch}
.cta-talk .cta-btns{display:flex;flex-wrap:wrap;gap:14px;justify-content:center;margin-top:30px}
.cta-talk p{max-width:62ch}
.cta-talk .btn.dark{background:#000;color:#fff}
.cta-talk .btn.wa svg{width:16px;height:16px;fill:currentColor}
.cta-talk .btn.wa{background:var(--wa);color:var(--wa-ink)}

/* case study page */
.cs-feature{background:var(--card);border:1px solid var(--lime);border-radius:16px;padding:26px;box-shadow:var(--shadow);display:grid;gap:12px;min-width:0}
.cs-feature .eyebrow{display:block;color:var(--lime-text);margin-bottom:4px}
.cs-feature .pill-item{background:var(--lime-tint);box-shadow:none;justify-content:space-between}
.cs-feature p{margin:6px 0 0;font-size:13px;color:var(--muted)}
.cs-sec{padding-block:24px 80px}
.cs-sec .eyebrow{display:block;color:var(--lime-text)}
.cs-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:28px}
.cs-card{background:var(--card);border:1px solid var(--lime);border-radius:16px;overflow:hidden;box-shadow:var(--shadow);display:flex;flex-direction:column;min-width:0}
.cs-img{aspect-ratio:16/10;background:var(--lime-tint)}
.cs-img img{display:block;width:100%;height:100%;object-fit:cover}
.cs-body{padding:22px;display:flex;flex-direction:column;gap:10px;flex:1}
.cs-body h3{margin:0;font-size:19px;font-weight:600;line-height:1.3}
.cs-body p{margin:0;font-size:14px;color:var(--muted)}
.cs-soon{margin-top:auto;padding-top:6px;font-size:13px;font-weight:600;color:var(--lime-text)}
@media (max-width:960px){.cs-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:620px){.cs-grid{grid-template-columns:minmax(0,1fr)}.cs-sec{padding-block:8px 56px}}

/* case study: browse grid + profile */
.cs2-title{font-family:var(--font-display);font-weight:400;text-transform:uppercase;font-size:clamp(38px,5.4vw,60px);line-height:1;text-align:center;margin:0 0 36px;text-wrap:balance}
.cs2-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:28px;align-items:start}
.cs2-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;min-width:0}
.cs2-card{background:var(--card);border:1px solid var(--lime);border-radius:20px;padding:12px;box-shadow:var(--shadow);display:flex;flex-direction:column;min-width:0}
.cs2-img{position:relative;aspect-ratio:16/10;border-radius:14px;overflow:hidden;background:var(--lime-tint)}
.cs2-img img{display:block;width:100%;height:100%;object-fit:cover}
.cs2-tag{position:absolute;left:12px;top:12px;z-index:1;background:var(--lime);color:var(--lime-ink);font-size:12px;font-weight:600;padding:7px 14px;border-radius:10px}
.cs2-body{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:18px 8px 8px;flex:1}
.cs2-body h3{margin:0;font-size:17px;font-weight:700;line-height:1.35;min-width:0}
.cs2-read{flex:none;opacity:.55;box-shadow:none}
.cs2-profile{background:var(--card);border:1px solid var(--lime);border-radius:20px;padding:26px 22px;text-align:center;box-shadow:var(--shadow);position:sticky;top:24px}
.cs2-ava{width:112px;height:112px;border-radius:50%;overflow:hidden;margin:0 auto 14px;border:3px solid var(--lime-soft);background:var(--lime-tint)}
.cs2-ava img{display:block;width:100%;height:100%;object-fit:cover}
.cs2-profile h3{margin:0 0 6px;font-size:22px;font-weight:700}
.cs2-profile p{margin:0;font-size:13px;color:var(--muted);line-height:1.6}
.cs2-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:22px}
.cs2-stats div{background:var(--lime-tint);border-radius:12px;padding:16px 8px}
.cs2-stats strong{display:block;font-size:22px;font-weight:700;line-height:1.2}
.cs2-stats span{display:block;font-size:12.5px;color:var(--muted)}
@media (max-width:1020px){.cs2-layout{grid-template-columns:minmax(0,1fr)}.cs2-profile{position:static;max-width:420px;margin-inline:auto;width:100%;order:-1}}
@media (max-width:620px){.cs2-grid{grid-template-columns:minmax(0,1fr)}}

/* case study hero: single featured result */
.cs-feature{gap:10px;padding:14px 14px 22px}
.cs-feature .eyebrow{padding:8px 10px 0}
.csf-img{aspect-ratio:16/10;border-radius:12px;overflow:hidden;background:var(--lime-tint)}
.csf-img img{display:block;width:100%;height:100%;object-fit:cover}
.cs-feature h3{margin:6px 10px 0;font-size:20px;font-weight:700;line-height:1.3;color:var(--lime-text)}
.csf-meta{margin:0 10px;font-size:12.5px;color:var(--muted)}
.cs-feature p{margin:2px 10px 0;font-size:14px}

/* testimonials page */
.thero{background:var(--night);color:var(--night-ink);padding-block:72px}
.thero .wrap{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr);gap:48px;align-items:center}
.thero-txt{min-width:0}
.tpill{display:inline-flex;align-items:center;gap:8px;background:#1E1A3C;color:var(--night-lime);font-size:12px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;padding:10px 16px;border-radius:10px}
.tpill i{width:8px;height:8px;border-radius:50%;background:var(--night-lime)}
.thero h1{font-family:var(--font-display);font-weight:400;text-transform:uppercase;font-size:clamp(46px,7vw,92px);line-height:.98;margin:24px 0 0;text-wrap:balance}
.thero h1 em{font-style:normal;color:var(--night-lime)}
.thero p{margin:0 0 14px;color:#E8ECEF;max-width:62ch}
.thero .tkick{margin:22px 0 18px;font-size:17px;color:#fff}
.thero .btns{margin-top:24px}
.tbtn{background:var(--lime);color:var(--lime-ink)}
.tbtn-w{background:#fff;color:#0A0F1A}
.tstats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));background:#fff;color:#0A0F1A;border-radius:10px;margin-top:30px;overflow:hidden}
.tstats div{padding:20px 8px;text-align:center;border-left:1px solid #E1E7EF;min-width:0}
.tstats div:first-child{border-left:0}
.tstats strong{display:block;font-size:26px;font-weight:700;line-height:1.2}
.tstats span{display:block;font-size:13px;color:#3C4656}
.taudit{background:var(--night-card);border:1px solid var(--night-line);border-radius:22px;padding:30px 26px;min-width:0}
.taudit h2{font-family:var(--font-display);font-weight:400;text-transform:uppercase;font-size:clamp(32px,3.6vw,44px);line-height:1;margin:0 0 14px}
.taudit>p{margin:0 0 22px;color:#C9D0D8;font-size:15px}
.audit-form{display:grid;gap:14px}
.audit-form input{width:100%;min-width:0;box-sizing:border-box;background:#2A2A2E;border:1px solid #3A3A40;color:#fff;border-radius:999px;padding:13px 18px;font:inherit;font-size:14px}
.audit-form input::placeholder{color:#9AA3AD}
.audit-form input:focus{outline:2px solid var(--night-lime);outline-offset:1px}
.tsend{background:var(--lime);color:var(--lime-ink);justify-content:center;width:100%;border:0;cursor:pointer}
.audit-form .cnote{margin:0;font-size:13px;color:#C9D0D8}
.tgrid{padding-block:72px 88px}
@media (max-width:960px){.thero .wrap{grid-template-columns:minmax(0,1fr)}.thero{padding-block:48px}}
@media (max-width:560px){.tstats strong{font-size:22px}.thero .btns .btn{width:100%}}

/* testimonials: success stories */
.stories{padding-block:64px 88px}
.st-head{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}
.st-head h2{display:flex;align-items:center;gap:12px;margin:0;font-size:clamp(26px,3.4vw,34px);font-weight:700;line-height:1.2}
.st-head h2 svg{width:30px;height:30px;fill:none;stroke:var(--lime);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.st-filter{display:inline-flex;align-items:center;gap:8px;font-size:14px;color:var(--muted)}
.st-filter svg{width:16px;height:16px;fill:var(--muted);opacity:.6}
.st-chips{display:flex;flex-wrap:wrap;gap:12px;margin-top:26px}
.st-chips .chip{font:inherit;font-size:13px;font-weight:500;background:var(--card);color:var(--fg);border:0;border-radius:999px;padding:11px 22px;cursor:pointer;box-shadow:0 1px 3px rgba(15,30,60,.12)}
.st-chips .chip.on{background:var(--lime);color:var(--lime-ink);font-weight:600;box-shadow:var(--shadow)}
.st-note{margin-top:20px;background:var(--lime-tint);border:1px solid var(--lime-soft);border-radius:8px;padding:12px 18px;text-align:center;font-size:13.5px;font-weight:500;color:var(--lime-text)}
.st-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin-top:26px;align-items:start}
.story[hidden]{display:none}
.story{background:var(--card);border-radius:14px;padding:22px;box-shadow:var(--shadow);border:1px solid var(--line);display:flex;flex-direction:column;gap:12px;min-width:0}
.stag{align-self:flex-start;display:inline-flex;align-items:center;gap:6px;background:var(--lime-tint);color:var(--lime-text);font-size:11.5px;font-weight:600;padding:6px 12px;border-radius:999px}
.stag svg{width:12px;height:12px;fill:currentColor}
.story h3{margin:0;font-size:18px;font-weight:700;line-height:1.35}
.swho{display:flex;flex-wrap:wrap;align-items:center;gap:8px 10px}
.swho span{display:inline-flex;align-items:center;gap:6px;font-size:14px;font-weight:600}
.swho svg{width:14px;height:14px;fill:var(--lime)}
.swho em{font-style:normal;font-size:12px;color:var(--muted);background:var(--bg1);border:1px solid var(--line);border-radius:999px;padding:3px 10px}
.sproj{margin:0;display:flex;align-items:center;gap:6px;font-size:13.5px;color:var(--muted)}
.sproj svg{width:14px;height:14px;flex:none;fill:none;stroke:var(--lime);stroke-width:2}
.sproj b{font-weight:600;color:var(--fg)}
.story blockquote{margin:0;background:var(--lime-tint);border-left:3px solid var(--lime);border-radius:6px;padding:16px 18px;font-style:italic;font-size:14px;line-height:1.7;color:var(--fg)}
.stake{display:flex;gap:10px;align-items:flex-start;background:var(--lime-tint);border-left:3px solid var(--lime);border-radius:6px;padding:12px 16px;font-size:13.5px;font-weight:500;color:var(--lime-text)}
.stake svg{width:16px;height:16px;flex:none;margin-top:2px;fill:none;stroke:var(--lime);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
@media (max-width:960px){.st-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:620px){.st-grid{grid-template-columns:minmax(0,1fr)}.stories{padding-block:40px 56px}}

/* free audit page */
.aud{padding:48px 0 72px}
.aud-card{max-width:820px;margin:0 auto;background:var(--lime);border-radius:16px;box-shadow:0 18px 50px rgba(30,20,90,.18);overflow:hidden;padding-bottom:3px}
.aud-top{padding:22px 20px 20px;text-align:center}
.aud-top h1{margin:0;font-family:var(--font-display);font-weight:400;text-transform:uppercase;font-size:clamp(34px,6vw,58px);line-height:1;color:#fff}
.aud-top h1 em{font-style:normal;color:#0B0B0F}
.aud-body{background:#fff;margin:0 3px;border-radius:14px 14px 13px 13px;padding:28px 26px 26px}
.aud-body h2{margin:0 0 6px;text-align:center;font-size:20px;color:#0F1A2E}
.aud-sub{margin:0 0 20px;text-align:center;font-size:13px;color:#64748B}
.aud-form{display:grid;gap:14px}
.aud-form label{display:grid;gap:6px;font-size:14px;font-weight:600;color:#1F2937;min-width:0}
.aud-form input{width:100%;min-width:0;box-sizing:border-box;border:1px solid #C9D3E0;border-radius:6px;padding:13px 14px;font:inherit;font-size:15px;font-weight:400;color:#111}
.aud-form input:focus{outline:2px solid var(--lime);outline-offset:1px}
.aud-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.aud-btn{border:0;border-radius:6px;background:var(--lime);color:#fff;font:inherit;font-weight:700;font-size:15px;padding:14px;cursor:pointer;margin-top:4px}
.aud-btn:hover{filter:brightness(1.08)}
.aud-btn:disabled{opacity:.6;cursor:wait}
.aud-msg{margin:0;font-size:14px;text-align:center;padding:12px;border-radius:8px;background:var(--lime-tint);color:var(--lime-text)}
.aud-msg.err{background:#FDECEC;color:#9B1C1C}
.hp{position:absolute!important;left:-9999px;width:1px;height:1px;opacity:0}
@media(max-width:620px){.aud{padding:28px 0 48px}.aud-row{grid-template-columns:1fr}.aud-body{padding:22px 16px}}

/* audit page: what it checks + closing */
.achk{background:#000;color:#fff;padding:64px 0 72px}
.achk .wrap{text-align:center}
.achk-pill{display:inline-block;background:#1E1A44;color:var(--night-lime);font-size:13px;font-weight:600;padding:9px 22px;border-radius:999px}
.achk h2{font-family:var(--font-display);font-weight:400;text-transform:uppercase;font-size:clamp(36px,6vw,64px);line-height:1;margin:18px 0 38px;color:#fff}
.achk h2 em{font-style:normal;color:var(--night-lime)}
.achk-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0;text-align:left;max-width:1140px;margin:0 auto}
.achk-grid article{background:var(--night-card);padding:24px 22px 26px;border-left:1px solid #2A2560;min-width:0}
.achk-grid article:nth-child(3n+1){border-left:0}
.achk-grid article:nth-child(-n+3){border-bottom:9px solid #000}
.achk-grid article:nth-child(1){border-radius:12px 0 0 0}.achk-grid article:nth-child(3){border-radius:0 12px 0 0}
.achk-grid article:nth-child(4){border-radius:0 0 0 12px}.achk-grid article:nth-child(6){border-radius:0 0 12px 0}
.ac-ico{display:grid;place-items:center;width:42px;height:42px;border-radius:9px;background:#2A2370;margin-bottom:36px}
.ac-ico svg{width:22px;height:22px;fill:none;stroke:var(--night-lime);stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.achk-grid h3{font-family:var(--font-display);font-weight:400;text-transform:uppercase;font-size:21px;margin:0 0 6px;color:#fff;letter-spacing:.01em}
.achk-grid p{margin:0;color:var(--night-muted);font-size:14px;line-height:1.5}
.aclose{background:#fff;text-align:center;padding:60px 0 72px}
.aclose h2{font-family:var(--font-display);font-weight:400;text-transform:uppercase;font-size:clamp(40px,6vw,64px);line-height:1;margin:0 0 18px;color:#222}
.aclose p{max-width:660px;margin:0 auto 32px;font-weight:600;color:#222;line-height:1.6}
.aclose-btns{display:flex;gap:16px;justify-content:center;flex-wrap:wrap}
.aclose-btns .btn svg{width:16px;height:16px;fill:currentColor}
@media(max-width:860px){.achk-grid{grid-template-columns:1fr 1fr}.achk-grid article{border-radius:0!important;border-left:0;border-bottom:9px solid #000}.achk-grid article:nth-child(2n){border-left:1px solid #2A2560}}
@media(max-width:560px){.achk-grid{grid-template-columns:1fr}.achk-grid article:nth-child(n){border-left:0}.ac-ico{margin-bottom:24px}}

/* contact: book a call + direct contact */
.cdark{background:#000;color:#fff;padding:72px 0 84px}
.cd-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.9fr);gap:56px;align-items:start}
.cd-left{min-width:0}
.cd-h1,.cd-h2{font-family:var(--font-display);font-weight:400;text-transform:uppercase;line-height:1;margin:0 0 20px}
.cd-h1{font-size:clamp(36px,4.6vw,56px);color:#9D90FF}
.cd-h2{font-size:clamp(30px,3.4vw,42px);margin-top:56px;color:#fff}
.cd-left>p{margin:0 0 14px;max-width:62ch;line-height:1.6;color:#E5E7EB}
.cd-list{list-style:none;margin:0;padding:0;display:grid;gap:22px}
.cd-list li{display:flex;gap:16px;align-items:center}
.cd-ic{flex:none;display:grid;place-items:center;width:40px;height:40px;border-radius:10px;background:#2B2470;color:#B7ACFF}
.cd-ic svg{width:20px;height:20px}
.cd-list small{display:block;color:#C9D0D8;font-size:15px}
.cd-list a{color:#fff;font-weight:700;font-size:17px;text-decoration:none;overflow-wrap:anywhere}
.cd-list a:hover{color:#B7ACFF}
.cd-follow{font-family:var(--font-display);font-weight:400;text-transform:uppercase;font-size:34px;color:#9D90FF;margin:40px 0 14px}
.cd-soc{display:flex;gap:10px}
.cd-soc a{display:grid;place-items:center;width:40px;height:40px;border-radius:8px;background:#2B2470;color:#fff;font-weight:700;font-size:14px;text-decoration:none}
.cd-soc a:hover{background:var(--lime)}
.cd-book{background:#fff;color:#0F1A2E;border-radius:10px;overflow:hidden;min-width:0}
.cd-book iframe{display:block;width:100%;height:680px;border:0}
.cb-head{text-align:center;padding:30px 24px 22px;border-bottom:1px solid #E5E7EB}
.cb-head>span{font-size:14px;color:#4B5563}
.cb-head h3{margin:6px 0 14px;font-size:24px;font-weight:600}
.cb-meta{display:flex;gap:18px;justify-content:center;flex-wrap:wrap;font-size:13px;font-weight:600;color:#2B4A7A}
.cb-meta span{display:inline-flex;gap:6px;align-items:center}
.cb-meta svg{width:16px;height:16px}
.cb-body{padding:26px 30px 32px}
.cb-body p{margin:0 0 16px;line-height:1.65;font-size:15px;color:#374151}
.cb-body ul{margin:0 0 24px;padding-left:20px;display:grid;gap:6px;font-size:15px;color:#374151}
.cb-btn{display:flex;justify-content:center;width:100%;box-sizing:border-box}
.cb-alt{display:block;text-align:center;margin-top:14px;font-size:14px;color:var(--lime-text);font-weight:600}
@media(max-width:900px){.cd-grid{grid-template-columns:minmax(0,1fr);gap:40px}.cdark{padding:48px 0 56px}.cd-h2{margin-top:40px}}

/* contact: what can I help with */
.chelp{background:var(--lime-tint);padding:64px 0 76px}
.ch-pill{display:inline-block;background:var(--lime-soft);color:var(--lime-text);font-size:12px;font-weight:600;padding:8px 20px;border-radius:999px}
.chelp h2{font-family:var(--font-display);font-weight:400;text-transform:uppercase;font-size:clamp(34px,5vw,52px);line-height:1;margin:16px 0 12px;color:#222}
.ch-sub{margin:0 0 30px;font-size:14px;color:#4B5563}
.ch-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.ch-grid article{display:flex;gap:16px;align-items:flex-start;background:#fff;border:1px solid #DAD6F2;border-radius:10px;padding:22px}
.ch-n{flex:none;display:grid;place-items:center;width:34px;height:34px;border-radius:8px;background:var(--lime);color:#fff;font-weight:700;font-size:14px}
.ch-grid h3{margin:0 0 4px;font-family:var(--font-display);font-weight:400;text-transform:uppercase;font-size:20px;color:#111}
.ch-grid p{margin:0;font-size:14px;line-height:1.55;color:#4B5563}
@media(max-width:700px){.ch-grid{grid-template-columns:minmax(0,1fr)}.chelp{padding:44px 0 52px}}

/* testimonials + contact: section backgrounds follow the Home page (light gradient, lighter band, tint) */
.thero{background:transparent;color:var(--fg);padding-block:64px 72px}
.thero .tpill{background:var(--card);color:var(--lime-text);border:1px solid var(--lime-soft)}
.thero .tpill i{background:var(--lime)}
.thero h1{color:var(--fg)}
.thero h1 em{color:var(--lime)}
.thero p{color:var(--muted)}
.thero .tkick{color:var(--fg);font-weight:500}
.thero .ab-lead{margin:24px 0 0;max-width:52ch;font-size:16px}
.tbtn-w{background:var(--card);color:var(--fg);border:1px solid var(--lime)}
.tstats{box-shadow:var(--shadow)}
.stories{background:color-mix(in srgb,var(--card) 55%,var(--bg1))}
.cdark{background:transparent;color:var(--fg);padding:56px 0 72px}
.cd-h1{color:var(--fg)}
.cd-h1 em{font-style:normal;color:var(--lime)}
.cd-left .badge{margin-bottom:20px}
.cd-h2{color:var(--fg)}
.cd-left>p{color:var(--muted)}
.cd-ic{background:var(--lime-soft);color:var(--lime-text)}
.cd-list small{color:var(--muted)}
.cd-list a{color:var(--fg)}
.cd-list a:hover{color:var(--lime)}
.cd-follow{color:var(--lime)}
.cd-soc a{background:var(--lime);color:var(--lime-ink)}
.cd-soc a:hover{background:var(--btn-dark);color:var(--btn-dark-ink)}
.cd-book{border:1px solid var(--lime-soft);box-shadow:var(--shadow)}
.chelp{background:color-mix(in srgb,var(--card) 55%,var(--bg1))}
.thero .taudit{color:#fff}
.thero .taudit>p{color:#C9D0D8}
.thero .taudit .cnote{color:#C9D0D8}

/* free audit page: section backgrounds follow the other pages */
.achk{background:color-mix(in srgb,var(--card) 55%,var(--bg1));color:var(--fg)}
.achk-pill{background:var(--lime-soft);color:var(--lime-text)}
.achk h2{color:var(--fg)}
.achk h2 em{color:var(--lime)}
.achk-grid article{background:var(--card);border:1px solid var(--lime-soft);border-radius:12px!important;border-left:1px solid var(--lime-soft)}
.achk-grid{gap:14px}
.achk-grid article:nth-child(n){border-bottom:1px solid var(--lime-soft)}
.ac-ico{background:var(--lime-soft)}
.ac-ico svg{stroke:var(--lime)}
.achk-grid h3{color:var(--fg)}
.achk-grid p{color:var(--muted)}
.aclose{background:transparent}
.aclose h2{color:var(--fg)}
.aclose p{color:var(--muted)}
@media(max-width:860px){.achk-grid article:nth-child(2n){border-left:1px solid var(--lime-soft)}}
@media(max-width:560px){.achk-grid article:nth-child(n){border-left:1px solid var(--lime-soft)}}

/* trusted-by logo strip */
.logos{background:#000;border-block:1px solid #1d1d1d;padding-block:40px}
.logos-in{display:flex;align-items:center;gap:48px}
.logos-label{margin:0;flex:none;color:#fff;font-size:clamp(20px,2vw,26px);letter-spacing:-.01em;line-height:1.2}
.logos-label b{font-weight:700}
.logos-row{flex:1;min-width:0;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
.logos-track{display:flex;width:max-content;animation:logos-loop 30s linear infinite}
.logos-row:hover .logos-track{animation-play-state:paused}
.logos-set{display:flex;align-items:center;gap:56px;padding-right:56px;flex:none}
@keyframes logos-loop{to{transform:translateX(-50%)}}
.logo-item{display:flex;align-items:center;flex:none}
.logo-item img{display:block;height:var(--h,28px);width:auto;max-width:none;filter:grayscale(1) brightness(0) invert(1);opacity:.55;transition:opacity .2s}
.logo-item:hover img,.logo-item:focus-visible img{opacity:1}
@media (max-width:860px){.logos{padding-block:26px}.logos-in{gap:18px}.logos-label{font-size:17px;max-width:92px}.logos-set{gap:40px;padding-right:40px}.logo-item img{height:calc(var(--h,28px)*.68)}}
@media (max-width:480px){.logos{padding-block:18px}.logos-in{gap:14px}.logos-label{font-size:15px;max-width:80px}.logos-set{gap:30px;padding-right:30px}.logo-item img{height:calc(var(--h,28px)*.52)}}
@media (prefers-reduced-motion:reduce){.logos-track{animation:none}.logos-set[aria-hidden="true"]{display:none}.logos-row{overflow-x:auto}}

/* typography: Inter body, bold Bebas headings, fluid paragraph sizes */
body{font-size:clamp(15px,.3vw + 14px,17px)}
.hero .copy,.ab-lead,.thero .ab-lead,.sec-sub,.night .lead,.faq-sec .lead,.wwm p{font-size:clamp(15px,.35vw + 14px,18px);line-height:1.65}
.kicker{font-size:clamp(15px,.6vw + 12px,19px)}

/* ONE heading scale for every page (same font, same sizes) */
:root{--h1-size:clamp(44px,6.6vw,86px);--h2-size:clamp(34px,4.6vw,56px);--h3-size:clamp(22px,2.2vw,28px)}
:root body h1,:root body .cd-h1,:root body .hero h1,:root body .hero-txt h1,:root body .shero h1,:root body .thero h1,:root body .aud-top h1{font-family:var(--font-display);font-weight:400;text-transform:uppercase;font-size:var(--h1-size);line-height:.98;letter-spacing:.005em;text-wrap:balance}
:root body h2,:root body .sec-title,:root body .sec-h,:root body .cs2-title,:root body .cd-h2,:root body .about-sec h2,:root body .work-grid h2,:root body .cta-lime h2,:root body .night h2,:root body .faq-sec h2,:root body .wdo h2,:root body .qa h2,:root body .cta2 h2,:root body .abs h2,:root body .why-dark h2,:root body .wwm h2,:root body .achk h2,:root body .aclose h2,:root body .chelp h2{font-family:var(--font-display);font-weight:400;text-transform:uppercase;font-size:var(--h2-size);line-height:1.02;letter-spacing:.005em;text-wrap:balance}
:root body .taudit h2{font-size:clamp(30px,3.2vw,40px)}
:root body .step h3,:root body .night h3,:root body .inc-grid .fill h3,:root body .achk-grid h3,:root body .ch-grid h3,:root body .cd-follow{font-family:var(--font-display);font-weight:400;text-transform:uppercase;font-size:var(--h3-size);line-height:1.1;letter-spacing:.01em}

/* mobile: hide the purple contact strip */
@media (max-width:600px){.strip{display:none}}
