/* AgencyNika design system rebuilt from growth-agency-usa reference tokens. */
:root {
  --ink: #0a0f1a;
  --paper: #fff;
  --pink: #ff32a1;
  --hot-pink: #ff3dd1;
  --purple: #a44cff;
  --violet: #5a3bff;
  --blue: #0068ff;
  --lavender: #c9a6ff;
  --soft-pink: #ffb5e8;
  --pale: #e2d4ff;
  --charcoal: #1c1c1c;
  --line: #0a0f1a29;
  --lime: #caff45;
  --coral: #ff7b62;
  --reference-wrap: 1280px;
  --reference-radius: 999px;
  --reference-section: clamp(96px, 8vw, 150px);

  /* Map the legacy site tokens onto the reference system. */
  --brand-ink: var(--ink);
  --brand-muted: #555;
  --brand-surface: var(--pale);
  --brand-accent: var(--violet);
  --brand-accent-hover: var(--purple);
  --brand-border: var(--line);
  --acid: var(--violet);
}

html { background: var(--paper); }
body,
.migrated-page {
  background: var(--paper) !important;
  color: var(--ink) !important;
  font-family: Arial, Helvetica, sans-serif !important;
}
.wrap { width: min(var(--reference-wrap), calc(100% - 64px)) !important; }
::selection { background: var(--pink); color: #fff; }

/* Exact reference logo */
.logo {
  min-width: 120px;
  padding-left: 8px;
  color: inherit;
  text-decoration: none;
  letter-spacing: -1.5px;
  font-size: 24px;
  font-weight: 900;
}
.nika-logo {
  position: relative;
  display: inline-flex;
  align-items: center;
  height: 54px;
}
.nika-logo b {
  padding-right: 13px;
  background: linear-gradient(110deg, var(--violet) 8%, var(--purple) 48%, var(--pink));
  background-clip: text;
  -webkit-background-clip: text;
  color: transparent;
  letter-spacing: -9px;
  font-size: 46px;
  font-weight: 900;
  line-height: 1;
}
.nika-logo i {
  margin-left: -7px;
  color: var(--ink);
  letter-spacing: .14em;
  font-size: 10px;
  font-style: normal;
  font-weight: 900;
  transform: rotate(-72deg);
}
.site-header .nika-logo i { color: var(--ink); }
.footer .nika-logo i { color: var(--ink); }

/* Reference navigation */
.site-header,
.migrated-page .site-header {
  position: relative !important;
  top: auto !important;
  min-height: 92px !important;
  height: 92px;
  width: 100%;
  padding: 19px max(32px, calc((100vw - var(--reference-wrap)) / 2)) !important;
  background: var(--paper) !important;
  color: var(--ink) !important;
  border-bottom: 1px solid var(--line) !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  mix-blend-mode: normal !important;
}
.site-header .nav,
.migrated-page .site-header .nav {
  gap: 34px !important;
  color: var(--ink) !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}
.site-header .nav a,
.migrated-page .site-header .nav a { color: var(--ink) !important; }
.site-header .nav a:last-child,
.migrated-page .site-header .nav a:last-child {
  display: inline-flex;
  gap: 24px;
  align-items: center;
  padding: 14px 20px !important;
  border: 0 !important;
  border-radius: var(--reference-radius) !important;
  background: var(--ink) !important;
  color: #fff !important;
  box-shadow: none !important;
}
.site-header .nav a:last-child:hover,
.migrated-page .site-header .nav a:last-child:hover {
  background: var(--violet) !important;
  transform: none !important;
}
.menu-toggle { color: var(--ink) !important; }

/* Typography tokens */
h1, h2, h3, h4,
.migrated-page h1, .migrated-page h2, .migrated-page h3, .migrated-page h4 {
  font-family: Arial, Helvetica, sans-serif !important;
  font-stretch: normal !important;
}
.eyebrow,
.section-label,
.migrated-page .eyebrow {
  color: var(--violet) !important;
  letter-spacing: .14em !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  text-transform: uppercase;
}
.eyebrow::before { background: var(--violet) !important; }
.section h2,
.partners-band h2,
.contact h2,
.case-contact h2,
.migrated-page .section h2 {
  letter-spacing: -.065em !important;
  font-size: clamp(48px, 6vw, 86px) !important;
  font-weight: 800 !important;
  line-height: .92 !important;
}

/* Buttons and links */
.pill-cta,
.scroll-pill,
.round-cta,
.case-contact .contact-link,
.faq > a,
.case-actions a.tag,
.migrated-page .btn,
.migrated-page .button,
.diagnosis-form button,
.modal-form button {
  min-height: 0 !important;
  padding: 16px 22px !important;
  border: 0 !important;
  border-radius: var(--reference-radius) !important;
  background: var(--ink) !important;
  color: #fff !important;
  box-shadow: none !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}
.pill-cta:hover,
.scroll-pill:hover,
.round-cta:hover,
.case-contact .contact-link:hover,
.faq > a:hover,
.case-actions a.tag:hover,
.migrated-page .btn:hover,
.migrated-page .button:hover,
.diagnosis-form button:hover,
.modal-form button:hover { background: var(--violet) !important; transform: none !important; }
.pill-cta.light { background: #fff !important; color: var(--ink) !important; }

/* Home hero follows the reference white editorial surface. */
.home-v2 .home-hero {
  min-height: 0 !important;
  padding: 84px 0 42px !important;
  background: var(--paper) !important;
  color: var(--ink) !important;
}
.home-v2 .home-hero .hero-stage { gap: 80px; }
.home-v2 .home-hero h1 {
  max-width: 10ch !important;
  color: var(--ink) !important;
  font-size: clamp(52px, 7.4vw, 112px) !important;
  font-weight: 800 !important;
  line-height: .88 !important;
  letter-spacing: -.075em !important;
}
.home-v2 .home-hero .accent { color: var(--violet) !important; }
.home-v2 .hero-kicker { color: var(--violet) !important; letter-spacing: .14em; font-size: 12px; font-weight: 700; }
.home-v2 .hero-bottom p { color: var(--ink) !important; font-size: 19px !important; line-height: 1.5; }
.home-v2 .hero-bottom small { color: #777 !important; }
.home-v2 .founder-video-frame {
  min-height: 360px;
  border: 0 !important;
  border-radius: 0 !important;
  background: linear-gradient(135deg, var(--violet), var(--blue)) !important;
  color: #fff;
  box-shadow: none !important;
}
.home-v2 .founder-video-kicker,
.home-v2 .founder-video-note { color: #fff !important; opacity: .78; }
.home-v2 .founder-video-play { background: #fff !important; color: var(--violet) !important; border: 0 !important; box-shadow: none !important; }
.home-v2 .founder-video-meta,
.home-v2 .founder-video-meta span { color: var(--ink) !important; }

/* Proof strip */
.home-v2 .section.compact:first-of-type {
  padding: 0 !important;
  background: var(--pale) !important;
  border-block: 1px solid var(--line);
}
.home-v2 .section.compact:first-of-type .metric-grid {
  grid-template-columns: repeat(3, 1fr) 1.2fr;
  gap: 0;
}
.home-v2 .section.compact:first-of-type .metric {
  min-height: 0;
  padding: 34px 24px !important;
  border: 0 !important;
  border-right: 1px solid rgba(10,15,26,.12) !important;
  background: transparent !important;
}
.home-v2 .section.compact:first-of-type .metric:last-child { border-right: 0 !important; }
.home-v2 .section.compact:first-of-type .metric b { font-size: 35px !important; letter-spacing: -.05em; }
.home-v2 .section.compact:first-of-type .metric span { margin-top: 8px; color: #555 !important; }

/* Problem / leakage section */
.home-v2 .leak-section {
  padding: 140px 0 !important;
  background: var(--paper) !important;
  color: var(--ink) !important;
}
.home-v2 .leak-section .eyebrow { color: var(--violet) !important; }
.home-v2 .leak-section h2 { max-width: 15ch; color: var(--ink) !important; }
.home-v2 .leak-section .section-lead { color: #555 !important; }
.home-v2 .leak-tags span {
  padding: 11px 15px;
  border: 1px solid var(--line) !important;
  border-radius: var(--reference-radius) !important;
  background: transparent !important;
  color: var(--ink) !important;
  font-size: 12px;
}

/* Growth system */
.home-v2 #system {
  padding: 120px 0 !important;
  background: linear-gradient(135deg, var(--violet), var(--blue)) !important;
  color: #fff !important;
}
.home-v2 #system .eyebrow { color: var(--soft-pink) !important; }
.home-v2 #system h2 { max-width: 14ch; color: #fff !important; }
.home-v2 #system .section-lead { color: #dce1ff !important; }
.home-v2 #system .system-steps {
  border-block: 1px solid #ffffff50;
  gap: 0;
  margin-top: 70px;
}
.home-v2 #system .system-steps article {
  min-height: 270px;
  padding: 30px 25px !important;
  border: 0 !important;
  border-right: 1px solid #ffffff50 !important;
  background: transparent !important;
}
.home-v2 #system .system-steps article:last-child { border-right: 0 !important; }
.home-v2 #system .system-steps b { color: var(--soft-pink) !important; font-size: 11px; }
.home-v2 #system .system-steps h3 { margin: 70px 0 15px; color: #fff; font-size: 27px; letter-spacing: -.04em; }
.home-v2 #system .system-steps p { color: #dce1ff !important; font-size: 14px; line-height: 1.55; }

/* Case work area */
.home-v2 #results {
  padding: 125px 0 70px !important;
  background: var(--ink) !important;
  color: #fff !important;
}
.home-v2 #results .eyebrow { color: #aaa !important; }
.home-v2 #results .section-lead { color: #aaa !important; }
.home-v2 .case-study-row { gap: 14px !important; margin-top: 60px; }
.home-v2 .case-study-card {
  min-height: 500px;
  padding: 34px !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  color: var(--ink) !important;
}
.home-v2 .case-study-card:nth-child(1) { background: var(--pink) !important; }
.home-v2 .case-study-card:nth-child(2) { background: var(--blue) !important; color: #fff !important; }
.home-v2 .case-study-card:nth-child(3) { background: var(--purple) !important; }
.home-v2 .case-study-card::after { display: none !important; }
.home-v2 .case-study-card > span,
.home-v2 .case-study-card p { color: inherit !important; opacity: .82; }
.home-v2 .case-study-card h3 { margin: 56px 0 28px; font-size: 27px; letter-spacing: -.04em; }
.home-v2 .case-study-card > strong { color: inherit !important; font-size: clamp(54px, 6vw, 88px) !important; }
.home-v2 .case-study-card i { color: inherit !important; opacity: .75; }
.home-v2 .case-study-card:hover { filter: brightness(.97); transform: none !important; }

/* Services */
.home-v2 #services {
  padding: 150px 0 !important;
  background: var(--paper) !important;
}
.home-v2 #services .split-heading { grid-template-columns: 1fr 1.5fr; gap: 100px !important; }
.home-v2 #services h2 { max-width: 10ch; }
.home-v2 #services .capability-list article {
  grid-template-columns: 50px 1fr;
  padding: 32px 0 !important;
  border-top: 1px solid var(--line) !important;
}
.home-v2 #services .capability-list article::after { display: none !important; }
.home-v2 #services .capability-list article:last-child { border-bottom: 1px solid var(--line) !important; }
.home-v2 #services .capability-list article > b { color: var(--violet) !important; font-size: 12px; }
.home-v2 #services .capability-list h3 { margin: 0 0 12px; font-size: 35px; letter-spacing: -.04em; }
.home-v2 #services .capability-list p { color: #555 !important; }

/* Explore section */
.home-v2 #explore { padding: 120px 0 !important; background: var(--paper) !important; }
.home-v2 #explore .services { border: 0 !important; gap: 1px; background: var(--line); }
.home-v2 #explore .service {
  min-height: 270px;
  padding: 28px !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: #fff !important;
}
.home-v2 #explore .service:hover { background: var(--pale) !important; }
.home-v2 #explore .service b { color: var(--violet) !important; }

/* Partners */
.home-v2 .partners-band {
  padding: 125px 0 !important;
  background: linear-gradient(145deg, var(--pale) 0%, #fff 52%, var(--soft-pink) 140%) !important;
  color: var(--ink) !important;
}
.home-v2 .partners-band .eyebrow { color: var(--violet) !important; }
.home-v2 .partner-grid { margin-top: 60px; border-top: 1px solid var(--purple) !important; border-left: 0 !important; }
.home-v2 .partner-grid > * {
  min-height: 145px;
  padding: 20px !important;
  border: 0 !important;
  border-right: 1px solid var(--purple) !important;
  border-bottom: 1px solid var(--purple) !important;
  background: transparent !important;
  color: var(--ink) !important;
  align-items: center !important;
  justify-content: center;
  text-align: center;
}
.home-v2 .partner-grid a { background: var(--ink) !important; color: #fff !important; }

/* Comparison */
.home-v2 .why-agencynika {
  padding: 120px 0 !important;
  background: var(--charcoal) !important;
  color: #fff !important;
}
.home-v2 .why-agencynika .eyebrow { color: #aaa !important; }
.home-v2 .why-agencynika h2 { max-width: 16ch; color: #fff !important; }
.home-v2 .why-agencynika .section-lead { color: #aaa !important; }
.home-v2 .comparison { border-top: 1px solid #ffffff30 !important; }
.home-v2 .comparison > div::after { background: #ffffff30 !important; }
.home-v2 .comparison .nika-col,
.home-v2 .comparison > div > b:last-child { color: var(--soft-pink) !important; }

/* Fit / FAQ */
.home-v2 .fit-section { padding: 150px 0 !important; background: var(--paper) !important; }
.home-v2 .fit-grid article {
  min-height: 0;
  padding: 34px !important;
  border: 1px solid var(--line) !important;
  border-radius: 0 !important;
  background: var(--pale) !important;
}
.home-v2 .fit-grid article:last-child { background: var(--ink) !important; color: #fff !important; }
.home-v2 .faq-section {
  padding: 120px 0 !important;
  background: var(--paper) !important;
  color: var(--ink) !important;
}
.home-v2 .faq-section .mega-label {
  width: 180px;
  height: 180px;
  margin-bottom: 46px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  background: linear-gradient(135deg, var(--violet), var(--purple), var(--pink));
  color: #fff !important;
  text-align: center;
  font-size: 22px !important;
  line-height: 1.05;
  transform: rotate(-7deg);
}
.home-v2 .faq-section .eyebrow { color: var(--violet) !important; }
.home-v2 .faq-section h2,
.home-v2 .faq-section p { color: var(--ink) !important; }
.home-v2 .faq details { border-top: 1px solid var(--line) !important; }
.home-v2 .faq summary::after { color: var(--violet) !important; }
.home-v2 .faq p { color: #555 !important; }

/* Contact */
.home-v2 .diagnosis {
  padding: 125px 0 !important;
  background: var(--ink) !important;
  color: #fff !important;
}
.home-v2 .diagnosis .eyebrow { color: #aaa !important; }
.home-v2 .diagnosis h2 { color: #fff !important; }
.home-v2 .diagnosis .contact-copy { color: #ddd !important; }
.home-v2 .diagnosis-points li {
  border: 0 !important;
  border-bottom: 1px solid #ffffff30 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: #ddd !important;
}
.home-v2 .diagnosis-form { border-top-color: #ffffff30 !important; }
.home-v2 .diagnosis-form label { color: #ddd !important; }
.home-v2 .diagnosis-form input,
.home-v2 .diagnosis-form select,
.home-v2 .diagnosis-form textarea {
  border: 1px solid #ffffff30 !important;
  border-radius: 0 !important;
  background: #fff !important;
  color: var(--ink) !important;
}
.home-v2 .diagnosis-form button { background: var(--lime) !important; color: var(--ink) !important; }

/* Cases */
.case-page .case-hero {
  min-height: 0 !important;
  padding: 100px 0 80px !important;
  background: var(--paper) !important;
  color: var(--ink) !important;
}
.case-page .case-hero h1 { color: var(--ink) !important; font-size: clamp(52px, 7vw, 100px) !important; }
.case-page .case-hero h1 em { color: var(--violet) !important; }
.case-page .case-deck p { color: #555 !important; }
.case-page .case-phone-visual img { mix-blend-mode: multiply !important; filter: none !important; }
.case-page .section { padding: 120px 0; }
.case-page .section.dark { background: var(--ink) !important; }
.case-page .section.dark .eyebrow { color: var(--soft-pink) !important; }
.case-page .next-case { background: linear-gradient(135deg, var(--violet), var(--blue)) !important; }
.case-page .next-case .arrow { border-radius: 50% !important; border: 0 !important; background: #fff !important; color: var(--violet) !important; }
.case-switcher { background: var(--pale) !important; }
.case-switcher-links a { border: 0 !important; border-radius: 0 !important; }
.case-switcher-links a.is-current { background: var(--ink) !important; }

/* Migrated pages: use the same token system, preserve their content architecture. */
.migrated-page {
  --pink: #ff32a1;
  --violet: #5a3bff;
  --blue: #0068ff;
  --lime: #caff45;
  --yellow: #e2d4ff;
  --muted: #555;
  --line: #0a0f1a29;
}
.migrated-page .hero {
  min-height: 0 !important;
  padding: 84px 0 80px !important;
  background: var(--paper) !important;
  color: var(--ink) !important;
}
.migrated-page .hero h1 {
  max-width: 12ch !important;
  color: var(--ink) !important;
  font-size: clamp(52px, 7.4vw, 112px) !important;
  font-weight: 800 !important;
  line-height: .88 !important;
  letter-spacing: -.075em !important;
}
.migrated-page .hero h1 span,
.migrated-page .hero h1 em,
.migrated-page .hero .accent { color: var(--violet) !important; }
.migrated-page .hero .lead,
.migrated-page .hero p,
.migrated-page .hero .micro { color: #555 !important; }
.migrated-page .hero .eyebrow { color: var(--violet) !important; }
.migrated-page .hero-panel,
.migrated-page .hero-card,
.migrated-page .hero-art,
.migrated-page .booking {
  background: linear-gradient(135deg, var(--violet), var(--blue)) !important;
  color: #fff !important;
  border: 0 !important;
  border-radius: 0 !important;
}
.migrated-page .hero-panel span,
.migrated-page .hero-card span,
.migrated-page .booking-head span { color: #dce1ff !important; }
.migrated-page .section,
.migrated-page .catalog,
.migrated-page .engagements,
.migrated-page .process,
.migrated-page .deliverables,
.migrated-page .offers,
.migrated-page .platforms,
.migrated-page .problems,
.migrated-page .work,
.migrated-page .principles,
.migrated-page .details,
.migrated-page .team,
.migrated-page .founder,
.migrated-page .story { padding-top: 120px !important; padding-bottom: 120px !important; }
.migrated-page .card,
.migrated-page .engagement,
.migrated-page .case,
.migrated-page .fit-card,
.migrated-page .problem,
.migrated-page .problem-card,
.migrated-page .offer,
.migrated-page .platform,
.migrated-page .principle,
.migrated-page .team-photo,
.migrated-page .contact-card {
  border-radius: 0 !important;
  box-shadow: none !important;
}
.migrated-page .specialized,
.migrated-page .proof,
.migrated-page .cta,
.migrated-page .final { background: linear-gradient(135deg, var(--violet), var(--blue)) !important; }

/* Footer */
.footer {
  min-height: 230px;
  padding: 58px 0 28px !important;
  background: var(--paper) !important;
  color: var(--ink) !important;
}
.footer-row { border-top: 1px solid var(--line) !important; color: var(--ink) !important; }
.footer-row a,
.footer-row span { color: var(--ink) !important; }
.footer-brand { margin-right: auto; }

/* 404 */
.error-page { background: var(--paper) !important; color: var(--ink) !important; }

@media (max-width: 1000px) {
  .wrap { width: min(var(--reference-wrap), calc(100% - 40px)) !important; }
  .home-v2 .hero-stage,
  .home-v2 #services .split-heading { grid-template-columns: 1fr !important; gap: 48px !important; }
  .home-v2 .case-study-row { grid-template-columns: 1fr !important; }
  .home-v2 .case-study-card { min-height: 400px; }
}
@media (max-width: 800px) {
  .site-header,
  .migrated-page .site-header { height: 76px; min-height: 76px !important; padding: 11px 20px !important; }
  .site-header .nav,
  .migrated-page .site-header .nav { background: var(--ink) !important; color: #fff !important; }
  .site-header .nav a,
  .migrated-page .site-header .nav a { color: #fff !important; }
  .menu-toggle { color: var(--ink) !important; }
  .wrap { width: calc(100% - 36px) !important; }
  .home-v2 .home-hero,
  .home-v2 .leak-section,
  .home-v2 #system,
  .home-v2 #results,
  .home-v2 #services,
  .home-v2 #explore,
  .home-v2 .partners-band,
  .home-v2 .why-agencynika,
  .home-v2 .fit-section,
  .home-v2 .faq-section,
  .home-v2 .diagnosis,
  .case-page .section,
  .migrated-page .section { padding-top: 82px !important; padding-bottom: 82px !important; }
  .home-v2 .home-hero h1,
  .migrated-page .hero h1 { font-size: clamp(50px, 15vw, 78px) !important; }
  .home-v2 .section.compact:first-of-type .metric-grid { grid-template-columns: 1fr 1fr !important; }
  .home-v2 #system .system-steps { grid-template-columns: 1fr !important; }
  .home-v2 #system .system-steps article { min-height: 0; border-right: 0 !important; border-bottom: 1px solid #ffffff50 !important; }
  .home-v2 .partner-grid { grid-template-columns: 1fr 1fr !important; }
  .home-v2 .faq-section .mega-label { width: 140px; height: 140px; }
  .nika-logo { height: 52px; }
  .nika-logo b { font-size: 42px; }
}
/* Contrast polish for gradient panels. */
.migrated-page .hero-panel .eyebrow,
.migrated-page .hero-card .eyebrow,
.migrated-page .booking .eyebrow { color: var(--soft-pink) !important; }
.migrated-page .hero-panel h2,
.migrated-page .hero-card h2,
.migrated-page .booking h2 { color: #fff !important; }
/* Final reference-component alignment. */
.home-v2 main > .section.compact {
  padding: 0 !important;
  background: var(--pale) !important;
  border-block: 1px solid var(--line) !important;
}
.home-v2 main > .section.compact .metric-grid {
  grid-template-columns: repeat(3, 1fr) 1.2fr !important;
  gap: 0 !important;
}
.home-v2 main > .section.compact .metric {
  min-height: 0 !important;
  padding: 34px 24px !important;
  border: 0 !important;
  border-right: 1px solid rgba(10,15,26,.12) !important;
  background: transparent !important;
}
.home-v2 main > .section.compact .metric:last-child { border-right: 0 !important; }
.home-v2 main > .section.compact .metric b { font-size: 35px !important; letter-spacing: -.05em !important; }
.home-v2 main > .section.compact .metric span { margin-top: 8px !important; color: #555 !important; }
.home-v2 .home-hero .scroll-pill {
  min-height: 0 !important;
  padding: 12px 0 !important;
  border-radius: 0 !important;
  border-bottom: 1px solid var(--ink) !important;
  background: transparent !important;
  color: var(--ink) !important;
}
@media (max-width: 800px) {
  .home-v2 main > .section.compact .metric-grid { grid-template-columns: 1fr 1fr !important; }
}
