/* Notion AI 2026-10-01 */
  *, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
  :root {
    --dark:#1a1a2a; --dark-mid:#2d2d42; --dark-soft:#4a4a64;
    --purple:#7c3aed; --purple-dark:#6d28d9; --purple-light:#a78bfa;
    --purple-pale:#ede9fe; --purple-xpale:#f5f3ff;
    --white:#ffffff; --off-white:#f8f8fc;
    --border:#e5e5f0; --border-p:#d8d0f5; --text-muted:#5a5a78;
  }
  html { scroll-behavior:smooth; scroll-padding-top:5.5rem; }
  body { font-family:'Inter',sans-serif; background:var(--white); color:var(--dark); line-height:1.6; overflow-x:hidden; }

  nav { position:fixed; top:0; left:0; right:0; z-index:100; display:flex; align-items:center; gap:2rem; padding:1.1rem 5rem; background:rgba(255,255,255,0.97); backdrop-filter:blur(12px); border-bottom:1px solid var(--border-p); }
  .nav-brand { display:flex; align-items:center; flex-shrink:0; text-decoration:none; }
  .site-logo { display:block; height:28px; width:auto; }
  footer .site-logo { height:24px; opacity:0.9; }
  .nav-links { display:flex; align-items:center; justify-content:center; gap:clamp(1rem,2vw,2rem); list-style:none; flex:1; margin:0; padding:0; }
  .nav-links a { font-family:'Montserrat',sans-serif; font-size:0.72rem; font-weight:600; letter-spacing:0.08em; text-transform:uppercase; color:var(--text-muted); text-decoration:none; transition:color 0.2s; white-space:nowrap; }
  .nav-links a:hover { color:var(--purple); }
  .nav-cta { flex-shrink:0; background:var(--purple); color:var(--white); border:none; padding:0.6rem 1.5rem; font-family:'Montserrat',sans-serif; font-size:0.78rem; font-weight:700; cursor:pointer; letter-spacing:0.07em; text-transform:uppercase; transition:background 0.2s,transform 0.2s; text-decoration:none; display:inline-block; border-radius:2px; }
  .nav-cta:hover { background:var(--purple-dark); transform:translateY(-1px); }

  .btn-primary { background:var(--purple); color:var(--white); border:none; padding:0.95rem 2.25rem; font-family:'Montserrat',sans-serif; font-size:0.78rem; font-weight:700; cursor:pointer; transition:all 0.2s; text-decoration:none; display:inline-block; border-radius:2px; letter-spacing:0.07em; text-transform:uppercase; }
  .btn-primary:hover { background:var(--purple-dark); transform:translateY(-1px); }

  .hero { min-height:100vh; display:grid; grid-template-columns:55fr 45fr; padding-top:68px; background:var(--white); }
  .hero-left { display:flex; flex-direction:column; justify-content:center; padding:7rem 4rem 7rem 5rem; }

  .eyebrow { display:flex; align-items:center; gap:0.75rem; margin-bottom:1.75rem; }
  .eyebrow-line { width:2rem; height:2px; background:var(--purple); flex-shrink:0; }
  .eyebrow-text { font-family:'Montserrat',sans-serif; font-size:0.68rem; font-weight:700; letter-spacing:0.2em; text-transform:uppercase; color:var(--purple); }

  .hero-headline { font-family:'Montserrat',sans-serif; font-size:clamp(2.8rem,4.2vw,4.4rem); font-weight:900; line-height:1.04; color:var(--dark); margin-bottom:1.75rem; letter-spacing:-0.03em; }
  .hero-headline .hl { color:var(--purple); }
  .hero-sub { font-size:1.05rem; font-weight:300; color:var(--text-muted); line-height:1.8; max-width:46ch; margin-bottom:2.5rem; }
  .hero-cta-group { display:flex; align-items:center; gap:1.5rem; flex-wrap:wrap; }

  .btn-ghost { color:var(--text-muted); font-size:0.875rem; text-decoration:none; transition:color 0.2s; }
  .btn-ghost:hover { color:var(--purple); }

  @keyframes dark-grid-drift-sm { from{background-position:0 0,0 0} to{background-position:44px 44px,44px 44px} }
  @keyframes dark-grid-drift-lg { from{background-position:0 0,0 0} to{background-position:52px 52px,52px 52px} }
  @keyframes dark-glow-pulse { 0%,100%{opacity:0.3;transform:translate(0,0) scale(1)} 50%{opacity:0.6;transform:translate(4%,-3%) scale(1.06)} }
  @keyframes dark-line-pulse { 0%,100%{opacity:0.22} 50%{opacity:0.48} }

  .hero-right { background:var(--dark); position:relative; overflow:hidden; display:flex; flex-direction:column; justify-content:flex-end; }
  .hero-right::after { content:''; position:absolute; width:70%; height:80%; top:-15%; right:-20%; background:radial-gradient(ellipse at center,rgba(124,58,237,0.16) 0%,transparent 68%); pointer-events:none; z-index:2; animation:dark-glow-pulse 11s ease-in-out infinite; }
  .hr-grid { position:absolute; inset:0; z-index:2; pointer-events:none; background-image:linear-gradient(rgba(124,58,237,0.07) 1px,transparent 1px),linear-gradient(90deg,rgba(124,58,237,0.07) 1px,transparent 1px); background-size:44px 44px; animation:dark-grid-drift-sm 28s linear infinite; }
  .hr-rule { position:absolute; top:50%; left:0; right:0; height:2px; z-index:2; pointer-events:none; background:var(--purple); opacity:0.35; animation:dark-line-pulse 7s ease-in-out infinite; }
  .hr-photo { position:absolute; inset:0; z-index:0; }
  .hero-img { width:100%; height:100%; object-fit:cover; object-position:center 22%; display:block; }
  .hr-overlay { position:absolute; inset:0; z-index:1; background:linear-gradient(to top,rgba(26,26,42,0.97) 0%,rgba(26,26,42,0.55) 38%,rgba(26,26,42,0.15) 68%,transparent 100%); pointer-events:none; }
  .hero-namecard { position:relative; z-index:3; overflow:hidden; padding:2rem 2.5rem; border-top:1px solid rgba(255,255,255,0.07); background:rgba(26,26,42,0.88); }
  .hero-namecard::before { content:''; position:absolute; inset:0; z-index:0; pointer-events:none; background-image:linear-gradient(rgba(124,58,237,0.08) 1px,transparent 1px),linear-gradient(90deg,rgba(124,58,237,0.08) 1px,transparent 1px); background-size:44px 44px; animation:dark-grid-drift-sm 26s linear infinite; opacity:0; }
  .hero-namecard > * { position:relative; z-index:1; }
  .nc-name { font-family:'Montserrat',sans-serif; font-size:1.35rem; font-weight:800; color:var(--white); letter-spacing:-0.02em; margin-bottom:0.2rem; }
  .nc-role { font-size:0.7rem; color:var(--purple-light); letter-spacing:0.1em; text-transform:uppercase; font-weight:600; margin-bottom:1rem; font-family:'Montserrat',sans-serif; }
  .nc-badges { display:flex; flex-wrap:wrap; gap:0.35rem; }
  .badge { font-size:0.65rem; font-weight:500; padding:0.2rem 0.6rem; border:1px solid rgba(124,58,237,0.4); color:var(--purple-light); background:rgba(124,58,237,0.1); letter-spacing:0.04em; border-radius:2px; }

  .stat-strip { position:relative; background:var(--dark); border-top:3px solid var(--purple); overflow:hidden; }
  .stat-strip::before { content:''; position:absolute; inset:0; z-index:0; pointer-events:none; background-image:linear-gradient(rgba(124,58,237,0.06) 1px,transparent 1px),linear-gradient(90deg,rgba(124,58,237,0.06) 1px,transparent 1px); background-size:44px 44px; animation:dark-grid-drift-sm 32s linear infinite; }
  .stat-strip::after { content:''; position:absolute; width:50%; height:130%; top:-20%; left:-10%; background:radial-gradient(ellipse at center,rgba(124,58,237,0.12) 0%,transparent 70%); pointer-events:none; z-index:0; animation:dark-glow-pulse 9s ease-in-out infinite; }
  .stat-strip-track { position:relative; z-index:1; display:grid; grid-template-columns:repeat(4,1fr); }
  .stat-item { padding:2.25rem 2rem; border-right:1px solid rgba(255,255,255,0.06); }
  .stat-strip-track > .stat-item:last-child { border-right:none; }
  .stat-item--clone { display:none; }
  @keyframes stat-marquee { from{transform:translateX(0)} to{transform:translateX(-50%)} }
  .stat-num { font-family:'Montserrat',sans-serif; font-size:2rem; font-weight:900; color:var(--white); display:block; line-height:1; margin-bottom:0.4rem; letter-spacing:-0.04em; }
  .stat-num .ac { color:var(--purple-light); }
  .stat-label { font-size:0.68rem; color:rgba(255,255,255,0.3); text-transform:uppercase; letter-spacing:0.12em; }

  section { padding:6rem 5rem; }
  .sec-eyebrow { display:flex; align-items:center; gap:0.75rem; margin-bottom:0.9rem; }
  .sec-eyebrow::before { content:''; display:block; width:1.5rem; height:2px; background:var(--purple); flex-shrink:0; }
  .sec-eyebrow span { font-family:'Montserrat',sans-serif; font-size:0.67rem; font-weight:700; letter-spacing:0.2em; text-transform:uppercase; color:var(--purple); }
  .sec-title { font-family:'Montserrat',sans-serif; font-size:clamp(1.7rem,2.6vw,2.4rem); font-weight:900; color:var(--dark); line-height:1.1; letter-spacing:-0.03em; margin-bottom:1.25rem; }

  .problem { background:var(--off-white); }
  .problem-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:1.25rem; margin-top:3rem; }
  .problem-card { background:var(--white); border:1px solid var(--border-p); border-top:3px solid var(--purple); padding:2.25rem 1.75rem; transition:transform 0.2s,box-shadow 0.2s; }
  .problem-card:hover { transform:translateY(-2px); box-shadow:0 6px 24px rgba(124,58,237,0.1); }
  .problem-num { font-family:'Montserrat',sans-serif; font-size:2.5rem; font-weight:900; color:var(--purple-pale); line-height:1; margin-bottom:1rem; letter-spacing:-0.05em; }
  .problem-text { font-size:0.9rem; color:var(--text-muted); line-height:1.75; font-weight:300; }
  .problem-text strong { color:var(--dark); font-weight:600; }

  .solution { background:var(--white); }
  .solution-layout { display:flex; flex-direction:column; gap:3rem; margin-top:3rem; }
  .solution-top { display:grid; grid-template-columns:1fr 1fr; gap:3rem 5rem; align-items:start; }
  .solution-video-wrap { position:relative; aspect-ratio:1; border-radius:4px; overflow:hidden; border:1px solid var(--border-p); background:var(--dark); align-self:start; }
  .solution-video-wrap::before { content:''; position:absolute; inset:0; z-index:0; pointer-events:none; background-image:linear-gradient(rgba(124,58,237,0.09) 1px,transparent 1px),linear-gradient(90deg,rgba(124,58,237,0.09) 1px,transparent 1px); background-size:36px 36px; animation:dark-grid-drift-sm 22s linear infinite; }
  .solution-video-wrap .solution-video { position:relative; z-index:1; }
  .solution-box { background:var(--purple); padding:3rem; border-radius:4px; position:relative; overflow:hidden; }
  .solution-box::before { content:''; position:absolute; top:-3rem; right:-3rem; width:14rem; height:14rem; border:1px solid rgba(255,255,255,0.1); border-radius:50%; }
  .solution-box::after { content:''; position:absolute; bottom:-2rem; left:-2rem; width:10rem; height:10rem; border:1px solid rgba(255,255,255,0.07); border-radius:50%; }
  .solution-body { font-size:1rem; font-weight:300; color:var(--text-muted); line-height:1.85; margin-bottom:1.5rem; }
  .solution-body strong { color:var(--dark); font-weight:600; }
  .solution-video { width:100%; height:100%; display:block; object-fit:cover; object-position:center 62%; }
  .solution-box-header { position:relative; z-index:1; margin-bottom:2rem; }
  .sr-label { font-family:'Montserrat',sans-serif; font-size:0.65rem; font-weight:700; letter-spacing:0.22em; text-transform:uppercase; color:rgba(255,255,255,0.6); margin-bottom:0.75rem; }
  .sr-title { font-family:'Montserrat',sans-serif; font-size:1.5rem; font-weight:900; color:var(--white); line-height:1.2; letter-spacing:-0.02em; }
  .sr-items { display:grid; grid-template-columns:repeat(3,1fr); gap:2rem; position:relative; z-index:1; }
  .sr-item { display:flex; gap:1rem; padding:0 1.5rem 0 0; border-right:1px solid rgba(255,255,255,0.12); align-items:flex-start; }
  .sr-item:last-child { border-right:none; padding-right:0; }
  .sr-num { font-family:'Montserrat',sans-serif; font-size:1.4rem; font-weight:900; color:rgba(255,255,255,0.2); line-height:1; flex-shrink:0; padding-top:0.1rem; }
  .sr-item-title { font-family:'Montserrat',sans-serif; font-size:0.75rem; font-weight:800; color:var(--white); text-transform:uppercase; letter-spacing:0.1em; margin-bottom:0.3rem; }
  .sr-item-desc { font-size:0.85rem; color:rgba(255,255,255,0.65); font-weight:300; line-height:1.6; }

  .the-call { background:var(--dark); padding:6rem 5rem; position:relative; overflow:hidden; }
  .the-call::after { content:''; position:absolute; width:45%; height:120%; bottom:-30%; right:-8%; background:radial-gradient(ellipse at center,rgba(124,58,237,0.15) 0%,transparent 68%); pointer-events:none; z-index:0; animation:dark-glow-pulse 12s ease-in-out infinite; }
  .tc-grid { position:absolute; inset:0; z-index:0; pointer-events:none; background-image:linear-gradient(rgba(124,58,237,0.05) 1px,transparent 1px),linear-gradient(90deg,rgba(124,58,237,0.05) 1px,transparent 1px); background-size:52px 52px; animation:dark-grid-drift-lg 34s linear infinite; }
  .tc-inner { position:relative; z-index:1; }
  .tc-header { display:grid; grid-template-columns:1fr 1fr; gap:5rem; align-items:start; margin-bottom:4rem; }
  .tc-photo { border-radius:4px; overflow:hidden; border:2px solid rgba(124,58,237,0.35); aspect-ratio:4/3; }
  .tc-photo img { width:100%; height:100%; object-fit:cover; object-position:center 30%; display:block; }
  .tc-sec-eyebrow { display:flex; align-items:center; gap:0.75rem; margin-bottom:0.9rem; }
  .tc-sec-eyebrow::before { content:''; display:block; width:1.5rem; height:2px; background:var(--purple-light); flex-shrink:0; }
  .tc-sec-eyebrow span { font-family:'Montserrat',sans-serif; font-size:0.67rem; font-weight:700; letter-spacing:0.2em; text-transform:uppercase; color:var(--purple-light); }
  .tc-title { font-family:'Montserrat',sans-serif; font-size:clamp(1.7rem,2.6vw,2.4rem); font-weight:900; color:var(--white); line-height:1.1; letter-spacing:-0.03em; margin-bottom:1.5rem; }
  .tc-title .hl { color:var(--purple-light); }
  .tc-right-text { font-size:1rem; font-weight:300; color:rgba(255,255,255,0.5); line-height:1.85; }
  .tc-right-text strong { color:rgba(255,255,255,0.8); font-weight:500; }

  .tc-cta-row { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:1.5rem; padding-top:3rem; border-top:1px solid rgba(124,58,237,0.2); }
  .tc-cta-headline { font-family:'Montserrat',sans-serif; font-size:1.35rem; font-weight:900; color:var(--white); letter-spacing:-0.025em; margin-bottom:0.4rem; }
  .tc-cta-sub { font-size:0.875rem; color:rgba(255,255,255,0.35); font-weight:300; max-width:52ch; }
  .btn-cta-white { background:var(--white); color:var(--purple-dark); border:none; padding:1.1rem 2.75rem; font-family:'Montserrat',sans-serif; font-size:0.82rem; font-weight:800; letter-spacing:0.07em; text-transform:uppercase; border-radius:2px; transition:all 0.2s; text-decoration:none; display:inline-block; white-space:nowrap; flex-shrink:0; }
  .btn-cta-white:hover { background:var(--purple-pale); transform:translateY(-2px); }

  .who { background:var(--purple-xpale); }
  .who-layout { display:grid; grid-template-columns:minmax(260px,40%) 1fr; gap:3.5rem; margin-top:3rem; align-items:start; }
  .who-visual { position:sticky; top:5.5rem; align-self:start; }
  .who-photo { border-radius:4px; overflow:hidden; border:1px solid var(--border-p); aspect-ratio:4/5; margin:0; }
  .who-photo img { width:100%; height:100%; object-fit:cover; object-position:center 35%; display:block; }
  .who-content { display:flex; flex-direction:column; gap:1.25rem; }
  .signal-list { list-style:none; display:flex; flex-direction:column; gap:0.6rem; }
  .signal-item { display:flex; gap:1rem; padding:1.1rem 1.25rem; background:var(--white); border:1px solid var(--border-p); border-left:3px solid var(--purple); align-items:flex-start; transition:box-shadow 0.2s; }
  .signal-item:hover { box-shadow:0 4px 16px rgba(124,58,237,0.1); }
  .signal-dot { width:7px; height:7px; background:var(--purple); border-radius:50%; flex-shrink:0; margin-top:0.45rem; }
  .signal-text { font-size:0.88rem; color:var(--text-muted); line-height:1.65; font-weight:300; }
  .signal-text strong { color:var(--dark); font-weight:600; }
  .who-box { position:relative; overflow:hidden; background:var(--dark); padding:2.5rem; border-radius:3px; border-top:3px solid var(--purple); }
  .who-box::before { content:''; position:absolute; inset:0; z-index:0; pointer-events:none; background-image:linear-gradient(rgba(124,58,237,0.07) 1px,transparent 1px),linear-gradient(90deg,rgba(124,58,237,0.07) 1px,transparent 1px); background-size:40px 40px; animation:dark-grid-drift-sm 30s linear infinite; }
  .who-box::after { content:''; position:absolute; width:70%; height:90%; top:-20%; right:-25%; background:radial-gradient(ellipse at center,rgba(124,58,237,0.14) 0%,transparent 65%); pointer-events:none; z-index:0; animation:dark-glow-pulse 10s ease-in-out infinite; }
  .who-box > * { position:relative; z-index:1; }
  .who-box-label { font-family:'Montserrat',sans-serif; font-size:0.65rem; letter-spacing:0.22em; text-transform:uppercase; color:var(--purple-light); margin-bottom:0.65rem; font-weight:700; }
  .who-box-title { font-family:'Montserrat',sans-serif; font-size:1.2rem; font-weight:800; color:var(--white); line-height:1.25; margin-bottom:1.25rem; letter-spacing:-0.02em; }
  .who-box-body { font-size:0.85rem; color:rgba(255,255,255,0.78); line-height:1.8; font-weight:300; }
  .who-box-divider { height:1px; background:rgba(255,255,255,0.14); margin:1.25rem 0; }
  .who-box-note { font-size:0.8rem; color:rgba(255,255,255,0.62); line-height:1.75; font-weight:300; font-style:italic; }

  .bio { background:var(--white); }
  .bio-layout { display:grid; grid-template-columns:260px 1fr; gap:5rem; margin-top:3rem; align-items:start; }
  .bio-sticky { position:sticky; top:5.5rem; }
  .bio-photo { width:100%; aspect-ratio:1; background:var(--dark); margin-bottom:1.5rem; overflow:hidden; border-radius:3px; }
  .bio-photo img { width:100%; height:100%; object-fit:cover; object-position:center 22%; display:block; }
  .bio-name { font-family:'Montserrat',sans-serif; font-size:1.1rem; font-weight:800; color:var(--dark); letter-spacing:-0.02em; margin-bottom:0.2rem; }
  .bio-role { font-family:'Montserrat',sans-serif; font-size:0.67rem; color:var(--purple); text-transform:uppercase; letter-spacing:0.12em; font-weight:700; margin-bottom:1rem; }
  .bio-linkedin { display:inline-flex; align-items:center; gap:0.4rem; font-size:0.78rem; color:var(--purple); text-decoration:none; font-weight:500; border-bottom:1px solid var(--purple-pale); padding-bottom:0.1rem; transition:border-color 0.2s; margin-bottom:1.25rem; }
  .bio-linkedin:hover { border-color:var(--purple); }
  .bio-creds { display:flex; flex-direction:column; gap:0.4rem; }
  .bio-cred { font-size:0.75rem; color:var(--text-muted); display:flex; align-items:center; gap:0.5rem; font-weight:300; }
  .bio-cred::before { content:''; display:block; width:4px; height:4px; background:var(--purple); border-radius:50%; flex-shrink:0; }

  .bio-lede { font-size:1.05rem; color:var(--dark); line-height:1.85; font-weight:300; margin-bottom:1.5rem; border-left:3px solid var(--purple); padding-left:1.25rem; }
  .bio-body { font-size:0.9rem; color:var(--text-muted); line-height:1.9; font-weight:300; margin-bottom:1.1rem; }

  .what { background:var(--off-white); }
  .what-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:1.25rem; margin-top:3rem; margin-bottom:4rem; }
  .what-card { background:var(--white); border:1px solid var(--border-p); border-top:3px solid var(--purple); padding:2.25rem 1.75rem; transition:transform 0.2s,box-shadow 0.2s; border-radius:3px; }
  .what-card:hover { transform:translateY(-2px); box-shadow:0 6px 24px rgba(124,58,237,0.1); }
  .what-num { font-family:'Montserrat',sans-serif; font-size:0.65rem; font-weight:800; color:var(--purple); text-transform:uppercase; letter-spacing:0.2em; margin-bottom:1rem; display:flex; align-items:center; gap:0.5rem; }
  .what-num::after { content:''; flex:1; height:1px; background:var(--border-p); }
  .what-title { font-family:'Montserrat',sans-serif; font-size:0.95rem; font-weight:800; color:var(--dark); margin-bottom:0.65rem; letter-spacing:-0.01em; }
  .what-body { font-size:0.85rem; color:var(--text-muted); line-height:1.75; font-weight:300; }

  .final-cta { position:relative; width:100%; padding:6rem 5rem; display:flex; align-items:center; overflow:hidden; min-height:32rem; }
  .final-cta-bg { position:absolute; inset:0; background:url('/images/P5211725.jpg') center 35%/cover no-repeat; }
  .final-cta-bg::after { content:''; position:absolute; inset:0; background:linear-gradient(90deg,rgba(26,26,42,0.88) 0%,rgba(26,26,42,0.75) 42%,rgba(26,26,42,0.35) 70%,rgba(26,26,42,0.25) 100%); }
  .final-cta-inner { position:relative; z-index:1; width:100%; max-width:72rem; margin:0 auto; display:grid; grid-template-columns:1fr 1fr; gap:4rem; align-items:center; }
  .final-cta-content { background:var(--purple); padding:3rem 3.5rem; border-radius:4px; border-top:3px solid var(--purple-light); box-shadow:0 16px 48px rgba(0,0,0,0.28); }
  .final-cta-eyebrow { font-family:'Montserrat',sans-serif; font-size:0.65rem; font-weight:700; letter-spacing:0.22em; text-transform:uppercase; color:var(--purple-light); margin-bottom:1rem; }
  .final-cta-title { font-family:'Montserrat',sans-serif; font-size:clamp(1.35rem,2.2vw,1.85rem); font-weight:900; color:var(--white); line-height:1.15; letter-spacing:-0.03em; margin-bottom:1rem; }
  .final-cta-sub { font-size:1rem; color:rgba(255,255,255,0.72); font-weight:300; line-height:1.75; margin-bottom:2rem; max-width:42ch; }
  .final-cta-media { min-height:12rem; }

    .necto-contact {
    --necto-ink: var(--dark);
    --necto-muted: var(--dark-soft);
    --necto-accent: var(--purple);
    --necto-border: var(--purple-light);
    --necto-surface: var(--off-white);
    display: grid;
    grid-template-columns: minmax(0, 0.8fr) minmax(0, 1.2fr);
    gap: clamp(2rem, 6vw, 6rem);
    padding: clamp(3rem, 8vw, 7rem) clamp(1.25rem, 6vw, 6rem);
    color: var(--necto-ink);
    background: var(--necto-surface);
  }
  .necto-contact__intro { max-width: 34rem; }
  .necto-contact__eyebrow {
    margin: 0 0 0.75rem;
    color: var(--necto-accent);
    font-size: 0.82rem;
    font-weight: 700;
    letter-spacing: 0.12em;
    text-transform: uppercase;
  }
  .necto-contact h2 {
    margin: 0 0 1rem;
    font-size: clamp(2rem, 4vw, 3.6rem);
    line-height: 1.05;
  }
  .necto-contact p { line-height: 1.65; }
  .contact-form { display: grid; gap: 1.25rem; }
  .contact-form__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1.25rem;
  }
  .contact-form label { display: grid; gap: 0.5rem; font-weight: 650; }
  .contact-form input,
  .contact-form textarea {
    width: 100%;
    box-sizing: border-box;
    border: 1px solid var(--necto-border);
    border-radius: 0.3rem;
    padding: 0.85rem 0.95rem;
    color: var(--necto-ink);
    background: #fff;
    font: inherit;
  }
  .contact-form input:focus,
  .contact-form textarea:focus {
    outline: 3px solid color-mix(in srgb, var(--necto-accent) 28%, transparent);
    border-color: var(--necto-accent);
  }
  .contact-form__consent {
    grid-template-columns: auto 1fr;
    align-items: start;
    font-size: 0.92rem;
    font-weight: 400 !important;
  }
  .contact-form__consent input { width: 1.1rem; margin-top: 0.2rem; }
  .contact-form__website { position: absolute; left: -10000px; }
  .contact-form__actions { display: flex; align-items: center; gap: 1rem; flex-wrap: wrap; }
  .contact-form button {
    border: 0;
    border-radius: 999px;
    padding: 0.9rem 1.4rem;
    color: #fff;
    background: var(--necto-accent);
    font: inherit;
    font-weight: 750;
    cursor: pointer;
  }
  .contact-form button:hover { filter: brightness(0.92); }
  .contact-form button:disabled { cursor: wait; opacity: 0.65; }
  #contact-status { margin: 0; color: var(--necto-muted); }
  #contact-status[data-state="error"] { color: #a52b20; }
  #contact-status[data-state="success"] { color: #17623c; }
  @media (max-width: 760px) {
    .necto-contact, .contact-form__grid { grid-template-columns: 1fr; }
  }

  footer { position:relative; overflow:hidden; background:var(--dark); padding:1.75rem 5rem; display:flex; align-items:center; justify-content:space-between; border-top:2px solid var(--purple); }
  footer::before { content:''; position:absolute; inset:0; z-index:0; pointer-events:none; background-image:linear-gradient(rgba(124,58,237,0.05) 1px,transparent 1px),linear-gradient(90deg,rgba(124,58,237,0.05) 1px,transparent 1px); background-size:44px 44px; animation:dark-grid-drift-sm 38s linear infinite; }
  footer > * { position:relative; z-index:1; }
  .footer-copy { font-size:0.75rem; color:rgba(255,255,255,0.2); font-weight:300; }

  @keyframes fadeUp { from{opacity:0;transform:translateY(18px)} to{opacity:1;transform:translateY(0)} }
  .eyebrow        { animation:fadeUp 0.5s ease 0.1s both; }
  .hero-headline  { animation:fadeUp 0.5s ease 0.22s both; }
  .hero-sub       { animation:fadeUp 0.5s ease 0.36s both; }
  .hero-cta-group { animation:fadeUp 0.5s ease 0.5s both; }

  @media (max-width:960px) {
    nav { justify-content:space-between; gap:0.75rem; padding:1rem 1.25rem; }
    .nav-links { display:none !important; }
    .nav-brand .site-logo { height:24px; max-width:9.5rem; width:auto; }
    .nav-cta { margin-left:auto; padding:0.55rem 1rem; font-size:0.7rem; }
    .hero { grid-template-columns:1fr; min-height:auto; }
    .hero-left { padding:6.5rem 1.5rem 2.5rem; }
    .hero-right { min-height:auto; flex-direction:column; justify-content:flex-start; }
    .hero-right::after,.hero-right .hr-rule,.hero-right .hr-overlay { display:none; }
    .hero-right .hr-grid { display:block; opacity:0.45; }
    .hero-namecard::before { opacity:1; }
    .hero-right .hr-photo { position:relative; inset:auto; width:100%; aspect-ratio:1; overflow:hidden; }
    .hero-right .hero-img { height:100%; min-height:unset; }
    .hero-right .hero-namecard { border-top:none; background:var(--dark); }
    .stat-strip-track { display:flex; width:max-content; animation:stat-marquee 36s linear infinite; }
    .stat-strip-track:hover { animation-play-state:paused; }
    .stat-item--clone { display:block; }
    .stat-strip-track > .stat-item { flex:0 0 72vw; min-width:14rem; max-width:18rem; border-right:1px solid rgba(255,255,255,0.06); }
    .stat-strip-track > .stat-item:last-child { border-right:1px solid rgba(255,255,255,0.06); }
    .problem-grid,.what-grid { display:flex; flex-wrap:nowrap; gap:1rem; overflow-x:auto; margin-left:-1.5rem; margin-right:-1.5rem; padding:0 1.5rem 0.75rem; scroll-snap-type:x mandatory; -webkit-overflow-scrolling:touch; scrollbar-width:none; }
    .problem-grid::-webkit-scrollbar,.what-grid::-webkit-scrollbar { display:none; }
    .problem-card,.what-card { flex:0 0 min(82vw,18rem); scroll-snap-align:start; }
    .solution-top,.who-layout,.bio-layout,.tc-header { grid-template-columns:1fr; gap:2.5rem; }
    .sr-items { grid-template-columns:1fr; gap:0; }
    .sr-item { padding:1.25rem 0; border-right:none; border-bottom:1px solid rgba(255,255,255,0.12); }
    .sr-item:last-child { border-bottom:none; padding-bottom:0; }
    .tc-photo { aspect-ratio:16/10; max-height:320px; }
    .who-visual { position:static; }
    .who-photo { aspect-ratio:16/10; }
    .bio-sticky { position:static; }
    section,.problem,.solution,.the-call,.who,.bio,.what { padding:3.5rem 1.5rem; }
    .final-cta { padding:4rem 1.5rem; min-height:auto; }
    .final-cta-inner { grid-template-columns:1fr; gap:0; }
    .final-cta-content { padding:2.5rem 1.75rem; }
    .final-cta-media { display:none; }
    .final-cta-bg::after { background:linear-gradient(rgba(26,26,42,0.82),rgba(26,26,42,0.65)); }
    footer { padding:1.5rem; flex-direction:column; gap:0.75rem; text-align:center; }
    .tc-cta-row { flex-direction:column; align-items:flex-start; }
  }
  @media (max-width:960px) and (prefers-reduced-motion:reduce) {
    .stat-strip-track { animation:none; overflow-x:auto; scroll-snap-type:x mandatory; -webkit-overflow-scrolling:touch; }
    .stat-strip-track > .stat-item { scroll-snap-align:start; }
  }
  @media (prefers-reduced-motion:reduce) {
    .hr-grid,.tc-grid,.stat-strip::before,.who-box::before,.footer::before,.solution-video-wrap::before,.hero-namecard::before { animation:none; }
    .hero-right::after,.the-call::after,.stat-strip::after,.who-box::after,.hr-rule { animation:none; }
  }

