/* Homepage V3 — Precision theme
   Scope: homepage only via body.precision-home
*/
body.precision-home {
  --precision-bg: #fafaf8;
  --precision-surface: #ffffff;
  --precision-text: #171717;
  --precision-muted: #666666;
  --precision-border: #e7e7e2;
  --precision-accent: #d9ff55;
  --precision-container: 1180px;
  --precision-gutter: clamp(18px, 3vw, 32px);
  --precision-radius: 18px;
  --precision-shadow: 0 16px 42px rgba(20,20,20,.06);
  background: var(--precision-bg);
  color: var(--precision-text);
}

body.precision-home .shell,
body.precision-home .container,
body.precision-home .wrap {
  width: min(var(--precision-container), calc(100% - (var(--precision-gutter) * 2)));
  max-width: var(--precision-container);
  margin-inline: auto;
}

/* Navigation */
body.precision-home .site-header {
  position: fixed !important;
  top: 14px !important;
  left: 50% !important;
  width: min(var(--precision-container), calc(100% - (var(--precision-gutter) * 2))) !important;
  transform: translateX(-50%) !important;
  z-index: 1000 !important;
  background: rgba(250,250,248,.78) !important;
  background-image: none !important;
  border: 1px solid rgba(23,23,23,.08) !important;
  border-radius: 999px !important;
  box-shadow: 0 10px 30px rgba(23,23,23,.06) !important;
  backdrop-filter: blur(16px) saturate(120%) !important;
  -webkit-backdrop-filter: blur(16px) saturate(120%) !important;
  transform-origin: center top;
  transition: background-color .22s ease, box-shadow .22s ease, border-color .22s ease !important;
}

body.precision-home .site-header::before,
body.precision-home .site-header::after {
  content: none !important;
  display: none !important;
}

body.precision-home .site-header .nav-wrap,
body.precision-home .site-header .nav-inner,
body.precision-home .site-header > .shell {
  width: 100% !important;
  max-width: none !important;
  padding-inline: 18px !important;
}

body.precision-home .site-header a {
  color: rgba(23,23,23,.72) !important;
  text-shadow: none !important;
}

body.precision-home .site-header a:hover,
body.precision-home .site-header a[aria-current="page"] {
  color: var(--precision-text) !important;
}

body.precision-home .site-header a[aria-current="page"] {
  background: rgba(255,255,255,.78) !important;
  border-radius: 999px !important;
  box-shadow: inset 0 0 0 1px rgba(23,23,23,.06) !important;
}

body.precision-home .site-header .nav-cta,
body.precision-home .site-header a[href*="linkedin"] {
  background: transparent !important;
  color: rgba(23,23,23,.66) !important;
  border: 1px solid rgba(23,23,23,.10) !important;
  box-shadow: none !important;
  font-weight: 500 !important;
}

body.precision-home .site-header .nav-cta:hover,
body.precision-home .site-header a[href*="linkedin"]:hover {
  background: rgba(255,255,255,.72) !important;
  color: var(--precision-text) !important;
  border-color: rgba(23,23,23,.16) !important;
}

/* Hero */
body.precision-home .hero,
body.precision-home .clean-hero {
  min-height: 100svh !important;
  display: grid !important;
  align-items: center !important;
  padding: clamp(112px, 13vh, 148px) 0 clamp(70px, 9vh, 96px) !important;
  position: relative !important;
  overflow: clip !important;
  background:
    linear-gradient(rgba(23,23,23,.025) 1px, transparent 1px),
    linear-gradient(90deg, rgba(23,23,23,.025) 1px, transparent 1px);
  background-size: 48px 48px;
}

body.precision-home .hero::before,
body.precision-home .hero::after,
body.precision-home .clean-hero::before,
body.precision-home .clean-hero::after {
  content: none !important;
  display: none !important;
}

body.precision-home .hero .shell,
body.precision-home .clean-hero .shell,
body.precision-home .hero-inner {
  width: min(var(--precision-container), calc(100% - (var(--precision-gutter) * 2))) !important;
  max-width: var(--precision-container) !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1.7fr) minmax(280px, .75fr) !important;
  gap: clamp(42px, 5vw, 76px) !important;
  align-items: center !important;
}

body.precision-home .hero-copy,
body.precision-home .hero-content {
  min-width: 0 !important;
  width: 100% !important;
  max-width: none !important;
}

body.precision-home .hero h1,
body.precision-home .clean-hero h1 {
  width: 100% !important;
  max-width: 920px !important;
  margin: 14px 0 22px !important;
  color: var(--precision-text) !important;
  font-size: clamp(3.2rem, 5.8vw, 5.9rem) !important;
  line-height: .99 !important;
  letter-spacing: -.045em !important;
  text-wrap: balance !important;
}

