/* ===== 3K Infotek — shared styles ===== */
@import url('https://fonts.googleapis.com/css2?family=Orbitron:wght@600;700;800;900&family=JetBrains+Mono:wght@400;500;600;700&display=swap');

:root{
  --ink:#0F0A1F;
  --ink-2:#171029;
  --purple:#2A1B54;
  --purple-mid:#4A3580;
  --pink:#D9738B;
  --pink-bright:#E88BA3;
  --glow:#8B7FD9;
  --cyan:#38BDF8;
  --white:#F7F5FA;
  --text-muted:#B8ACD1;
  --ink-text-secondary:#C9BEDD;
  --line-dark:rgba(247,245,250,0.12);
  --line-light:rgba(15,10,31,0.1);
  --max:1180px;
  --radius:14px;
}

*{box-sizing:border-box; margin:0; padding:0;}

html{scroll-behavior:smooth;}

body{
  font-family:'Inter',sans-serif;
  color:var(--ink);
  background:var(--white);
  line-height:1.6;
  font-size:16px;
}

h1,h2,h3,h4{
  font-family:'Space Grotesk',sans-serif;
  font-weight:600;
  line-height:1.15;
  letter-spacing:-0.01em;
}

a{color:inherit; text-decoration:none;}
img{max-width:100%; display:block;}
button{font-family:inherit; cursor:pointer;}

.wrap{max-width:var(--max); margin:0 auto; padding:0 32px;}

@media (max-width:640px){
  .wrap{padding:0 20px;}
}

