:root{
  --bg:#0b0c10;
  --surface:#101217;
  --muted:#232733;
  --text:#e6e7eb;
  --text-dim:#b9bcc6;
  --accent:#b6f09c;
  --accent-2:#6de5e8;
  --shadow: 0 10px 30px rgba(0,0,0,.35);
}

*{box-sizing:border-box}
html,body{height:100%}
body{
  margin:0;
  font-family:Inter, system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
  color:var(--text);
  background: radial-gradient(1200px 800px at 70% -10%, rgba(182,240,156,.12), transparent 60%),
              radial-gradient(800px 600px at 20% -5%, rgba(109,229,232,.10), transparent 50%),
              var(--bg);
  line-height:1.6;
}

a{color:var(--text); text-decoration:none}
a:hover{opacity:.9}

.container{width:min(1100px, 92%); margin-inline:auto}

.site-header{
  position:sticky; top:0; z-index:50;
  backdrop-filter:saturate(1.2) blur(8px);
  background:color-mix(in oklab, var(--bg), transparent 10%);
  border-bottom:1px solid rgba(255,255,255,.05);
}
.header-inner{display:flex; align-items:center; justify-content:space-between; padding:14px 0}
.brand{display:flex; gap:10px; align-items:center; font-weight:800; letter-spacing:.3px}
.logo{width:36px; height:36px}
.logo.sm{width:28px; height:28px}
.nav{display:flex; gap:20px; align-items:center}
.nav a{padding:8px 10px; border-radius:10px}
.nav .cta{background:linear-gradient(120deg, var(--accent), var(--accent-2)); color:#0c0d11; font-weight:700; padding:9px 14px; box-shadow:var(--shadow)}

.hero{padding:80px 0 60px; position:relative; overflow:hidden}
.hero-inner{display:grid; grid-template-columns:1.2fr 1fr; gap:36px; align-items:center}
.hero-copy h1{font-size: clamp(32px, 6vw, 56px); line-height:1.1; margin:0 0 10px}
.hero-copy p{color:var(--text-dim); margin:0 0 20px}
.hero-ctas{display:flex; gap:12px; flex-wrap:wrap}
.btn{display:inline-flex; align-items:center; justify-content:center; padding:12px 16px; border-radius:14px; border:1px solid rgba(255,255,255,.12)}
.btn.primary{background:linear-gradient(120deg, var(--accent), var(--accent-2)); color:#0c0d11; font-weight:800; box-shadow:var(--shadow)}
.btn.secondary{background:rgba(255,255,255,.04)}

.hero-art{position:relative; height:360px}
.layer{position:absolute; inset:auto; width:70%; height:70%; border-radius:24px; filter:blur(6px)}
.layer-1{right:0; top:10%; background:linear-gradient(135deg, rgba(182,240,156,.25), rgba(109,229,232,.25))}
.layer-2{right:12%; top:22%; background:linear-gradient(135deg, rgba(182,240,156,.18), rgba(109,229,232,.18)); transform:rotate(6deg)}
.layer-3{right:24%; top:34%; background:linear-gradient(135deg, rgba(182,240,156,.12), rgba(109,229,232,.12)); transform:rotate(12deg)}
.layer{animation: floaty 10s ease-in-out infinite alternate}
@keyframes floaty{from{transform:translateY(0) rotate(0)} to{transform:translateY(-12px) rotate(6deg)}}

.section{padding:70px 0}
.section.alt{background:linear-gradient(180deg, rgba(255,255,255,.03), transparent)}
.center{text-align:center}

.grid-2{display:grid; grid-template-columns:1fr 1fr; gap:24px}
.card{background:color-mix(in oklab, var(--surface), transparent 0%); border:1px solid rgba(255,255,255,.06); border-radius:16px; padding:18px}
.ticks{list-style:none; padding:0; margin:10px 0 0}
.ticks li{position:relative; padding-left:26px; margin:8px 0}
.ticks li::before{content:""; position:absolute; left:0; top:8px; width:14px; height:14px; border-radius:50%; background:linear-gradient(120deg, var(--accent), var(--accent-2))}

.services{display:grid; grid-template-columns:repeat(3, 1fr); gap:16px; margin-top:18px}
.service{background:color-mix(in oklab, var(--surface), transparent 0%); border:1px solid rgba(255,255,255,.06); padding:18px; border-radius:16px}
.service h3{margin-top:6px}

.portfolio{display:grid; grid-template-columns:repeat(3, 1fr); gap:16px; margin-top:18px}
.work-card{background:color-mix(in oklab, var(--surface), transparent 0%); border:1px solid rgba(255,255,255,.06); border-radius:16px; overflow:hidden}
.thumb{height:140px; background:linear-gradient(120deg, rgba(182,240,156,.18), rgba(109,229,232,.18))}
.skeleton{position:relative}
.skeleton::after{content:""; position:absolute; inset:0; background:linear-gradient(90deg, transparent, rgba(255,255,255,.06), transparent); animation: shimmer 2s infinite}
@keyframes shimmer{from{transform:translateX(-100%)} to{transform:translateX(100%)}}
.work-copy{padding:14px}

.form{display:grid; gap:12px}
.field{display:grid; gap:6px}
input, textarea{
  width:100%; padding:12px 14px; border-radius:12px; border:1px solid rgba(255,255,255,.12);
  background:rgba(255,255,255,.03); color:var(--text)
}
input::placeholder, textarea::placeholder{color:var(--text-dim)}
.status{min-height:20px; font-size:14px}
.link{color:var(--accent)}

.address{white-space:pre-line}
.tiny{font-size:12px; color:var(--text-dim)}

.site-footer{padding:28px 0; border-top:1px solid rgba(255,255,255,.05)}
.footer-inner{display:flex; justify-content:space-between; align-items:center}

/* Responsive */
@media (max-width: 960px){
  .hero-inner{grid-template-columns:1fr}
  .hero-art{height:240px}
  .grid-2{grid-template-columns:1fr}
  .services, .portfolio{grid-template-columns:1fr}
}

.thumb-img { width: 100%; height: 140px; object-fit: cover; display: block; }

.hp {
  position: absolute !important;
  left: -5000px !important;
  width: 1px; height: 1px;
  opacity: 0 !important;
  pointer-events: none;
}
