:root{--bg:#0a0a0c;--panel:#141418;--line:#26262e;--purple:#8a5cff;--green:#39ff88;--text:#f2f2f5;--mute:#9a9aa8}*{box-sizing:border-box;margin:0}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--text);font-family:Space Grotesk,system-ui,sans-serif;line-height:1.6;overflow-x:hidden}a{color:inherit}img{max-width:100%;display:block}:focus-visible{outline:2px solid var(--green);outline-offset:3px}.bg{position:fixed;top:0;right:0;bottom:0;left:0;z-index:-1;overflow:hidden}.bg i{position:absolute;width:45vmax;height:45vmax;border-radius:50%;filter:blur(110px);opacity:.28;animation:float 18s ease-in-out infinite alternate}.bg i:nth-child(1){background:var(--purple);top:-10%;left:-10%}.bg i:nth-child(2){background:var(--green);bottom:-20%;right:-10%;opacity:.14;animation-delay:-6s}.bg i:nth-child(3){background:#4b2bd6;top:40%;left:40%;opacity:.15;animation-delay:-12s}@keyframes float{to{transform:translate(8vw,6vh) scale(1.2)}}.nav{position:fixed;top:0;left:0;right:0;z-index:20;display:flex;justify-content:space-between;align-items:center;padding:14px 5vw;background:#0a0a0cb3;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}.logo{font-family:Bebas Neue;font-size:1.6rem;letter-spacing:2px;text-decoration:none}.nav nav{display:flex;gap:1.2rem}.nav nav a{text-transform:uppercase;font-size:.8rem;letter-spacing:2px;text-decoration:none;color:var(--mute);transition:color .2s}.nav nav a:hover{color:var(--green)}main{padding:0 5vw}section{padding:96px 0 40px;max-width:1200px;margin:auto}h1,h2{font-family:Bebas Neue;font-weight:400;letter-spacing:1px;line-height:1}h1{font-size:clamp(3rem,8vw,6.5rem)}h1 span{background:linear-gradient(90deg,var(--purple),var(--green));-webkit-background-clip:text;background-clip:text;color:transparent}h2{font-size:clamp(2.2rem,5vw,3.6rem);margin-bottom:28px}.hero{display:grid;grid-template-columns:1.3fr 1fr;gap:40px;align-items:center;min-height:100vh;padding-top:110px}.eyebrow{color:var(--green);text-transform:uppercase;letter-spacing:3px;font-size:.8rem;margin-bottom:14px}.lead{color:var(--mute);max-width:52ch;margin:20px 0 26px}.photo{width:100%;max-width:420px;margin-left:auto;aspect-ratio:4/5;object-fit:cover;border-radius:20px;border:1px solid var(--purple);box-shadow:0 0 60px #8a5cff59}.row{display:flex;flex-wrap:wrap;gap:12px;margin-top:12px}.socials a{color:var(--mute);text-decoration:none;border-bottom:1px solid var(--line)}.socials a:hover{color:var(--green)}.btn{display:inline-block;padding:13px 26px;border-radius:999px;font:600 .85rem Space Grotesk;letter-spacing:2px;text-decoration:none;cursor:pointer;border:1px solid var(--purple);color:var(--text);background:transparent;transition:.25s}.btn.primary{background:var(--purple);box-shadow:0 0 24px #8a5cff80}.btn.primary:hover{background:var(--green);color:#000;border-color:var(--green);box-shadow:0 0 28px #39ff8880}.btn.ghost:hover{border-color:var(--green);color:var(--green)}.btn:disabled{opacity:.6}.filters{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:26px}.filters button{background:var(--panel);color:var(--mute);border:1px solid var(--line);padding:8px 16px;border-radius:999px;cursor:pointer;font:inherit;font-size:.85rem;transition:.2s}.filters button:hover,.filters .on{color:#000;background:var(--green);border-color:var(--green)}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:22px}.card{text-align:left;background:var(--panel);border:1px solid var(--line);border-radius:16px;overflow:hidden;cursor:pointer;color:inherit;font:inherit;padding:0;transition:border-color .3s,box-shadow .3s}.card:hover{border-color:var(--purple);box-shadow:0 10px 40px #8a5cff4d}.thumb{position:relative;aspect-ratio:16/9;overflow:hidden;background:#000}.thumb img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.card:hover .thumb img{transform:scale(1.08)}.play{position:absolute;top:0;right:0;bottom:0;left:0;margin:auto;width:58px;height:58px;display:grid;place-items:center;border-radius:50%;background:#8a5cffe6;box-shadow:0 0 30px var(--purple);transition:.3s}.card:hover .play{background:var(--green);color:#000;transform:scale(1.15)}.meta{padding:16px 18px 20px}.meta small{color:var(--green);text-transform:uppercase;letter-spacing:2px;font-size:.7rem}.meta h3{margin:4px 0}.meta p{color:var(--mute);font-size:.9rem}.about{display:grid;grid-template-columns:320px 1fr;gap:36px;align-items:start}.about img{border-radius:16px;border:1px solid var(--line);aspect-ratio:4/5;object-fit:cover;width:100%}.about p{margin:10px 0;color:var(--mute)}.about b{color:var(--text)}.skills{list-style:none;padding:0;display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}.skills li{border:1px solid var(--purple);padding:6px 14px;border-radius:999px;font-size:.85rem}.services{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:18px}.svc{background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:24px;transition:.3s}.svc:hover{border-color:var(--green);box-shadow:0 0 30px #39ff8826}.svc span{font-size:2rem}.svc h3{margin:10px 0 4px}.svc p{color:var(--mute);font-size:.9rem}.contact{display:grid;grid-template-columns:1fr 1.2fr;gap:36px}form{display:grid;gap:14px}label{display:grid;gap:6px;font-size:.85rem;color:var(--mute)}input,select,textarea{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:12px;color:var(--text);font:inherit}input:focus,select:focus,textarea:focus{border-color:var(--purple);outline:none;box-shadow:0 0 0 3px #8a5cff4d}.hp{position:absolute;left:-9999px}.note{color:var(--mute);font-size:.9rem}footer{text-align:center;color:var(--mute);padding:50px 0;font-size:.85rem}.loading{min-height:100vh;display:grid;place-items:center}.modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;background:#000000e0;display:grid;place-items:center;padding:4vw}.player{position:relative;width:min(1000px,100%);aspect-ratio:16/9;border-radius:14px;overflow:hidden;box-shadow:0 0 80px #8a5cff80}.player iframe{width:100%;height:100%;border:0}.close{position:absolute;top:8px;right:8px;z-index:2;width:38px;height:38px;border-radius:50%;border:0;background:#000000b3;color:#fff;cursor:pointer}.close:hover{background:var(--green);color:#000}@media (max-width:820px){.hero,.about,.contact{grid-template-columns:1fr}.photo{margin:0;max-width:300px}.nav nav{gap:.7rem}.nav nav a{font-size:.7rem}.hero{padding-top:100px}}@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
