:root{--bg:#05070d;--panel:#0d1220;--panel-soft:#0f1526;--muted:#aabdd9;--muted-2:#8ea2c2;--text:#e9f1ff;--accent:#f2a23b;--accent-2:#ffcd6a;--stroke:#1f2b3e;--glow:0 20px 80px rgba(0,0,0,.42);--radius:18px;--shadow-soft:0 14px 38px rgba(0,0,0,.26);--max:1180px;--font:'Manrope','Segoe UI',system-ui,sans-serif}
*{box-sizing:border-box}body{margin:0;font-family:var(--font);background:radial-gradient(circle at 12% 22%,rgba(242,162,59,.1),transparent 36%),radial-gradient(circle at 84% 12%,rgba(255,205,106,.16),transparent 30%),var(--bg);color:var(--text);line-height:1.6;letter-spacing:.2px;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}img{max-width:100%;display:block}
header{position:sticky;top:0;z-index:30;backdrop-filter:blur(16px);background:rgba(5,7,13,.82);border-bottom:1px solid var(--stroke)}.nav-wrap{max-width:var(--max);margin:0 auto;padding:16px 4vw;display:flex;align-items:center;gap:14px;justify-content:space-between;flex-wrap:wrap}
.brand{display:flex;align-items:center;gap:12px;font-weight:800;letter-spacing:1px}.brand img{height:44px;width:auto;border-radius:12px;box-shadow:0 10px 30px rgba(242,162,59,.32)}
.menu-toggle{display:none}
nav{display:flex;flex-wrap:wrap;gap:12px}nav a{color:var(--muted);font-weight:700;padding:8px 10px;border-radius:999px;transition:.2s ease}nav a:hover{color:var(--accent);background:rgba(255,255,255,.04)}
.nav-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.btn{border:1px solid var(--stroke);border-radius:999px;padding:11px 18px;font-weight:800;background:transparent;color:var(--text);display:inline-flex;align-items:center;gap:8px;cursor:pointer;transition:transform .18s ease,box-shadow .18s ease,border .18s ease}.btn:hover{transform:translateY(-1px);border-color:var(--accent);color:var(--accent)}
.btn.solid{background:linear-gradient(120deg,var(--accent),var(--accent-2));color:#05070d;border:none;box-shadow:0 12px 36px rgba(242,162,59,.32)}.btn.solid:hover{box-shadow:0 16px 44px rgba(242,162,59,.44)}
main{max-width:var(--max);margin:0 auto;padding:28px 4vw 80px}
section{margin-top:72px;scroll-margin-top:90px}h1,h2,h3,h4,h5{margin:0;color:var(--text)}p{margin:0;color:var(--muted)}
.eyebrow{display:inline-flex;align-items:center;gap:8px;padding:6px 12px;border:1px solid var(--stroke);border-radius:999px;background:rgba(255,255,255,.05);font-weight:800;color:var(--muted)}
.hero{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:32px;align-items:center;padding:36px 32px;border:1px solid var(--stroke);border-radius:26px;background:linear-gradient(155deg,rgba(242,162,59,.12),rgba(14,20,31,.9)),linear-gradient(320deg,rgba(255,205,106,.14),rgba(14,20,31,.9));box-shadow:var(--glow)}h1{font-size:clamp(2.1rem,4vw,3.2rem);letter-spacing:-.6px;margin:12px 0 10px}.lead{color:var(--muted);font-size:1.08rem;margin-bottom:18px;max-width:640px}
.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:12px}.pill-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}.pill{padding:9px 14px;border:1px solid var(--stroke);border-radius:12px;background:rgba(255,255,255,.05);color:var(--muted);font-weight:700}
.stat-card{background:var(--panel);border:1px solid var(--stroke);border-radius:20px;padding:18px;box-shadow:var(--shadow-soft)}.stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;margin:12px 0 4px}.stat{padding:12px;border:1px solid var(--stroke);border-radius:14px;background:rgba(255,255,255,.03);color:var(--muted)}.stat strong{display:block;color:var(--text);font-size:1.3rem}
.section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:18px}.section-title{font-size:1.7rem}.section-sub{max-width:640px}
.card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px}.card{background:var(--panel);border:1px solid var(--stroke);border-radius:var(--radius);padding:18px 16px;box-shadow:var(--shadow-soft)}.icon-circle{height:44px;width:44px;border-radius:12px;border:1px solid var(--stroke);display:grid;place-items:center;font-weight:800;color:var(--text);background:linear-gradient(135deg,rgba(79,209,197,.22),rgba(255,209,102,.24))}
.tag-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.tag{padding:6px 10px;border-radius:10px;border:1px dashed var(--stroke);background:rgba(255,255,255,.05);color:var(--muted);font-weight:700;font-size:.95rem}
.process{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px;margin-top:16px}.step{position:relative;padding:18px 16px;border:1px solid var(--stroke);border-radius:var(--radius);background:rgba(255,255,255,.03);box-shadow:var(--shadow-soft);color:var(--muted)}.step strong{color:var(--text);display:block;margin-bottom:6px}.step::before{content:attr(data-step);position:absolute;top:14px;right:14px;font-weight:800;color:var(--accent);background:rgba(79,209,197,.12);border-radius:10px;padding:5px 9px;border:1px solid var(--stroke)}
.portfolio-controls{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:16px}.filter{padding:9px 14px;border-radius:12px;border:1px solid var(--stroke);background:rgba(255,255,255,.05);color:var(--muted);font-weight:700;cursor:pointer;transition:.18s ease}.filter.active{background:linear-gradient(120deg,var(--accent),var(--accent-2));color:#05070d;border:none;box-shadow:0 12px 36px rgba(242,162,59,.24)}
.portfolio-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px}.folio{border-radius:var(--radius);border:1px solid var(--stroke);background:linear-gradient(145deg,rgba(255,255,255,.02),rgba(242,162,59,.08));box-shadow:0 18px 38px rgba(0,0,0,.32);overflow:hidden;display:flex;flex-direction:column;min-height:100%}.folio-thumb{margin:0;padding:24px 16px;font-weight:800;font-size:1.05rem;background:var(--panel-soft);color:var(--text);border-bottom:1px solid var(--stroke)}.folio-body{padding:14px 14px 16px;display:flex;flex-direction:column;gap:8px}.folio h4{margin:0;font-size:1.05rem}.folio small{color:var(--muted)}.folio a.visit{display:inline-flex;align-items:center;gap:8px;font-weight:800;color:var(--accent)}
.map-wrap{width:100%}.map-frame{border:1px solid var(--stroke);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow-soft);background:var(--panel-soft)}.map-frame iframe{width:100%;height:360px;border:0;display:block}.map-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:12px}
.about{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:18px;align-items:center;border:1px solid var(--stroke);border-radius:22px;padding:24px 22px;background:linear-gradient(125deg,rgba(14,20,31,.9),rgba(242,162,59,.12));box-shadow:var(--glow)}.about ul{margin:10px 0;padding-left:18px;color:var(--muted)}
.contact-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:18px;align-items:start}.form-card{background:rgba(255,255,255,.03);border:1px solid var(--stroke);border-radius:var(--radius);padding:18px;box-shadow:var(--shadow-soft)}label{display:block;font-weight:800;margin-bottom:6px;color:var(--text)}input,textarea{width:100%;padding:12px 14px;background:#0b1018;border:1px solid var(--stroke);border-radius:12px;color:var(--text);font-size:1rem;font-family:var(--font);transition:border .18s ease}input:focus,textarea:focus{outline:none;border-color:var(--accent)}textarea{resize:vertical;min-height:120px}.helper{color:var(--muted);font-size:.94rem;margin-top:8px}
.form-status{margin-top:10px;padding:10px 12px;border-radius:12px;display:none}.form-status.show{display:block}.form-status.ok{background:rgba(79,209,197,.14);border:1px solid rgba(79,209,197,.4);color:#d9fff9}.form-status.err{background:rgba(244,93,93,.12);border:1px solid rgba(244,93,93,.4);color:#ffdada}
.social{display:flex;align-items:center;gap:12px}.social a svg{height:22px;width:22px;fill:var(--muted);transition:.18s ease}.social a:hover svg{fill:var(--accent)}
footer{border-top:1px solid var(--stroke);padding:26px 4vw 32px;margin-top:70px;background:#05070d;color:var(--muted)}.foot-inner{max-width:var(--max);margin:0 auto;display:flex;flex-wrap:wrap;gap:14px;justify-content:space-between;align-items:center}
@media(max-width:960px){
  .menu-toggle{display:inline-flex}
  nav,.nav-actions{display:none;width:100%}
  .nav-wrap.nav-open nav,
  .nav-wrap.nav-open .nav-actions{display:flex;flex-direction:column;align-items:flex-start;gap:10px;margin-top:10px}
  .nav-wrap.nav-open nav a{width:100%;padding:10px 12px}
  .nav-wrap.nav-open .nav-actions{justify-content:flex-start}
}