body.precision-home .hero p,
body.precision-home .clean-hero p {
  max-width: 720px !important;
  color: var(--precision-muted) !important;
  font-size: clamp(1.05rem, 1.25vw, 1.25rem) !important;
  line-height: 1.58 !important;
  margin-bottom: 28px !important;
}

body.precision-home .hero-actions {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 12px !important;
  align-items: center !important;
}

body.precision-home .hero-actions .btn-primary,
body.precision-home .hero-actions a:first-child {
  background: var(--precision-text) !important;
  color: #fff !important;
  border: 1px solid var(--precision-text) !important;
  box-shadow: none !important;
}

body.precision-home .hero-actions .btn-secondary,
body.precision-home .hero-actions a + a {
  background: transparent !important;
  color: var(--precision-text) !important;
  border: 1px solid rgba(23,23,23,.14) !important;
  box-shadow: none !important;
}

body.precision-home .hero-actions a:hover {
  transform: translateY(-1px) !important;
}

body.precision-home .hero-proof {
  position: static !important;
  inset: auto !important;
  transform: none !important;
  margin-top: 30px !important;
  max-width: 720px !important;
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

body.precision-home .hero-proof > * {
  padding: 0 22px !important;
  border-right: 1px solid var(--precision-border) !important;
}

body.precision-home .hero-proof > *:first-child {
  padding-left: 0 !important;
}

body.precision-home .hero-proof > *:last-child {
  padding-right: 0 !important;
  border-right: 0 !important;
}

/* Hero blueprint illustration */
body.precision-home .hero-visual,
body.precision-home .hero-illustration,
body.precision-home .hero-art,
body.precision-home .hero-graphic {
  width: 100% !important;
  max-width: 340px !important;
  justify-self: end !important;
  align-self: center !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  filter: grayscale(1) contrast(.96) !important;
  opacity: .92 !important;
  transform-style: preserve-3d !important;
}

body.precision-home .hero-visual::before,
body.precision-home .hero-visual::after,
body.precision-home .hero-illustration::before,
body.precision-home .hero-illustration::after,
body.precision-home .hero-art::before,
body.precision-home .hero-art::after,
body.precision-home .hero-graphic::before,
body.precision-home .hero-graphic::after {
  content: none !important;
  display: none !important;
}

body.precision-home .hero-visual img,
body.precision-home .hero-visual svg,
body.precision-home .hero-illustration img,
body.precision-home .hero-illustration svg,
body.precision-home .hero-art img,
body.precision-home .hero-art svg,
body.precision-home .hero-graphic img,
body.precision-home .hero-graphic svg {
  width: 100% !important;
  height: auto !important;
  max-height: 430px !important;
  object-fit: contain !important;
  display: block !important;
}

/* Section headings */
body.precision-home h2::after {
  content: "";
  display: block;
  width: 54px;
  height: 3px;
  margin-top: 14px;
  background: var(--precision-accent);
  border-radius: 999px;
}

/* Experience logos */
body.precision-home .experience-logos,
body.precision-home .logo-gallery,
body.precision-home .brand-gallery,
body.precision-home .global-team-logos {
  width: 100% !important;
  display: grid !important;
  grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
  gap: 0 !important;
  border: 1px solid var(--precision-border) !important;
  background: var(--precision-surface) !important;
  overflow: hidden !important;
}

body.precision-home .experience-logos > *,
body.precision-home .logo-gallery > *,
body.precision-home .brand-gallery > *,
body.precision-home .global-team-logos > * {
  aspect-ratio: 1 / 1 !important;
  display: grid !important;
  place-items: center !important;
  padding: clamp(22px, 2.7vw, 38px) !important;
  margin: 0 !important;
  border: 0 !important;
  border-right: 1px solid var(--precision-border) !important;
  background: var(--precision-surface) !important;
  box-shadow: none !important;
}

body.precision-home .experience-logos > *:last-child,
body.precision-home .logo-gallery > *:last-child,
body.precision-home .brand-gallery > *:last-child,
body.precision-home .global-team-logos > *:last-child {
  border-right: 0 !important;
}

body.precision-home .experience-logos img,
body.precision-home .logo-gallery img,
body.precision-home .brand-gallery img,
body.precision-home .global-team-logos img {
  width: auto !important;
  height: auto !important;
  max-width: 66% !important;
  max-height: 38% !important;
  object-fit: contain !important;
  opacity: .68 !important;
  filter: grayscale(1) contrast(.94) !important;
  transition: opacity .2s ease, transform .2s ease !important;
}

body.precision-home .experience-logos > *:hover img,
body.precision-home .logo-gallery > *:hover img,
body.precision-home .brand-gallery > *:hover img,
body.precision-home .global-team-logos > *:hover img {
  opacity: 1 !important;
  transform: translateY(-2px) !important;
}

/* Ways I can help */
body.precision-home .ways-grid .way {
  background: var(--precision-surface) !important;
  background-image: none !important;
  border: 1px solid var(--precision-border) !important;
  box-shadow: none !important;
  border-radius: var(--precision-radius) !important;
  transition: transform .22s ease, border-color .22s ease !important;
}

body.precision-home .ways-grid .way::before,
body.precision-home .ways-grid .way::after {
  background: none !important;
  background-image: none !important;
  opacity: 0 !important;
}

body.precision-home .ways-grid .way:hover {
  transform: translateY(-3px) !important;
  border-color: rgba(23,23,23,.16) !important;
}

/* Project cards */
body.precision-home .project-card {
  background: var(--precision-surface) !important;
  background-image: none !important;
  border: 1px solid var(--precision-border) !important;
  border-radius: var(--precision-radius) !important;
  box-shadow: var(--precision-shadow) !important;
  transition: transform .24s ease, box-shadow .24s ease !important;
}

body.precision-home .project-card:hover {
  transform: translateY(-4px) !important;
  box-shadow: 0 22px 52px rgba(20,20,20,.08) !important;
}

/* Remove multi-colour decorative treatments */
body.precision-home .cap::after,
body.precision-home .project-card::before,
body.precision-home .project-card::after,
body.precision-home .section::before,
body.precision-home .section::after {
  background-image: none !important;
}

/* Responsive */
@media (max-width: 1024px) {
  body.precision-home .hero .shell,
  body.precision-home .clean-hero .shell,
  body.precision-home .hero-inner {
  grid-template-columns: minmax(0, 1fr) 280px !important;
  gap: 36px !important;
}

body.precision-home .experience-logos,
  body.precision-home .logo-gallery,
  body.precision-home .brand-gallery,
  body.precision-home .global-team-logos {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
}

body.precision-home .experience-logos > *,
  body.precision-home .logo-gallery > *,
  body.precision-home .brand-gallery > *,
  body.precision-home .global-team-logos > * {
  border-bottom: 1px solid var(--precision-border) !important;
}

body.precision-home .experience-logos > *:nth-child(3n),
  body.precision-home .logo-gallery > *:nth-child(3n),
  body.precision-home .brand-gallery > *:nth-child(3n),
  body.precision-home .global-team-logos > *:nth-child(3n) {
  border-right: 0 !important;
}

}

@media (max-width: 760px) {
  body.precision-home .site-header {
  width: calc(100% - 20px) !important;
  top: 10px !important;
  border-radius: 22px !important;
}

body.precision-home .hero,
  body.precision-home .clean-hero {
  min-height: auto !important;
  padding: 104px 0 64px !important;
  background-size: 36px 36px;
}

body.precision-home .hero .shell,
  body.precision-home .clean-hero .shell,
  body.precision-home .hero-inner {
  grid-template-columns: 1fr !important;
}

body.precision-home .hero h1,
  body.precision-home .clean-hero h1 {
  font-size: clamp(2.7rem, 12vw, 4rem) !important;
}

body.precision-home .hero-visual,
  body.precision-home .hero-illustration,
  body.precision-home .hero-art,
  body.precision-home .hero-graphic {
  max-width: 260px !important;
  justify-self: center !important;
  margin-top: 12px !important;
}

body.precision-home .hero-proof {
  grid-template-columns: 1fr !important;
  gap: 12px !important;
}

body.precision-home .hero-proof > * {
  padding: 0 !important;
  border-right: 0 !important;
}

body.precision-home .experience-logos,
  body.precision-home .logo-gallery,
  body.precision-home .brand-gallery,
  body.precision-home .global-team-logos {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
}

body.precision-home .experience-logos > *:nth-child(3n),
  body.precision-home .logo-gallery > *:nth-child(3n),
  body.precision-home .brand-gallery > *:nth-child(3n),
  body.precision-home .global-team-logos > *:nth-child(3n) {
  border-right: 1px solid var(--precision-border) !important;
}

body.precision-home .experience-logos > *:nth-child(2n),
  body.precision-home .logo-gallery > *:nth-child(2n),
  body.precision-home .brand-gallery > *:nth-child(2n),
  body.precision-home .global-team-logos > *:nth-child(2n) {
  border-right: 0 !important;
}

}

@media (prefers-reduced-motion: reduce) {
  body.precision-home *,
  body.precision-home *::before,
  body.precision-home *::after {
  animation-duration: .01ms !important;
  animation-iteration-count: 1 !important;
  transition-duration: .01ms !important;
}

}

/* Final hero blueprint refinement */
body.precision-home .hero-visual,
body.precision-home .hero-illustration,
body.precision-home .hero-art,
body.precision-home .hero-graphic {
  max-width: 420px !important;
  width: min(100%, 420px) !important;
  justify-self: end !important;
  align-self: center !important;
  opacity: 1 !important;
  filter: none !important;
  overflow: visible !important;
  transform-origin: center center !important;
  will-change: transform !important;
}

body.precision-home .hero-visual img,
body.precision-home .hero-illustration img,
body.precision-home .hero-art img,
body.precision-home .hero-graphic img {
  width: 100% !important;
  max-height: none !important;
  opacity: .96 !important;
}

@media (prefers-reduced-motion: no-preference) {
  body.precision-home .hero-visual,
  body.precision-home .hero-illustration,
  body.precision-home .hero-art,
  body.precision-home .hero-graphic {
  animation: blueprintFloat 8s ease-in-out infinite !important;
}

body.precision-home .hero-visual img,
  body.precision-home .hero-illustration img,
  body.precision-home .hero-art img,
  body.precision-home .hero-graphic img {
  animation: blueprintFade 900ms ease both !important;
}

}

@keyframes blueprintFloat {
  0%, 100% {
  transform: translate3d(0,0,0) rotate(0deg);
}

50% {
  transform: translate3d(0,-6px,0) rotate(.35deg);
}

}

@keyframes blueprintFade {
  from {
  opacity: 0;
  transform: translateY(8px) scale(.985);
}

to {
  opacity: .96;
  transform: translateY(0) scale(1);
}

}

@media (max-width: 1024px) {
  body.precision-home .hero-visual,
  body.precision-home .hero-illustration,
  body.precision-home .hero-art,
  body.precision-home .hero-graphic {
  max-width: 350px !important;
}

}

@media (max-width: 760px) {
  body.precision-home .hero-visual,
  body.precision-home .hero-illustration,
  body.precision-home .hero-art,
  body.precision-home .hero-graphic {
  max-width: 300px !important;
  justify-self: center !important;
  margin-top: 16px !important;
}

}

/* Final hero fit + illustration refinement */
body.precision-home .hero,
body.precision-home .clean-hero {
  min-height: 100svh !important;
  height: 100svh !important;
  padding: clamp(92px, 10vh, 112px) 0 clamp(40px, 5vh, 56px) !important;
  box-sizing: border-box !important;
}

body.precision-home .hero .shell,
body.precision-home .clean-hero .shell,
body.precision-home .hero-inner {
  min-height: calc(100svh - clamp(132px, 15vh, 168px)) !important;
  align-items: center !important;
}

body.precision-home .hero h1,
body.precision-home .clean-hero h1 {
  font-size: clamp(2.85rem, 4.9vw, 4.95rem) !important;
  line-height: 1.01 !important;
  max-width: 860px !important;
  margin: 12px 0 18px !important;
}

body.precision-home .hero p,
body.precision-home .clean-hero p {
  font-size: clamp(1rem, 1.05vw, 1.16rem) !important;
  line-height: 1.5 !important;
  max-width: 680px !important;
  margin-bottom: 22px !important;
}

body.precision-home .hero-proof {
  margin-top: 22px !important;
}

body.precision-home .hero-visual,
body.precision-home .hero-illustration,
body.precision-home .hero-art,
body.precision-home .hero-graphic {
  max-width: 430px !important;
  width: min(100%, 430px) !important;
  justify-self: end !important;
  opacity: 1 !important;
  filter: none !important;
  overflow: visible !important;
}

body.precision-home .hero-visual img,
body.precision-home .hero-illustration img,
body.precision-home .hero-art img,
body.precision-home .hero-graphic img {
  width: 100% !important;
  max-height: 500px !important;
  object-fit: contain !important;
  opacity: 1 !important;
}

@media (max-height: 800px) and (min-width: 761px) {
  body.precision-home .hero h1,
  body.precision-home .clean-hero h1 {
  font-size: clamp(2.65rem, 4.35vw, 4.25rem) !important;
  margin-bottom: 14px !important;
}

body.precision-home .hero p,
  body.precision-home .clean-hero p {
  font-size: 1rem !important;
  margin-bottom: 18px !important;
}

body.precision-home .hero-proof {
  margin-top: 18px !important;
}

body.precision-home .hero-visual,
  body.precision-home .hero-illustration,
  body.precision-home .hero-art,
  body.precision-home .hero-graphic {
  max-width: 360px !important;
}

}

@media (max-width: 1024px) {
  body.precision-home .hero,
  body.precision-home .clean-hero {
  height: auto !important;
  min-height: 100svh !important;
}

body.precision-home .hero-visual,
  body.precision-home .hero-illustration,
  body.precision-home .hero-art,
  body.precision-home .hero-graphic {
  max-width: 340px !important;
}

}

@media (max-width: 760px) {
  body.precision-home .hero,
  body.precision-home .clean-hero {
  height: auto !important;
  min-height: auto !important;
  padding: 100px 0 58px !important;
}

body.precision-home .hero h1,
  body.precision-home .clean-hero h1 {
  font-size: clamp(2.45rem, 10.5vw, 3.6rem) !important;
}

body.precision-home .hero-visual,
  body.precision-home .hero-illustration,
  body.precision-home .hero-art,
  body.precision-home .hero-graphic {
  max-width: 300px !important;
  justify-self: center !important;
}

}

@media (prefers-reduced-motion: no-preference) {
  body.precision-home .hero-visual img,
  body.precision-home .hero-illustration img,
  body.precision-home .hero-art img,
  body.precision-home .hero-graphic img {
  animation: heroSystemFade .8s ease both !important;
}

}

@keyframes heroSystemFade {
  from {
  opacity: 0;
  transform: translateY(10px) scale(.985);
}

to {
  opacity: 1;
  transform: translateY(0) scale(1);
}

}

/* Final text-led hero: no split grid, no illustration */
body.precision-home .hero,
body.precision-home .clean-hero {
  height: 100svh !important;
  min-height: 100svh !important;
  display: grid !important;
  align-items: center !important;
  padding: clamp(96px, 10vh, 120px) 0 clamp(44px, 6vh, 64px) !important;
  box-sizing: border-box !important;
}

body.precision-home .hero .shell,
body.precision-home .clean-hero .shell,
body.precision-home .hero-inner {
  display: block !important;
  min-height: auto !important;
  width: min(var(--precision-container), calc(100% - (var(--precision-gutter) * 2))) !important;
  max-width: var(--precision-container) !important;
}

body.precision-home .hero-copy,
body.precision-home .hero-content {
  width: 70% !important;
  max-width: 860px !important;
  min-width: 0 !important;
}

body.precision-home .hero h1,
body.precision-home .clean-hero h1 {
  width: 100% !important;
  max-width: none !important;
  font-size: clamp(2.85rem, 5vw, 5.1rem) !important;
  line-height: 1.01 !important;
  letter-spacing: -.045em !important;
  margin: 12px 0 18px !important;
  text-wrap: balance !important;
}

body.precision-home .hero p,
body.precision-home .clean-hero p {
  max-width: 700px !important;
  margin-bottom: 22px !important;
  font-size: clamp(1rem, 1.08vw, 1.16rem) !important;
  line-height: 1.5 !important;
}

body.precision-home .hero-visual,
body.precision-home .hero-illustration,
body.precision-home .hero-art,
body.precision-home .hero-graphic {
  display: none !important;
}

/* Recruiter-friendly evidence rail */
body.precision-home .hero-recruiter-signals {
  display: flex;
  flex-wrap: wrap;
  gap: 10px 18px;
  margin-top: 22px;
  max-width: 760px;
  color: rgba(23,23,23,.68);
  font-size: .88rem;
  line-height: 1.3;
}

body.precision-home .hero-recruiter-signals span {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  white-space: nowrap;
}

body.precision-home .hero-recruiter-signals span::before {
  content: "";
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: var(--precision-accent);
  box-shadow: inset 0 0 0 1px rgba(23,23,23,.18);
}

/* Keep any existing proof content calm and aligned */
body.precision-home .hero-proof {
  max-width: 760px !important;
  margin-top: 20px !important;
}

@media (max-height: 800px) and (min-width: 761px) {
  body.precision-home .hero,
  body.precision-home .clean-hero {
  padding-top: 88px !important;
  padding-bottom: 36px !important;
}

body.precision-home .hero h1,
  body.precision-home .clean-hero h1 {
  font-size: clamp(2.55rem, 4.45vw, 4.35rem) !important;
  margin-bottom: 14px !important;
}

body.precision-home .hero p,
  body.precision-home .clean-hero p {
  font-size: 1rem !important;
  margin-bottom: 16px !important;
}

body.precision-home .hero-recruiter-signals,
  body.precision-home .hero-proof {
  margin-top: 16px !important;
}

}

@media (max-width: 1024px) {
  body.precision-home .hero-copy,
  body.precision-home .hero-content {
  width: 82% !important;
  max-width: 760px !important;
}

}

@media (max-width: 760px) {
  body.precision-home .hero,
  body.precision-home .clean-hero {
  height: auto !important;
  min-height: 100svh !important;
  padding: 98px 0 54px !important;
}

body.precision-home .hero-copy,
  body.precision-home .hero-content {
  width: 100% !important;
  max-width: none !important;
}

body.precision-home .hero h1,
  body.precision-home .clean-hero h1 {
  font-size: clamp(2.45rem, 10.5vw, 3.6rem) !important;
}

body.precision-home .hero-recruiter-signals {
  gap: 10px 14px;
}

body.precision-home .hero-recruiter-signals span {
  white-space: normal;
}

}

/* Homepage V4 — final recruiter-focused refinement */
body.homepage-v4 {
  --v4-bg: #fafaf8;
  --v4-surface: #ffffff;
  --v4-text: #171717;
  --v4-muted: #66635f;
  --v4-border: #e7e5df;
  --v4-accent: #d9ff55;
  --v4-container: 1180px;
  --v4-gutter: clamp(18px, 3vw, 32px);
  --v4-radius: 16px;
  background: var(--v4-bg);
  color: var(--v4-text);
}

body.homepage-v4 .shell,
body.homepage-v4 .container,
body.homepage-v4 .wrap {
  width: min(var(--v4-container), calc(100% - (var(--v4-gutter) * 2))) !important;
  max-width: var(--v4-container) !important;
  margin-inline: auto !important;
}

/* Floating glass navigation */
body.homepage-v4 .site-header {
  position: fixed !important;
  top: 8px !important;
  left: 50% !important;
  width: min(var(--v4-container), calc(100% - (var(--v4-gutter) * 2))) !important;
  transform: translateX(-50%) !important;
  z-index: 1000 !important;
  background: rgba(250,250,248,1) !important;
  backdrop-filter: saturate(180%) blur(20px);
  background-image: none !important;
  border: 0px solid rgba(23,23,23,.08) !important;
  border-radius: 999px !important;
  box-shadow: 0 10px 28px rgba(23,23,23,0) !important;
  -webkit-backdrop-filter: blur(16px) saturate(120%) !important;
}

body.homepage-v4 .site-header::before,
body.homepage-v4 .site-header::after {
  display: none !important;
  content: none !important;
}

body.homepage-v4 .site-header .nav-wrap,
body.homepage-v4 .site-header .nav-inner,
body.homepage-v4 .site-header > .shell {
  width: 100% !important;
  max-width: none !important;
  padding-inline: 18px !important;
}

body.homepage-v4 .site-header a {
  color: rgba(23,23,23,.72) !important;
}

body.homepage-v4 .site-header a:hover,
body.homepage-v4 .site-header a[aria-current="page"] {
  color: var(--v4-text) !important;
}

body.homepage-v4 .site-header a[aria-current="page"] {
  background: rgba(255,255,255,.74) !important;
  border-radius: 999px !important;
  box-shadow: inset 0 0 0 1px rgba(23,23,23,.06) !important;
}

body.homepage-v4 .site-header .nav-cta,
body.homepage-v4 .site-header a[href*="linkedin"] {
  background: transparent !important;
  color: rgba(23,23,23,.64) !important;
  border: 1px solid rgba(23,23,23,.10) !important;
  box-shadow: none !important;
  font-weight: 500 !important;
}

/* Hero */
body.homepage-v4 .hero,
body.homepage-v4 .clean-hero {
  min-height: 100svh !important;
  height: 100svh !important;
  display: grid !important;
  align-items: center !important;
  padding: clamp(96px, 10vh, 116px) 0 clamp(42px, 6vh, 64px) !important;
  box-sizing: border-box !important;
  background:
    linear-gradient(rgba(23,23,23,.022) 1px, transparent 1px),
    linear-gradient(90deg, rgba(23,23,23,.022) 1px, transparent 1px) !important;
  background-size: 48px 48px !important;
}

body.homepage-v4 .hero .shell,
body.homepage-v4 .clean-hero .shell,
body.homepage-v4 .hero-inner {
  display: block !important;
}

body.homepage-v4 .hero-copy,
body.homepage-v4 .hero-content {
  width: 66% !important;
  max-width: 820px !important;
}

body.homepage-v4 .hero h1,
body.homepage-v4 .clean-hero h1 {
  width: 100% !important;
  max-width: none !important;
  font-size: clamp(2.85rem, 4.8vw, 4.9rem) !important;
  line-height: 1.02 !important;
  letter-spacing: -.042em !important;
  margin: 12px 0 18px !important;
  text-wrap: balance !important;
  font-weight: 650 !important;
}

body.homepage-v4 .hero p,
body.homepage-v4 .clean-hero p {
  max-width: 650px !important;
  color: var(--v4-muted) !important;
  font-size: clamp(1rem, 1.06vw, 1.15rem) !important;
  line-height: 1.55 !important;
  margin-bottom: 24px !important;
}

body.homepage-v4 .hero-actions {
  display: flex !important;
  gap: 12px !important;
  flex-wrap: wrap !important;
}

body.homepage-v4 .hero-actions .btn-primary,
body.homepage-v4 .hero-actions a:first-child {
  background: var(--v4-text) !important;
  color: #fff !important;
  border: 1px solid var(--v4-text) !important;
  box-shadow: none !important;
}

body.homepage-v4 .hero-actions .btn-secondary,
body.homepage-v4 .hero-actions a + a {
  background: transparent !important;
  color: var(--v4-text) !important;
  border: 1px solid rgba(23,23,23,.14) !important;
  box-shadow: none !important;
}

/* Recruiter evidence */
body.homepage-v4 .hero-recruiter-signals {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 0 !important;
  margin-top: 28px !important;
  max-width: 780px !important;
  border-top: 1px solid var(--v4-border) !important;
  border-bottom: 1px solid var(--v4-border) !important;
}

body.homepage-v4 .hero-recruiter-signals span {
  display: flex !important;
  flex-direction: column !important;
  gap: 4px !important;
  padding: 15px 18px !important;
  border-right: 1px solid var(--v4-border) !important;
}

body.homepage-v4 .hero-recruiter-signals span:nth-child(3n) {
  border-right: 0 !important;
}

body.homepage-v4 .hero-recruiter-signals strong {
  font-size: .92rem !important;
  font-weight: 650 !important;
  color: var(--v4-text) !important;
}

body.homepage-v4 .hero-recruiter-signals small {
  font-size: .78rem !important;
  color: var(--v4-muted) !important;
}

body.homepage-v4 .hero-proof {
  display: none !important;
}

/* Editorial section rhythm */
body.homepage-v4 section:not(.hero):not(.clean-hero) {
  padding-block: clamp(72px, 9vw, 112px) !important;
}

body.homepage-v4 section:not(.hero):not(.clean-hero) .section-kicker,
body.homepage-v4 section:not(.hero):not(.clean-hero) .eyebrow {
  display: block !important;
  margin-bottom: 12px !important;
  font-size: .78rem !important;
  font-weight: 650 !important;
  letter-spacing: .12em !important;
  text-transform: uppercase !important;
  color: var(--v4-muted) !important;
}

body.homepage-v4 h2 {
  max-width: 760px !important;
  margin-bottom: 16px !important;
  letter-spacing: -.03em !important;
}

body.homepage-v4 h2::after {
  content: "" !important;
  display: block !important;
  width: 54px !important;
  height: 3px !important;
  margin-top: 14px !important;
  background: var(--v4-accent) !important;
  border-radius: 999px !important;
}

/* Experience logos */
body.homepage-v4 .experience-logos,
body.homepage-v4 .logo-gallery,
body.homepage-v4 .brand-gallery,
body.homepage-v4 .global-team-logos {
  width: 100% !important;
  display: grid !important;
  grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
  gap: 0 !important;
  border: 1px solid var(--v4-border) !important;
  background: var(--v4-surface) !important;
  overflow: hidden !important;
}

body.homepage-v4 .experience-logos > *,
body.homepage-v4 .logo-gallery > *,
body.homepage-v4 .brand-gallery > *,
body.homepage-v4 .global-team-logos > * {
  aspect-ratio: 1 / 1 !important;
  display: grid !important;
  place-items: center !important;
  padding: clamp(22px, 2.7vw, 38px) !important;
  border: 0 !important;
  border-right: 1px solid var(--v4-border) !important;
  background: var(--v4-surface) !important;
  box-shadow: none !important;
}

body.homepage-v4 .experience-logos > *:last-child,
body.homepage-v4 .logo-gallery > *:last-child,
body.homepage-v4 .brand-gallery > *:last-child,
body.homepage-v4 .global-team-logos > *:last-child {
  border-right: 0 !important;
}

body.homepage-v4 .experience-logos img,
body.homepage-v4 .logo-gallery img,
body.homepage-v4 .brand-gallery img,
body.homepage-v4 .global-team-logos img {
  width: auto !important;
  height: auto !important;
  max-width: 66% !important;
  max-height: 38% !important;
  object-fit: contain !important;
  opacity: .68 !important;
  filter: grayscale(1) contrast(.94) !important;
  transition: opacity .2s ease, transform .2s ease !important;
}

body.homepage-v4 .experience-logos > *:hover img,
body.homepage-v4 .logo-gallery > *:hover img,
body.homepage-v4 .brand-gallery > *:hover img,
body.homepage-v4 .global-team-logos > *:hover img {
  opacity: 1 !important;
  transform: translateY(-2px) !important;
}

/* How I help product teams */
body.homepage-v4 .ways-grid .way {
  background: var(--v4-surface) !important;
  background-image: none !important;
  border: 1px solid var(--v4-border) !important;
  border-radius: var(--v4-radius) !important;
  box-shadow: none !important;
  transition: transform .22s ease, border-color .22s ease !important;
}

body.homepage-v4 .ways-grid .way::before,
body.homepage-v4 .ways-grid .way::after {
  background: none !important;
  background-image: none !important;
  opacity: 0 !important;
}

body.homepage-v4 .ways-grid .way:hover {
  transform: translateY(-3px) !important;
  border-color: rgba(23,23,23,.16) !important;
}

/* Projects */
body.homepage-v4 .project-card {
  background: var(--v4-surface) !important;
  border: 1px solid var(--v4-border) !important;
  border-radius: var(--v4-radius) !important;
  box-shadow: 0 16px 40px rgba(23,23,23,.055) !important;
  transition: transform .22s ease, box-shadow .22s ease !important;
}

body.homepage-v4 .project-card:hover {
  transform: translateY(-4px) !important;
  box-shadow: 0 22px 50px rgba(23,23,23,.08) !important;
}

/* Footer */
body.homepage-v4 footer .shell,
body.homepage-v4 footer .container {
  display: grid !important;
  grid-template-columns: auto 1fr auto !important;
  align-items: center !important;
  gap: 28px !important;
}

@media (max-height: 800px) and (min-width: 761px) {
  body.homepage-v4 .hero,
  body.homepage-v4 .clean-hero {
  padding-top: 88px !important;
  padding-bottom: 32px !important;
}

body.homepage-v4 .hero h1,
  body.homepage-v4 .clean-hero h1 {
  font-size: clamp(2.55rem, 4.2vw, 4.15rem) !important;
  margin-bottom: 14px !important;
}

body.homepage-v4 .hero p,
  body.homepage-v4 .clean-hero p {
  font-size: 1rem !important;
  margin-bottom: 18px !important;
}

body.homepage-v4 .hero-recruiter-signals {
  margin-top: 20px !important;
}

body.homepage-v4 .hero-recruiter-signals span {
  padding-block: 11px !important;
}

}

@media (max-width: 1024px) {
  body.homepage-v4 .hero-copy,
  body.homepage-v4 .hero-content {
  width: 82% !important;
}

body.homepage-v4 .experience-logos,
  body.homepage-v4 .logo-gallery,
  body.homepage-v4 .brand-gallery,
  body.homepage-v4 .global-team-logos {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
}

body.homepage-v4 .experience-logos > *,
  body.homepage-v4 .logo-gallery > *,
  body.homepage-v4 .brand-gallery > *,
  body.homepage-v4 .global-team-logos > * {
  border-bottom: 1px solid var(--v4-border) !important;
}

}

@media (max-width: 760px) {
  body.homepage-v4 .site-header {
  width: calc(100% - 20px) !important;
  top: 10px !important;
  border-radius: 22px !important;
}

body.homepage-v4 .hero,
  body.homepage-v4 .clean-hero {
  height: auto !important;
  min-height: 100svh !important;
  padding: 98px 0 54px !important;
}

body.homepage-v4 .hero-copy,
  body.homepage-v4 .hero-content {
  width: 100% !important;
  max-width: none !important;
}

body.homepage-v4 .hero h1,
  body.homepage-v4 .clean-hero h1 {
  font-size: clamp(2.45rem, 10.5vw, 3.6rem) !important;
}

body.homepage-v4 .hero-recruiter-signals {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
}

body.homepage-v4 .hero-recruiter-signals span:nth-child(3n) {
  border-right: 1px solid var(--v4-border) !important;
}

body.homepage-v4 .hero-recruiter-signals span:nth-child(2n) {
  border-right: 0 !important;
}

body.homepage-v4 .experience-logos,
  body.homepage-v4 .logo-gallery,
  body.homepage-v4 .brand-gallery,
  body.homepage-v4 .global-team-logos {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
}

body.homepage-v4 footer .shell,
  body.homepage-v4 footer .container {
  grid-template-columns: 1fr !important;
  justify-items: start !important;
}

}

@media (prefers-reduced-motion: reduce) {
  body.homepage-v4 *,
  body.homepage-v4 *::before,
  body.homepage-v4 *::after {
  animation-duration: .01ms !important;
  transition-duration: .01ms !important;
}

}

/* Dark section typography refinement */
body.homepage-v4 #capabilities h2,
body.homepage-v4 .capabilities h2,
body.homepage-v4 #outcomes h2,
body.homepage-v4 .selected-outcomes h2,
body.homepage-v4 .outcomes h2 {
  color: #f7f7f5 !important;
}

body.homepage-v4 #capabilities p,
body.homepage-v4 .capabilities p,
body.homepage-v4 #outcomes p,
body.homepage-v4 .selected-outcomes p,
body.homepage-v4 .outcomes p {
  color: rgba(247,247,245,.72) !important;
}

body.homepage-v4 #capabilities .section-label,
body.homepage-v4 #capabilities .section-kicker,
body.homepage-v4 #capabilities .eyebrow,
body.homepage-v4 .capabilities .section-label,
body.homepage-v4 .capabilities .section-kicker,
body.homepage-v4 .capabilities .eyebrow,
body.homepage-v4 #outcomes .section-label,
body.homepage-v4 #outcomes .section-kicker,
body.homepage-v4 #outcomes .eyebrow,
body.homepage-v4 .selected-outcomes .section-label,
body.homepage-v4 .selected-outcomes .section-kicker,
body.homepage-v4 .selected-outcomes .eyebrow,
body.homepage-v4 .outcomes .section-label,
body.homepage-v4 .outcomes .section-kicker,
body.homepage-v4 .outcomes .eyebrow {
  color: rgba(247,247,245,.58) !important;
  letter-spacing: .14em !important;
  text-transform: uppercase !important;
}

body.homepage-v4 #capabilities h2::after,
body.homepage-v4 .capabilities h2::after,
body.homepage-v4 #outcomes h2::after,
body.homepage-v4 .selected-outcomes h2::after,
body.homepage-v4 .outcomes h2::after {
  background: #d9ff55 !important;
}
