@import url('https://fonts.googleapis.com/css2?family=Fraunces:ital,opsz,wght@0,9..144,300;0,9..144,400;0,9..144,600;0,9..144,700;1,9..144,400&family=DM+Sans:ital,wght@0,300;0,400;0,500;0,600;1,300&display=swap');

:root {
  --ink:        #070f1a;
  --ink-2:      #0b1929;
  --ink-3:      #0f2238;
  --teal:       #0a6b53;
  --teal-mid:   #0f9070;
  --teal-lt:    #18c996;
  --amber:      #e8932a;
  --amber-lt:   #f5b347;
  --white:      #ffffff;
  --fog:        rgba(255,255,255,0.06);
  --fog-2:      rgba(255,255,255,0.03);
  --line:       rgba(255,255,255,0.07);
  --muted:      rgba(255,255,255,0.42);
  --r:          10px;
  --r-lg:       16px;
}

*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth;font-size:16px}
body{font-family:'DM Sans',sans-serif;background:var(--ink);color:var(--white);overflow-x:hidden;line-height:1.65;-webkit-font-smoothing:antialiased}
::-webkit-scrollbar{width:3px}
::-webkit-scrollbar-track{background:var(--ink)}
::-webkit-scrollbar-thumb{background:var(--teal-mid);border-radius:2px}
img{display:block;max-width:100%}
a{color:inherit;text-decoration:none}

/* ── NOISE OVERLAY ── */
body::before{
  content:'';position:fixed;inset:0;z-index:0;pointer-events:none;
  background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)'/%3E%3C/svg%3E");
  opacity:0.025;
}

/* ── NAV ── */
nav{
  position:fixed;top:0;left:0;right:0;z-index:900;
  display:flex;align-items:center;justify-content:space-between;
  padding:1rem 5%;
  background:rgba(7,15,26,0.82);
  backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);
  border-bottom:1px solid var(--line);
  transition:background .3s;
}
.nav-brand{
  font-family:'Fraunces',serif;font-size:1.55rem;font-weight:700;
  letter-spacing:3px;color:var(--white);
}
.nav-brand span{color:var(--amber)}
.nav-links{display:flex;gap:2rem;list-style:none}
.nav-links a{
  font-size:.82rem;font-weight:500;color:var(--muted);
  letter-spacing:.3px;transition:color .2s;position:relative;
}
.nav-links a::after{
  content:'';position:absolute;bottom:-3px;left:0;right:0;height:1px;
  background:var(--amber);transform:scaleX(0);transition:transform .2s;
}
.nav-links a:hover,
.nav-links a.active{color:var(--white)}
.nav-links a:hover::after,
.nav-links a.active::after{transform:scaleX(1)}
.nav-cta{
  background:var(--amber);color:var(--ink);
  padding:.5rem 1.2rem;border-radius:var(--r);
  font-size:.82rem;font-weight:600;letter-spacing:.2px;
  transition:all .2s;display:flex;align-items:center;gap:.35rem;
}
.nav-cta:hover{background:var(--amber-lt);transform:translateY(-1px);box-shadow:0 6px 20px rgba(232,147,42,.3)}
.nav-cta-arr{transition:transform .2s}
.nav-cta:hover .nav-cta-arr{transform:translateX(3px)}

/* ── SECTIONS ── */
section{padding:7rem 5%;position:relative}
.eyebrow{
  font-size:.7rem;font-weight:600;letter-spacing:2.5px;
  text-transform:uppercase;color:var(--teal-lt);
  display:flex;align-items:center;gap:.6rem;margin-bottom:.9rem;
}
.eyebrow::before{
  content:'';width:24px;height:1px;background:var(--teal-lt);flex-shrink:0;
}
h2{
  font-family:'Fraunces',serif;
  font-size:clamp(1.8rem,3vw,2.9rem);
  font-weight:700;line-height:1.12;margin-bottom:1.1rem;
}
h2 em{font-style:italic;color:var(--amber)}
.sub{font-size:.97rem;color:var(--muted);line-height:1.8;font-weight:300;max-width:540px}

