/* RESET */
*{margin:0;padding:0;box-sizing:border-box;}
body{font-family:-apple-system,BlinkMacSystemFont,"SF Pro Display",sans-serif;background:#000;color:#fff;scroll-behavior:smooth;}

/* SCENES */
.scene{position:relative;min-height:100vh;width:100%;overflow:hidden;display:flex;flex-direction:column;justify-content:center;align-items:center;opacity:0;transform:translateY(60px);transition:opacity 1s ease, transform 1s ease;}
.scene.active{opacity:1;transform:translateY(0);}

/* BACKGROUND PARALLAX */
.scene .bg{position:absolute;top:0;left:0;width:100%;height:100%;background-size:cover;background-position:center;z-index:-1;transform:translateZ(0);transition:transform 0.1s linear;}

/* HERO */
.hero h1{font-size:64px;font-weight:600;letter-spacing:-1px;text-align:center;}
.hero p{margin-top:20px;font-size:20px;color:#aaa;text-align:center;}
.btn{display:inline-block;margin-top:30px;padding:14px 40px;border-radius:999px;background:#fff;color:#000;font-weight:500;transition:0.3s;text-decoration:none;}
.btn:hover{background:#ddd;}

/* SERVICES GRID */
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:40px;width:90%;max-width:1200px;}
.card{padding:40px;border-radius:30px;background:rgba(255,255,255,0.03);backdrop-filter:blur(20px);transition:transform 0.4s, box-shadow 0.4s, opacity 0.6s ease, transform 0.6s ease;opacity:0;transform:translateY(40px);}
.scene.active .card{opacity:1;transform:translateY(0);}
.card:hover{transform:translateY(-10px);box-shadow:0 20px 40px rgba(255,255,255,0.05);}

/* FORM */
.form-section{padding:120px 20px;text-align:center;width:100%;}
form{max-width:500px;margin:auto;}
input, select, textarea{width:100%;padding:14px;margin:10px 0;border-radius:12px;border:1px solid #333;background:#111;color:#fff;}
button{width:100%;padding:14px;border:none;border-radius:12px;background:#fff;color:#000;font-weight:600;cursor:pointer;transition:0.3s;}
button:hover{background:#ddd;}

/* MOUSE LIGHT EFFECT */
body::after{content:'';position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;background:radial-gradient(circle at var(--x) var(--y),rgba(255,255,255,0.08),transparent 40%);}

/* HERO VIDEO */
.hero video {
    position:absolute;
    top:0;left:0;
    width:100%;height:100%;
    object-fit:cover;
    z-index:-2;
    filter: brightness(0.6);
}

/* MICRO-INTERACTION: BUTTON */
.btn {
    transition: 0.3s, transform 0.3s;
}
.btn:hover {
    transform: scale(1.05);
    background: linear-gradient(90deg,#fff,#ddd);
}

/* MICRO-INTERACTION: INPUT */
input:focus, select:focus, textarea:focus {
    outline:none;
    border:1px solid #fff;
    box-shadow:0 0 10px rgba(255,255,255,0.2);
}

/* CARD HOVER EXTRA */
.card:hover {
    transform:translateY(-15px) scale(1.03);
    box-shadow:0 30px 60px rgba(255,255,255,0.08);
}

/* STAGGER ANIMATION FOR CARDS */
.scene.active .card {
    opacity:1;
    transform:translateY(0) scale(1);
}