:root{
  --primary-color: #2563eb;
  --secondary-color: #0f1724;
  --accent-color: #7dd3fc;
  --text-color: #0f1724;
  --bg-light: #f8fafc;
  --white: #ffffff;
  --glass: rgba(255,255,255,0.06);
}

/* Reset & base */
*{box-sizing:border-box;margin:0;padding:0}
html,body{height:100%}
body{
  font-family: 'Inter', system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial;
  color:var(--text-color);
  background: linear-gradient(180deg,#eef2ff 0%, #f8fafc 100%);
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
}

.container{max-width:1100px;margin:0 auto;padding:0 20px}

/* Header (glass + subtle depth) */
header{
  position:fixed;left:0;right:0;top:0;z-index:1000;
  background: linear-gradient(180deg, rgba(255,255,255,0.75), rgba(255,255,255,0.5));
  backdrop-filter: blur(6px);
  box-shadow: 0 6px 18px rgba(12,20,40,0.08);
}
nav{height:72px;display:flex;align-items:center;justify-content:space-between}
.logo{font-weight:800;font-size:1.4rem;color:var(--secondary-color)}
.logo span{color:var(--primary-color)}
.nav-links{display:flex;gap:20px}
.nav-links a{font-weight:600;color:rgba(15,23,36,0.8);transition:color .25s}
.nav-links a:hover{color:var(--primary-color)}

/* CTA with 3D bevel */
.cta-btn{position:relative;display:inline-block;padding:10px 20px;border-radius:10px;background:linear-gradient(180deg,var(--primary-color),#1f4fd6);color:var(--white);font-weight:700;box-shadow:0 8px 18px rgba(37,99,235,0.18);transform-style:preserve-3d}
.cta-btn::after{content:'';position:absolute;left:6px;right:6px;bottom:-6px;height:8px;background:rgba(15,23,36,0.06);border-radius:8px;z-index:-1}
.cta-btn:hover{transform:translateY(-3px)}

/* HERO with perspective & floating card */
.hero{
  min-height:calc(100vh - 72px);
  display:flex;align-items:center;justify-content:center;text-align:center;padding-top:72px;
  background-image:linear-gradient(180deg, rgba(2,6,23,0.55), rgba(2,6,23,0.55)), url('https://images.unsplash.com/photo-1498050108023-c5249f4df085?ixlib=rb-1.2.1&auto=format&fit=crop&w=1352&q=80');
  background-size:cover;background-position:center;color:var(--white);
  perspective:1200px; /* enable 3D for children */
}
.hero-content{
  display:inline-block;padding:40px 60px;border-radius:16px;background:linear-gradient(135deg, rgba(255,255,255,0.06), rgba(255,255,255,0.02));
  transform-style:preserve-3d;transition:transform .6s cubic-bezier(.2,.9,.2,1), box-shadow .4s;
  box-shadow: 0 20px 50px rgba(2,6,23,0.45);
}
.hero-content:hover{transform:translateZ(40px) rotateX(1deg)}
.hero-content h1{font-size:3rem;margin-bottom:12px;letter-spacing:-0.02em}
.hero-content p{font-size:1.125rem;max-width:680px;margin:0 auto 20px}

/* Services grid with subtle 3D cards */
.section{padding:80px 0}
.section-title{margin-bottom:40px;text-align:center}
.section-title h2{font-size:1.9rem;color:var(--secondary-color)}
.services-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:28px;perspective:1000px}
.service-card{background:var(--white);padding:28px;border-radius:14px;text-align:center;transition:transform .45s cubic-bezier(.2,.9,.2,1),box-shadow .45s;transform-style:preserve-3d;border:1px solid rgba(15,23,36,0.04)}
.service-card i{font-size:2.25rem;color:var(--primary-color);margin-bottom:16px}
.service-card h3{margin:10px 0 8px}
.service-card p{color:rgba(15,23,36,0.7)}
.service-card:hover{transform:translateY(-16px) translateZ(24px) rotateY(3deg);box-shadow:0 30px 60px rgba(2,6,23,0.18)}

/* Contact box */
.about{background:linear-gradient(180deg,#f8fafc,#ffffff)}
.contact-box{max-width:640px;margin:0 auto;padding:36px;border-radius:14px;background:linear-gradient(180deg,var(--white),#fbfdff);box-shadow:0 12px 40px rgba(2,6,23,0.06);text-align:center}
.email-display{display:inline-block;color:var(--primary-color);font-weight:700;margin:12px 0}

/* Footer */
footer{background:linear-gradient(180deg,#0b1220,#091425);color:var(--white);padding:24px 0;text-align:center}

/* Responsive tweaks */
@media (max-width:880px){
  .hero-content{padding:28px 26px}
  .hero-content h1{font-size:2rem}
  .nav-links{display:none}
}

/* Small utility for interactive tilt on pointer move */
/* When supported, cards will subtly follow pointer using CSS variables */
.service-card{--rx:0;--ry:0;transform:rotateX(var(--rx)) rotateY(var(--ry)) translateZ(0)}
