:root{
  --bg: #0A0F0D;
  --text: #EAF7F0;
  --muted: #BFE7D2;
  --card:#0d1512;
  --line:#193028;
  --primary:#0CE37B;
  --primary-900:#0AB865;
  --accent:#9AF0BF;
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,'Helvetica Neue','Noto Sans','Liberation Sans',Arial,sans-serif;background:var(--bg);color:var(--text)}
a{color:inherit}img{max-width:100%;display:block}
.container{max-width:1120px;margin:0 auto;padding:0 20px}
.site-header{position:sticky;top:0;z-index:50;background:rgba(10,15,13,.8);backdrop-filter:saturate(140%) blur(8px);border-bottom:1px solid var(--line)}
.site-header .container{display:flex;align-items:center;justify-content:space-between;height:64px}
.brand{display:flex;align-items:center;gap:.6rem;text-decoration:none;font-weight:800;letter-spacing:.4px}
.brand .logo{width:32px;height:32px}
.brand.small .logo{width:20px;height:20px}
.nav{display:flex;align-items:center;gap:16px}
.nav-list{display:flex;gap:16px;align-items:center;list-style:none;margin:0;padding:0}
.nav-list a{text-decoration:none;opacity:.9}
.nav-list a:hover{opacity:1}
.desktop-only{display:none}
.nav-toggle{display:inline-grid;gap:4px;background:transparent;border:0;cursor:pointer}
.nav-toggle span{width:24px;height:2px;background:var(--text);display:block}
@media(min-width:900px){
  .desktop-only{display:inline-flex}
  .nav-toggle{display:none}
}
.btn{border:1px solid var(--line);background:transparent;color:var(--text);padding:.7rem 1rem;border-radius:999px;cursor:pointer;text-decoration:none;font-weight:600;display:inline-flex;align-items:center;gap:.5rem}
.btn.cta{background:var(--primary);border-color:var(--primary);color:#001b0f}
.btn.ghost{background:transparent}
.btn.small{padding:.45rem .8rem;font-size:.9rem}
.linklike{background:none;border:0;color:var(--muted);text-decoration:underline;cursor:pointer}
.hero{padding:72px 0;border-bottom:1px solid var(--line);background:radial-gradient(1200px 400px at 20% -10%,rgba(12,227,123,.18),transparent)}
.hero-grid{display:grid;gap:32px;align-items:center}
@media(min-width:900px){
  .hero-grid{grid-template-columns:1.1fr .9fr}
}
.hero-copy h1{font-size:clamp(1.8rem,3.2vw,3rem);line-height:1.1;margin:.2rem 0 1rem}
.hero .lead{font-size:1.1rem;color:var(--muted)}
.hero-actions{display:flex;gap:12px;margin-top:16px}
.trust{display:flex;gap:12px;align-items:center;margin-top:22px;color:var(--muted)}
.trust ul{display:flex;flex-wrap:wrap;gap:8px;list-style:none;margin:0;padding:0}
.trust li{border:1px solid var(--line);padding:.25rem .6rem;border-radius:999px;font-size:.9rem;opacity:.9}
.section{padding:64px 0;border-bottom:1px solid var(--line)}
.section.alt{background:linear-gradient(180deg,rgba(255,255,255,.02),transparent)}
.section h2{font-size:1.6rem;margin:0 0 .4rem}
.section-lead{color:var(--muted);margin:0 0 1.4rem}
.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px}
.card{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:18px}
.card h3{margin:.2rem 0 .5rem;font-size:1.1rem}
.bullets{margin:0;padding-left:18px;color:var(--muted)}
.timeline{display:grid;gap:10px;counter-reset:step}
.timeline li{list-style:none;background:var(--card);border:1px solid var(--line);padding:14px;border-radius:12px;position:relative}
.timeline li::before{counter-increment:step;content:counter(step);position:absolute;left:-10px;top:-10px;background:var(--primary);color:#001b0f;width:24px;height:24px;display:grid;place-items:center;border-radius:999px;font-weight:700;box-shadow:0 4px 10px rgba(0,0,0,.3)}
.projects{display:grid;gap:16px}
.project{display:grid;gap:12px;background:var(--card);border:1px solid var(--line);border-radius:16px;overflow:hidden}
@media(min-width:800px){
  .project{grid-template-columns:1.2fr 1.8fr}
}
.project .tags{display:flex;gap:8px;list-style:none;margin:8px 0 0;padding:0}
.project .tags li{border:1px solid var(--line);padding:.15rem .5rem;border-radius:999px;font-size:.85rem;color:var(--muted)}
.project-body{padding:16px}
.project-media{border-right:1px solid var(--line);background:radial-gradient(400px 200px at 40% 40%,rgba(12,227,123,.15),transparent)}
.contact{display:grid;gap:20px}
@media(min-width:880px){
  .contact{grid-template-columns:1.1fr 1fr;align-items:start}
}
.contact-form{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:18px;display:grid;gap:12px}
.contact-form label{display:grid;gap:6px}
.contact-form input,.contact-form textarea{border:1px solid var(--line);background:#0b1413;color:var(--text);border-radius:10px;padding:.7rem}
.form-note{color:var(--muted);font-size:.95rem}
.site-footer{padding:28px 0 64px;border-top:1px solid var(--line)}
.footer-grid{display:grid;gap:16px;align-items:start}
@media(min-width:780px){
  .footer-grid{grid-template-columns:1.3fr 1fr 1fr}
}
.cookie-banner{position:fixed;left:20px;right:20px;bottom:20px;background:var(--card);border:1px solid var(--line);border-radius:14px;padding:14px;display:flex;align-items:center;justify-content:space-between;gap:12px;z-index:99}
.cookie-banner .actions{display:flex;gap:8px}
.underline{background:linear-gradient(transparent 60%, rgba(154,240,191,.35) 60%)}
