:root{--bg: #03050a;--panel: #071226;--text: #e6eef8;--muted: #9aa6b2;--accent: linear-gradient(90deg,#7c3aed,#06b6d4);--accent-plain: #7c3aed;--card: #071226;--radius: 14px;--glass: rgba(255,255,255,.03)}@media (prefers-color-scheme: dark){:root{--bg: #03050a;--panel: #071226;--text: #e6eef8;--muted: #9aa6b2;--accent-plain: #7c3aed;--card: #071226}}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;font-family:Inter,Space Grotesk,ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto;background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased}.container{max-width:1100px;margin:0 auto;padding:2.25rem}.site-header{position:sticky;top:12px;z-index:60}.header-inner{display:flex;align-items:center;justify-content:space-between;background:transparent;padding:.5rem;border-radius:12px}.brand{font-weight:700;font-family:Space Grotesk,Inter,sans-serif;font-size:1.05rem;color:var(--accent-plain)}.nav{display:flex;gap:.75rem;align-items:center}.nav a{color:var(--text);text-decoration:none;padding:.45rem .6rem;border-radius:10px;transition:background .18s,transform .18s}.nav a:hover{background:#ffffff08;transform:translateY(-2px)}.nav .cta{background:var(--accent-plain);color:#fff;padding:.5rem .9rem}.nav-toggle{display:none;background:transparent;border:0;padding:.25rem;margin-left:.5rem}.nav-toggle .bar{display:block;width:22px;height:2px;background:var(--text);margin:4px 0;border-radius:2px}.hero{padding:3.5rem 0;border-radius:14px}.hero-grid{display:grid;grid-template-columns:1fr 360px;gap:2.25rem;align-items:center}.hero{background:linear-gradient(180deg,#7c3aed14,#06b6d408);padding:3.5rem;border-radius:16px}.hero h1{font-size:clamp(1.6rem,3.5vw,2.8rem);margin:0 0 .5rem;line-height:1.04}.hero p{color:var(--muted);margin:0 0 1.6rem;font-size:1.02rem;line-height:1.6}.hero-photo{display:flex;justify-content:center}.hero-photo img{width:100%;max-width:320px;height:auto;border-radius:18px;object-fit:cover;box-shadow:0 12px 40px #08142d14;border:1px solid rgba(15,23,36,.04)}.hero-actions .btn{margin-right:.6rem}.section-title{font-size:1.2rem;margin-bottom:1rem}.services-grid,.projects-grid{display:grid;gap:1rem}.services-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.card{background:var(--card);padding:1.15rem;border-radius:12px;box-shadow:0 8px 30px #02061799;transition:transform .18s,box-shadow .18s}.card:hover{transform:translateY(-6px);box-shadow:0 24px 60px #020617b3}.project-card{display:flex;gap:1rem;background:var(--card);padding:.75rem;border-radius:12px;align-items:stretch;box-shadow:0 8px 30px #02061799}.project-media{width:220px;min-width:180px;height:140px;border-radius:10px;overflow:hidden;flex-shrink:0}.project-media img{width:100%;height:100%;object-fit:cover;display:block}.project-body{flex:1;padding:.6rem}.project-body h3{margin:0 0 .35rem}.muted{color:var(--muted)}.contact-form{display:grid;gap:1rem;max-width:720px}.contact-form label{display:flex;flex-direction:column;gap:.6rem}.contact-form input,.contact-form textarea{padding:.7rem;border-radius:10px;border:1px solid rgba(255,255,255,.04);background:transparent;color:var(--text)}.form-actions{display:flex;gap:1rem;align-items:center}.btn{display:inline-block;padding:.6rem .9rem;border-radius:10px;border:1px solid transparent;text-decoration:none;color:inherit;background:transparent}.btn.primary{background:var(--accent-plain);color:#fff;border-radius:12px;box-shadow:0 8px 30px #7c3aed1f}.site-footer{border-top:1px solid rgba(15,23,36,.04);padding:1.25rem 0;margin-top:2.25rem}.footer-inner{display:flex;justify-content:space-between;align-items:center}@media (max-width:920px){.hero-grid{grid-template-columns:1fr}.project-card{flex-direction:column}.project-media{width:100%;min-width:auto;height:180px}.nav{position:fixed;right:16px;top:72px;flex-direction:column;background:linear-gradient(180deg,#fffffffa,#fffffff0);padding:.6rem;border-radius:12px;box-shadow:0 10px 30px #0b102414;display:none}.nav.open{display:flex}.nav a{display:block;padding:.55rem .9rem;margin:.15rem 0}.nav-toggle{display:inline-flex}.header-inner{gap:8px}}@media (prefers-reduced-motion: reduce){*{transition:none!important}}
