/* ── PREMIUM OVERRIDES ── */
@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300;0,400;0,600;1,300;1,400&family=DM+Mono:wght@300;400&family=DM+Sans:wght@300;400;500;600&display=swap');

:root {
  --bg: #020409;
  --navy: #06091a;
  --blue: #2563eb;
  --glow: #3b82f6;
  --light: #93c5fd;
  --white: #eef1fa;
  --muted: #8899bb;
  --border: rgba(59,130,246,0.1);
  --borderB: rgba(59,130,246,0.28);
  --gold: #c9a84c;
}

/* Nav scrolled */
nav.scrolled { background: rgba(2,4,9,0.97) !important; }

/* Mobile nav */
.nav-mobile-toggle { display:none; flex-direction:column; gap:5px; background:none; border:none; cursor:pointer; padding:4px; }
.nav-mobile-toggle span { width:22px; height:1.5px; background:var(--white); display:block; transition:all .3s; }
@media(max-width:768px) {
  .nav-mobile-toggle { display:flex; }
  .nav-links { display:none; position:fixed; top:60px; left:0; right:0; background:rgba(2,4,9,0.99); flex-direction:column; padding:2rem; gap:1.5rem; border-bottom:1px solid var(--border); z-index:99; }
  .nav-links.open { display:flex; }
}

/* Hero enhancements */
.hero-badge {
  display:inline-flex; align-items:center; gap:8px;
  font-family:'DM Mono',monospace; font-size:9px; letter-spacing:3px; text-transform:uppercase;
  color:var(--light); border:1px solid var(--borderB); padding:6px 14px;
  margin-bottom:2rem; background:rgba(37,99,235,0.06);
}
.hero-badge::before { content:''; width:6px; height:6px; border-radius:50%; background:var(--glow); animation:blink-dot 2s infinite; }
@keyframes blink-dot { 0%,100%{opacity:1} 50%{opacity:.3} }

/* Divider */
.divider { height:1px; background:linear-gradient(90deg,transparent,var(--borderB),transparent); margin:0; }

/* Service cards — premium */
.svc-card {
  background:var(--bg); border:1px solid var(--border);
  padding:2.5rem; position:relative; overflow:hidden;
  transition:border-color .3s, transform .3s;
  text-decoration:none; display:block; color:inherit;
}
.svc-card:hover { border-color:var(--borderB); transform:translateY(-2px); }
.svc-card::before {
  content:''; position:absolute; top:0; left:0; right:0; height:1px;
  background:linear-gradient(90deg,transparent,var(--glow),transparent);
  opacity:0; transition:opacity .3s;
}
.svc-card:hover::before { opacity:1; }
.svc-card-icon {
  width:44px; height:44px; border:1px solid var(--border);
  display:flex; align-items:center; justify-content:center;
  margin-bottom:1.5rem; transition:border-color .3s;
}
.svc-card:hover .svc-card-icon { border-color:var(--borderB); }
.svc-card-num { font-family:'DM Mono',monospace; font-size:9px; letter-spacing:3px; color:var(--muted); margin-bottom:1rem; }
.svc-card-title { font-family:'Cormorant Garamond',serif; font-weight:600; font-size:24px; margin-bottom:.8rem; color:var(--white); }
.svc-card-desc { font-size:14px; color:var(--muted); line-height:1.75; margin-bottom:1.5rem; }
.svc-card-link { font-family:'DM Mono',monospace; font-size:10px; letter-spacing:2px; color:var(--light); text-transform:uppercase; display:flex; align-items:center; gap:8px; }
.svc-card-link::after { content:'→'; transition:transform .2s; }
.svc-card:hover .svc-card-link::after { transform:translateX(4px); }

/* Proof bar */
.proof-bar {
  display:flex; align-items:center; justify-content:center; gap:3rem;
  padding:1.5rem 4rem; border-top:1px solid var(--border); border-bottom:1px solid var(--border);
  flex-wrap:wrap;
}
.proof-item { text-align:center; }
.proof-num { font-family:'Cormorant Garamond',serif; font-weight:600; font-size:42px; letter-spacing:-2px; color:var(--white); display:block; line-height:1; }
.proof-label { font-family:'DM Mono',monospace; font-size:9px; letter-spacing:2px; color:var(--muted); text-transform:uppercase; margin-top:4px; display:block; }