/* ── BUTTONS ── */
.btn-primary{
  display:inline-flex;align-items:center;gap:.45rem;
  background:var(--amber);color:var(--ink);
  padding:.8rem 1.8rem;border-radius:var(--r);
  font-weight:600;font-size:.9rem;transition:all .25s;
}
.btn-primary:hover{background:var(--amber-lt);transform:translateY(-2px);box-shadow:0 12px 30px rgba(232,147,42,.28)}
.btn-ghost{
  display:inline-flex;align-items:center;gap:.45rem;
  border:1px solid rgba(255,255,255,.2);color:rgba(255,255,255,.75);
  padding:.8rem 1.8rem;border-radius:var(--r);
  font-weight:400;font-size:.9rem;transition:all .25s;
}
.btn-ghost:hover{border-color:rgba(255,255,255,.5);color:var(--white);background:rgba(255,255,255,.04)}

/* ── PARTNER BADGES ── */
.partner-row{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:1.5rem}
.pbadge{
  display:inline-flex;align-items:center;gap:.4rem;
  font-size:.72rem;font-weight:600;padding:.3rem .75rem;
  border-radius:6px;letter-spacing:.3px;
}
.pbadge-aws{background:rgba(255,153,0,.12);color:#ff9900;border:1px solid rgba(255,153,0,.25)}
.pbadge-azure{background:rgba(0,120,215,.15);color:#5ba9e8;border:1px solid rgba(0,120,215,.25)}
.pbadge-gcp{background:rgba(66,133,244,.12);color:#7fb3f5;border:1px solid rgba(66,133,244,.25)}
.pbadge-huawei{background:rgba(207,14,46,.12);color:#f0526e;border:1px solid rgba(207,14,46,.25)}
.pbadge-k8s{background:rgba(50,108,229,.12);color:#7aabf7;border:1px solid rgba(50,108,229,.2)}
.pbadge-tf{background:rgba(100,72,232,.12);color:#a78bfa;border:1px solid rgba(100,72,232,.2)}
.pbadge-ai{background:rgba(24,201,150,.1);color:var(--teal-lt);border:1px solid rgba(24,201,150,.25)}

/* ── REVEAL ANIMATION ── */
.reveal{
  opacity:0;transform:translateY(22px);
  transition:opacity .55s ease,transform .55s ease;
}
.reveal.visible{opacity:1;transform:none}

/* ── FOOTER ── */
footer{
  background:rgba(0,0,0,.4);
  border-top:1px solid var(--line);
  padding:2.5rem 5%;
}
.foot-inner{
  display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;
  gap:3rem;margin-bottom:2.5rem;
}
.foot-brand{
  font-family:'Fraunces',serif;font-size:1.4rem;font-weight:700;
  letter-spacing:2px;margin-bottom:.8rem;
}
.foot-brand span{color:var(--amber)}
.foot-desc{font-size:.82rem;color:var(--muted);line-height:1.7;font-weight:300}
.foot-col h5{font-size:.7rem;font-weight:600;letter-spacing:1.8px;text-transform:uppercase;color:var(--teal-lt);margin-bottom:1rem}
.foot-col ul{list-style:none;display:flex;flex-direction:column;gap:.55rem}
.foot-col ul a{font-size:.83rem;color:var(--muted);transition:color .2s}
.foot-col ul a:hover{color:var(--white)}
.foot-bottom{
  display:flex;justify-content:space-between;align-items:center;
  flex-wrap:wrap;gap:1rem;
  padding-top:1.8rem;border-top:1px solid var(--line);
}
.foot-copy{font-size:.76rem;color:rgba(255,255,255,.25)}
.foot-legal{display:flex;gap:1.5rem}
.foot-legal a{font-size:.76rem;color:rgba(255,255,255,.25);transition:color .2s}
.foot-legal a:hover{color:var(--muted)}
.msme-tag{
  display:inline-flex;align-items:center;gap:.4rem;
  font-size:.7rem;font-weight:600;padding:.22rem .7rem;
  background:rgba(232,147,42,.1);color:var(--amber);
  border:1px solid rgba(232,147,42,.2);border-radius:5px;letter-spacing:.3px;
}

/* ── MOBILE ── */
@media(max-width:900px){
  .nav-links{display:none}
  section{padding:5rem 5%}
  .foot-inner{grid-template-columns:1fr 1fr;gap:2rem}
}
@media(max-width:560px){
  .foot-inner{grid-template-columns:1fr}
}