/* ================================================================
   NECTO recommended refinements
   Added after extracting the former inline stylesheet.
   ================================================================ */

/* Keep body copy readable if web fonts are unavailable. */
body {
  font-family: "Inter", Arial, sans-serif;
}

.hero-headline,
.sec-title,
.tc-title,
.final-cta-title,
.nav-links a,
.nav-cta,
.btn-primary,
.btn-cta-white {
  font-family: "Montserrat", Arial, sans-serif;
}

/* Visible keyboard navigation and minimum interactive target sizes. */
:where(a, button, input, textarea, select):focus-visible {
  outline: 3px solid var(--purple-light);
  outline-offset: 3px;
}

:where(.nav-cta, .btn-primary, .btn-cta-white) {
  min-height: 44px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

/* Avoid sub-14px body copy. Small uppercase labels remain compact. */
.problem-text,
.sr-item-desc,
.tc-right-text,
.signal-text,
.who-box-body,
.who-box-note,
.bio-body,
.what-body,
.footer-copy {
  font-size: max(0.875rem, 14px);
}

/* Prevent excessive line lengths on very wide displays. */
@media (min-width: 1441px) {
  section > *,
  .tc-inner {
    width: min(100%, 80rem);
    margin-inline: auto;
  }
}

/* On phones, show every card vertically instead of hiding content in an
   unlabelled horizontal scroller. Tablet layouts retain the card scroller. */
@media (max-width: 680px) {
  .problem-grid,
  .what-grid {
    display: grid;
    grid-template-columns: 1fr;
    overflow: visible;
    margin-inline: 0;
    padding: 0;
  }

  .problem-card,
  .what-card {
    min-width: 0;
  }

  .hero-headline {
    font-size: clamp(2.35rem, 12vw, 3.2rem);
  }

  .hero-cta-group,
  .hero-cta-group .btn-primary,
  .tc-cta-row .btn-cta-white,
  .final-cta-content .btn-cta-white {
    width: 100%;
  }
}

/* The original stylesheet stops background motion but not hero fade-in. */
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }

  *, *::before, *::after {
    scroll-behavior: auto !important;
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
  }
}