/* ===== Buttons (HUD / angular style) ===== */
.btn{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:13px 26px;
  clip-path:polygon(10px 0, 100% 0, calc(100% - 10px) 100%, 0 100%);
  font-family:'Orbitron',sans-serif;
  font-weight:700;
  font-size:13px;
  letter-spacing:0.5px;
  text-transform:uppercase;
  border:1px solid transparent;
  transition:transform .15s ease, background .2s ease, border-color .2s ease, box-shadow .2s ease;
}
.btn:active{transform:scale(0.97);}
.btn-primary{background:linear-gradient(135deg, var(--pink), var(--pink-bright)); color:#3D0F1F;}
.btn-primary:hover{box-shadow:0 0 22px rgba(217,115,139,0.45); transform:translateY(-2px);}
.btn-ghost-dark{border-color:var(--line-dark); color:var(--white); background:rgba(247,245,250,0.03);}
.btn-ghost-dark:hover{background:rgba(217,115,139,0.08); border-color:var(--pink);}
.btn-ghost-light{border-color:var(--line-light); color:var(--purple);}
.btn-ghost-light:hover{background:rgba(42,27,84,0.05); border-color:rgba(42,27,84,0.3);}

/* ===== Header ===== */
.site-header{
  position:sticky; top:0; z-index:50;
  background:rgba(15,10,31,0.85);
  backdrop-filter:blur(10px);
  border-bottom:1px solid var(--line-dark);
}
.site-header .wrap{
  display:flex; align-items:center; justify-content:space-between;
  height:78px;
}
.site-header .logo img{height:34px;}
.nav-links{
  display:flex; align-items:center; gap:32px;
  font-family:'JetBrains Mono',monospace;
  font-size:12.5px; letter-spacing:0.5px; text-transform:uppercase;
  color:var(--ink-text-secondary);
}
.nav-links a{transition:color .2s ease, text-shadow .2s ease;}
.nav-links a:hover{color:var(--pink); text-shadow:0 0 10px rgba(217,115,139,0.6);}
.header-cta{display:flex; align-items:center; gap:18px;}
.nav-toggle{display:none; background:none; border:none; color:var(--white); font-size:24px;}

@media (max-width:900px){
  .nav-links{
    position:fixed; top:78px; left:0; right:0;
    background:var(--ink); border-bottom:1px solid var(--line-dark);
    flex-direction:column; align-items:flex-start; gap:0;
    padding:8px 20px 20px;
    transform:translateY(-8px);
    opacity:0; pointer-events:none;
    transition:opacity .2s ease, transform .2s ease;
  }
  .nav-links.open{opacity:1; pointer-events:auto; transform:translateY(0);}
  .nav-links a{width:100%; padding:12px 0; border-bottom:1px solid var(--line-dark);}
  .nav-toggle{display:block;}
  .header-cta .btn-ghost-dark{display:none;}
}

/* ===== Footer ===== */
.site-footer{
  background:var(--ink);
  color:var(--ink-text-secondary);
  padding:64px 0 28px;
  margin-top:120px;
}
.footer-grid{
  display:grid;
  grid-template-columns:1.4fr 1fr 1fr 1.2fr;
  gap:40px;
  padding-bottom:40px;
  border-bottom:1px solid var(--line-dark);
}
.footer-brand img{height:30px; margin-bottom:14px;}
.footer-brand p{font-size:14px; max-width:280px; color:var(--text-muted);}
.footer-col h4{
  font-family:'Inter',sans-serif; font-weight:500; font-size:13.5px;
  color:var(--white); margin-bottom:16px;
}
.footer-col a{
  display:block; font-size:14px; color:var(--text-muted);
  margin-bottom:11px; transition:color .2s ease;
}
.footer-col a:hover{color:var(--white);}
.footer-bottom{
  display:flex; justify-content:space-between; align-items:center;
  padding-top:24px; font-size:13px; color:var(--text-muted); flex-wrap:wrap; gap:12px;
}
.footer-social{display:flex; gap:14px;}
.footer-social a{
  width:34px; height:34px; border-radius:50%;
  border:1px solid var(--line-dark);
  display:flex; align-items:center; justify-content:center;
}
.footer-social svg{width:16px; height:16px;}

/* ===== Shared pulse-dot status indicator ===== */
.pulse-dot{
  position:relative;
  width:7px; height:7px; border-radius:50%;
  background:var(--pink);
  flex-shrink:0;
}
.pulse-dot::after{
  content:'';
  position:absolute; inset:-5px;
  border-radius:50%;
  border:1.5px solid var(--pink);
  animation:pulseRing 2.2s ease-out infinite;
}
@keyframes pulseRing{
  0%{transform:scale(0.6); opacity:0.8;}
  100%{transform:scale(2.1); opacity:0;}
}
@media (prefers-reduced-motion:reduce){
  .pulse-dot::after{animation:none;}
}

@media (max-width:800px){
  .footer-grid{grid-template-columns:1fr 1fr; row-gap:32px;}
}
@media (max-width:520px){
  .footer-grid{grid-template-columns:1fr;}
}

/* ===== Shared scroll-reveal system (used across all pages) ===== */
.reveal{
  opacity:0;
  transform:translateY(22px);
  transition:opacity .6s ease, transform .6s ease;
}
.reveal.in-view{opacity:1; transform:translateY(0);}

@media (prefers-reduced-motion:reduce){
  .reveal{opacity:1; transform:none; transition:none;}
}

.timeline-item.reveal:nth-child(2){transition-delay:.08s;}
.timeline-item.reveal:nth-child(3){transition-delay:.16s;}
.timeline-item.reveal:nth-child(4){transition-delay:.24s;}

.cert-badge.reveal:nth-child(2){transition-delay:.08s;}
.cert-badge.reveal:nth-child(3){transition-delay:.16s;}

.approach-item.reveal:nth-child(2){transition-delay:.06s;}
.approach-item.reveal:nth-child(3){transition-delay:.12s;}
.approach-item.reveal:nth-child(4){transition-delay:.18s;}

/* ===== Shared interior page-hero (About, Services, Industries, etc.) ===== */
.page-hero{
  background:var(--ink);
  padding:80px 0 70px;
  position:relative;
}
.page-hero-inner{max-width:700px;}
.page-hero .hero-tag{
  display:inline-flex; align-items:center; gap:9px;
  font-family:'JetBrains Mono',monospace;
  font-size:12.5px; letter-spacing:1px; text-transform:uppercase;
  color:var(--pink);
  border:1px solid var(--line-dark);
  padding:7px 16px; border-radius:100px;
  margin-bottom:22px;
  background:rgba(217,115,139,0.06);
}
.page-hero h1{
  font-size:clamp(30px,4.4vw,44px);
  color:var(--white);
  margin-bottom:16px;
}
.page-hero .lead{font-size:16.5px; color:var(--ink-text-secondary); max-width:520px;}