/* Process steps */
.process-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:0; border:1px solid var(--border); }
.process-step { padding:2.5rem 2rem; border-right:1px solid var(--border); position:relative; }
.process-step:last-child { border-right:none; }
.process-step::after { content:''; position:absolute; top:50%; right:-1px; width:8px; height:8px; border-top:1px solid var(--borderB); border-right:1px solid var(--borderB); transform:translateY(-50%) rotate(45deg); background:var(--bg); z-index:1; }
.process-step:last-child::after { display:none; }
.step-n { font-family:'DM Mono',monospace; font-size:9px; letter-spacing:2px; color:var(--glow); margin-bottom:1rem; }
.step-t { font-family:'Cormorant Garamond',serif; font-weight:600; font-size:20px; margin-bottom:.6rem; color:var(--white); }
.step-d { font-size:13px; color:var(--muted); line-height:1.65; }

/* Testimonial */
.testi-card {
  border:1px solid var(--border); padding:3rem 3.5rem;
  position:relative; max-width:760px; margin:3rem auto 0;
  background:rgba(6,9,26,.6);
}
.testi-quote { font-family:'Cormorant Garamond',serif; font-size:80px; line-height:.8; color:var(--borderB); position:absolute; top:-8px; left:2.5rem; }
.testi-text { font-family:'Cormorant Garamond',serif; font-style:italic; font-weight:300; font-size:22px; line-height:1.6; color:var(--white); margin-bottom:1.5rem; position:relative; z-index:1; }
.testi-author { font-family:'DM Mono',monospace; font-size:9px; letter-spacing:2px; color:var(--muted); text-transform:uppercase; }
.testi-author span { color:var(--light); }

/* CTA Block */
.cta-block {
  text-align:center; padding:6rem 4rem;
  border-top:1px solid var(--border); position:relative; overflow:hidden;
}
.cta-block::before {
  content:''; position:absolute; width:500px; height:500px; border-radius:50%;
  background:radial-gradient(circle,rgba(37,99,235,.06) 0%,transparent 70%);
  top:50%; left:50%; transform:translate(-50%,-50%); pointer-events:none;
}

/* Tag chips */
.tag-list { display:flex; flex-wrap:wrap; gap:.5rem; margin-top:1.2rem; }
.tag { font-family:'DM Mono',monospace; font-size:9px; letter-spacing:1.5px; padding:4px 10px; border:1px solid var(--border); color:var(--muted); text-transform:uppercase; }

/* FAQ */
.faq-item { border-bottom:1px solid var(--border); }
.faq-q {
  width:100%; text-align:left; background:none; border:none; cursor:pointer;
  padding:1.4rem 0; display:flex; justify-content:space-between; align-items:center;
  font-family:'Cormorant Garamond',serif; font-size:20px; color:var(--white);
  transition:color .2s;
}
.faq-q:hover { color:var(--light); }
.faq-q svg { width:16px; height:16px; stroke:var(--muted); flex-shrink:0; transition:transform .3s; }
.faq-q.open svg { transform:rotate(45deg); }
.faq-a { font-size:14px; color:var(--muted); line-height:1.75; max-height:0; overflow:hidden; transition:max-height .4s ease, padding .3s; }
.faq-a.open { max-height:400px; padding-bottom:1.2rem; }

/* Service page hero */
.svc-hero { padding:5rem 4rem 4rem; border-bottom:1px solid var(--border); }
.svc-hero-tag { font-family:'DM Mono',monospace; font-size:9px; letter-spacing:4px; text-transform:uppercase; color:var(--light); margin-bottom:1.5rem; display:flex; align-items:center; gap:10px; }
.svc-hero-tag::before { content:''; width:20px; height:1px; background:var(--light); }