/* Release preparation: shared navigation, page structure and privacy page. */
body { padding-top: 5rem; }
main { min-width: 0; }
.bio-layout > * { min-width: 0; }
.what-body img { max-width: 100%; height: auto; }
.nav-links a[aria-current="page"] { color: var(--purple); }
.skip-link { position: fixed; top: 0.5rem; left: 1rem; z-index: 200; padding: 0.75rem; background: white; color: var(--dark); transform: translateY(-200%); }
.skip-link:focus { transform: translateY(0); }
footer a { color: inherit; }
.footer-copy { color: rgba(255,255,255,0.8); }
.privacy-policy { max-width: 56rem; margin: auto; padding: 3rem 1.5rem 5rem; color: #1F2933; }
.privacy-policy h1, .privacy-policy h2 { font-family: "Montserrat", Arial, sans-serif; line-height: 1.3; }
.privacy-policy h1 { font-size: 2.25rem; margin-bottom: 1.5rem; }
.privacy-policy h2 { font-size: 1.25rem; margin: 2rem 0 0.75rem; color: #8A38F5; }
.privacy-policy p { margin-bottom: 1rem; }
.privacy-policy ul { padding-left: 1.5rem; margin-bottom: 1rem; }
.privacy-policy a { color: #580abf; overflow-wrap: anywhere; }
.necto-contact h1 { margin: 0 0 1rem; font-family: "Montserrat", Arial, sans-serif; font-size: clamp(2rem, 4vw, 3.6rem); line-height: 1.05; }
.btn-primary, .btn-cta-white { white-space: normal; text-align: center; max-width: 100%; }
@media (max-width: 960px) {
  body { padding-top: 8rem; }
  html { scroll-padding-top: 8.5rem; }
  nav { display: grid; grid-template-columns: 1fr auto; gap: 0.65rem 1rem; }
  .nav-brand { grid-column: 1; grid-row: 1; }
  .nav-cta { grid-column: 2; grid-row: 1; }
  .nav-links { display: flex !important; grid-column: 1 / -1; grid-row: 2; flex-wrap: wrap; justify-content: center; gap: 0.25rem 1rem; }
  .nav-links a { display: inline-flex; align-items: center; min-height: 32px; font-size: 0.65rem; }
}
@media (max-width: 480px) {
  body { padding-top: 10rem; }
  html { scroll-padding-top: 10.5rem; }
  .nav-links { display: grid !important; grid-template-columns: repeat(3, 1fr); gap: 0.1rem 0.5rem; }
  .nav-links a { width: 100%; justify-content: center; }
}
