:root{--bg:#061A1A;--glass:#0C2222;--text:#E6F5F4;--muted:#9EC8C6;--teal:#00A7A2;--border:#143030}
*{box-sizing:border-box} html,body{margin:0;background:radial-gradient(80% 60% at 20% 10%, rgba(0,167,162,.18), transparent 50%), var(--bg);color:var(--text);font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif}
img{display:block;max-width:100%}
.nav{position:sticky;top:0;display:flex;justify-content:space-between;align-items:center;padding:.9rem 1.2rem;background:rgba(6,26,26,.58);backdrop-filter:saturate(120%) blur(8px);border-bottom:1px solid var(--border);z-index:10}
.nav .brand{display:flex;align-items:center;gap:.6rem;color:var(--text);text-decoration:none;font-weight:800}
.nav .logo{width:34px;height:34px;border-radius:6px;object-fit:cover}
.nav nav{display:flex;gap:1rem;align-items:center}
.nav a{color:var(--text);text-decoration:none;padding:.4rem .6rem;border-radius:8px}
.nav .cta{background:var(--teal);color:#101010;font-weight:800}
.hero{position:relative;min-height:72vh;display:grid;place-items:center;padding:8vh 0}
.hero-inner{width:min(1080px,92%);position:relative}
.title{font-size:clamp(44px,7.4vw,92px);line-height:1.05;margin:0 0 .6rem}
.gradient{background:linear-gradient(90deg,#79E3DE 0%,#00A7A2 50%,#4BD4CF 100%);-webkit-background-clip:text;background-clip:text;color:transparent}
.kicker{color:var(--muted);font-weight:600;margin-bottom:1rem}
.actions{display:flex;gap:.8rem;margin:1rem 0 1.6rem}
.btn{display:inline-block;background:var(--teal);color:#111;font-weight:800;padding:.9rem 1.1rem;border-radius:14px;border:1px solid transparent;box-shadow:0 10px 26px rgba(0,0,0,.25)}
.btn.ghost{background:transparent;color:var(--text);border-color:var(--border)}
.btn.xl{padding:1.1rem 1.4rem;font-size:1.05rem}
.section{padding:4rem 0}
.section-head{width:min(1080px,92%);margin-inline:auto;margin-bottom:1.2rem}
.muted{color:var(--muted)}
.cards{width:min(1080px,92%);margin-inline:auto;display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:1rem}
.card{background:rgba(12,34,34,.78);border:1px solid var(--border);border-radius:16px;padding:1rem;min-height:140px;transition:transform .15s ease}
.card h3{margin:.2rem 0 .4rem}
.grid{width:min(1080px,92%);margin-inline:auto}
.work-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1rem}
.work-grid figure{margin:0;border-radius:16px;overflow:hidden;border:1px solid var(--border);background:rgba(12,34,34,.8);box-shadow:0 12px 28px rgba(0,0,0,.28)}
.work-grid img{width:100%;height:100%;object-fit:cover;transform:scale(1.01);transition:transform .45s ease, filter .45s ease}
.work-grid figure:hover img{transform:scale(1.04);filter:contrast(1.06) saturate(1.08)}
.contact{text-align:center}
.footer{display:flex;justify-content:center;padding:1.2rem;color:var(--muted);border-top:1px solid var(--border)}
.cursor-blob{position:fixed;inset:auto auto 0 0;transform:translate(-50%,-50%);width:360px;height:360px;pointer-events:none;z-index:0;border-radius:50%;background:radial-gradient(circle at 30% 30%, rgba(121,227,222,.27), rgba(121,227,222,.06) 60%, transparent 70%);filter:blur(8px);opacity:.7;mix-blend-mode:screen}
.hero, .section, .footer, .nav{position:relative;z-index:1}
.reveal{opacity:0;transform:translateY(14px);transition:opacity .7s cubic-bezier(.2,.65,.2,1), transform .7s cubic-bezier(.2,.65,.2,1)}
.reveal.show{opacity:1;transform:none}
.magnet{transition:transform .12s ease}