/* Two-col layout */
.two-col { display:grid; grid-template-columns:1fr 1fr; gap:5rem; align-items:start; }
.two-col-3-2 { display:grid; grid-template-columns:3fr 2fr; gap:5rem; align-items:start; }
@media(max-width:768px) { .two-col, .two-col-3-2 { grid-template-columns:1fr; gap:3rem; } .process-grid { grid-template-columns:1fr 1fr; } }

/* Deliverable list */
.deliverable-list { list-style:none; display:flex; flex-direction:column; gap:.8rem; }
.deliverable-list li { display:flex; align-items:flex-start; gap:.8rem; font-size:14px; color:var(--white); opacity:.8; line-height:1.6; }
.deliverable-list li::before { content:'✓'; color:var(--glow); font-family:'DM Mono',monospace; font-size:12px; flex-shrink:0; margin-top:2px; }

/* Timeline */
.timeline-list { display:flex; flex-direction:column; gap:0; }
.tl-item { display:grid; grid-template-columns:100px 1fr; gap:2rem; padding:2rem 0; border-bottom:1px solid var(--border); }
.tl-item:last-child { border-bottom:none; }
.tl-time { font-family:'DM Mono',monospace; font-size:10px; letter-spacing:2px; color:var(--glow); text-transform:uppercase; padding-top:3px; }
.tl-content h4 { font-family:'Cormorant Garamond',serif; font-weight:600; font-size:20px; margin-bottom:.5rem; }
.tl-content p { font-size:13px; color:var(--muted); line-height:1.65; }

/* Industry chips */
.industry-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:1px; background:var(--border); border:1px solid var(--border); }
.industry-item { background:var(--bg); padding:1.5rem; }
.industry-item h4 { font-family:'Cormorant Garamond',serif; font-weight:600; font-size:18px; margin-bottom:.4rem; }
.industry-item p { font-size:12px; color:var(--muted); line-height:1.55; }

/* Inline CTA form */
.inline-cta-form { display:flex; gap:0; border:1px solid var(--borderB); max-width:440px; }
.inline-cta-form input { flex:1; padding:13px 18px; background:rgba(6,8,24,.8); border:none; color:var(--white); font-family:'DM Sans',sans-serif; font-size:13px; outline:none; }
.inline-cta-form input::placeholder { color:var(--muted); }
.inline-cta-form button { padding:13px 22px; background:var(--blue); color:#fff; border:none; font-family:'DM Mono',monospace; font-size:9px; letter-spacing:2px; text-transform:uppercase; cursor:pointer; white-space:nowrap; transition:background .2s; }
.inline-cta-form button:hover { background:var(--glow); }

/* Section spacing */
.sec { padding:5rem 4rem; border-top:1px solid var(--border); }
.sec-sm { padding:3rem 4rem; border-top:1px solid var(--border); }
@media(max-width:768px) { .sec { padding:3rem 1.5rem; } .sec-sm { padding:2rem 1.5rem; } .svc-hero { padding:3rem 1.5rem 2.5rem; } .proof-bar { padding:1.5rem; gap:1.5rem; } .cta-block { padding:4rem 1.5rem; } .industry-grid { grid-template-columns:1fr 1fr; } }

/* Nav right side — leave space for lang selector */
nav { padding-right: 9rem !important; }
@media(max-width:900px) { nav { padding-right: 1.5rem !important; } #np-lang { display:none !important; } }

/* Pulsie button — no white border fix */
#np-btn { image-rendering: -webkit-optimize-contrast; }
#np-btn img { image-rendering: crisp-edges; }

/* Hero pulse waveform */
.hero-pulse-wrap {
  position: absolute;
  bottom: 0; left: 0; right: 0;
  height: 120px;
  overflow: hidden;
  pointer-events: none;
}
.hero-pulse-wrap svg { width: 100%; height: 100%; }
.pulse-line-bright { animation: pulse-glow 3s ease-in-out infinite; }
@keyframes pulse-glow {
  0%,100% { opacity:.7; filter: drop-shadow(0 0 3px #3b82f6); }
  50% { opacity:1; filter: drop-shadow(0 0 8px #93c5fd); }
}

/* Remove old nav padding override - replaced by nav-override.css */
nav { padding-right: unset !important; }
