html,body,#root{min-height:100%;margin:0}:root{color:#f5f5f5;font-synthesis:none;text-rendering:optimizelegibility;background:#0a0a0a;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{color:#f5f5f5;background:#0a0a0a;min-width:320px;margin:0}a{color:inherit;text-decoration:none}.site{min-height:100vh}.navbar{z-index:100;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#0a0a0aeb;border-bottom:1px solid #252525;width:100%;position:fixed;top:0}.nav-container{justify-content:space-between;align-items:center;max-width:1100px;margin:0 auto;padding:20px 24px;display:flex}.logo{color:#fff;font-size:1rem;font-weight:700}.nav-links{color:#b5b5b5;gap:28px;font-size:.9rem;display:flex}.nav-links a{transition:color .2s}.nav-links a:hover{color:#fff}.hero{align-items:center;max-width:1100px;min-height:90vh;margin:0 auto;padding:140px 24px 100px;display:flex}.hero-content{max-width:850px}.eyebrow{color:#a3a3a3;text-transform:uppercase;letter-spacing:.12em;margin:0;font-size:.8rem;font-weight:700}.hero h1{color:#fff;letter-spacing:-.05em;margin:20px 0 28px;font-size:clamp(3.2rem,7vw,6rem);font-weight:800;line-height:1.02}.hero-description{color:#c4c4c4;max-width:680px;margin:0;font-size:1.15rem;line-height:1.75}.hero-buttons{gap:12px;margin-top:36px;display:flex}.button{border-radius:6px;justify-content:center;align-items:center;padding:12px 20px;font-size:.9rem;font-weight:700;transition:background .2s,color .2s,border-color .2s;display:inline-flex}.button.primary{color:#0a0a0a;background:#fff}.button.primary:hover{background:#d4d4d4}.button.secondary{color:#fff;border:1px solid #444}.button.secondary:hover{background:#1a1a1a;border-color:#666}.section{border-top:2px solid #252525;max-width:1100px;margin:0 auto;padding:120px 24px}.section-label{color:#a3a3a3;text-transform:uppercase;letter-spacing:.12em;margin:0;font-size:.75rem;font-weight:700}.section h2{color:#fff;letter-spacing:-.04em;max-width:800px;margin:18px 0 24px;font-size:clamp(2.4rem,5vw,4rem);font-weight:750;line-height:1.05}.section-description{color:#b5b5b5;max-width:700px;margin:0;font-size:1.05rem;line-height:1.8}.work-grid{grid-template-columns:repeat(3,1fr);gap:16px;margin-top:60px;display:grid}.card{background:#111;border:1px solid #2a2a2a;border-radius:8px;padding:28px;transition:border-color .2s,transform .2s}.card:hover{border-color:#444;transform:translateY(-10px)}.card-number{color:#737373;font-size:.8rem;font-weight:600}.card h3{color:#fff;margin:50px 0 12px;font-size:1.15rem}.card p{color:#a3a3a3;margin:0;line-height:1.7}.about{padding-bottom:140px}.text-link{color:#fff;margin-top:30px;font-weight:700;display:inline-block}.text-link:hover{text-decoration:underline}.contact{max-width:1100px;margin:0 auto;padding:120px 24px}.contact h2{color:#fff;letter-spacing:-.05em;margin:18px 0;font-size:clamp(3rem,7vw,5rem);font-weight:800;line-height:1}.contact p:not(.section-label){color:#b5b5b5;margin-bottom:30px}footer{color:#737373;border-top:1px solid #252525;justify-content:space-between;max-width:1100px;margin:0 auto;padding:30px 24px;font-size:.8rem;display:flex}footer a{color:#a3a3a3}footer a:hover{color:#fff}@media (width<=700px){.nav-links{display:none}.hero{min-height:80vh;padding-top:120px}.hero h1{font-size:3.4rem;line-height:1.05}.hero-description{font-size:1rem}.hero-buttons{flex-direction:column;align-items:flex-start}.work-grid{grid-template-columns:1fr}.project{flex-direction:column}.technologies{justify-content:flex-start;min-width:0}.section{padding:90px 24px}.section h2{font-size:2.5rem}.contact{padding:90px 24px}footer{padding:24px}}#overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;opacity:.95;background:#000000bf;display:none;position:fixed;inset:0}#overlay.active{display:block}#projectModal{color:#f5f5f5;z-index:1001;background:#111;border:1px solid #2a2a2a;border-radius:16px;width:min(700px,90vw);max-height:80vh;padding:40px;display:none;position:fixed;top:50%;left:50%;overflow-y:auto;transform:translate(-50%,-50%);box-shadow:0 25px 60px #00000080,0 0 0 1px #ffffff05}#projectModal.active{display:block}#projectModal h2{letter-spacing:-.03em;margin:0 0 12px;font-size:2rem;font-weight:600}#projectModal p{color:#a0a0a0;line-height:1.7}#projectModal .technologies{flex-wrap:wrap;gap:8px;margin-top:24px;display:flex}#projectModal .technologies span{color:#b8b8b8;background:#1a1a1a;border:1px solid #2d2d2d;border-radius:6px;padding:6px 10px;font-size:.8rem}#projectModal .close-modal{color:#888;cursor:pointer;background:0 0;border:1px solid #2a2a2a;border-radius:8px;justify-content:center;align-items:center;width:36px;height:36px;font-size:1.2rem;transition:all .2s;display:flex;position:absolute;top:20px;right:20px}#projectModal .close-modal:hover{color:#fff;background:#1c1c1c;border-color:#444}@media (width<=600px){#projectModal{width:90vw;padding:28px}#projectModal h2{font-size:1.6rem}}#projectModal{color:#f5f5f5;z-index:1001;background:#111;border:1px solid #2a2a2a;border-radius:16px;width:min(700px,90vw);max-height:80vh;padding:50px 40px 40px;position:fixed;top:50%;left:50%;overflow-y:auto;transform:translate(-50%,-50%)}.modal-close{color:#888;cursor:pointer;background:0 0;border:none;font-size:28px;line-height:1;position:absolute;top:15px;right:18px}.modal-close:hover{color:#fff}.project-list{margin-top:50px}.project{cursor:pointer;border-top:1px solid #2a2a2a;justify-content:space-between;gap:40px;padding:36px 0;transition:transform .2s,border-color .2s,background-color .2s,box-shadow .2s;display:flex}.project:last-child{border-bottom:1px solid #2a2a2a}.project:hover{background-color:#181818;border-color:#666;transform:translate(20px);box-shadow:0 8px 25px #00000059}.project:hover h3{color:#fff}.project:hover .project-type{color:#aaa}.project h3{color:#fff;margin:8px 0 12px;font-size:1.6rem}.project p{color:#a3a3a3;max-width:650px;margin:0;line-height:1.7}.project-type{color:#737373;text-transform:uppercase;letter-spacing:.1em;margin:0;font-size:.7rem;font-weight:700}.technologies{flex-wrap:wrap;place-content:flex-start flex-end;gap:8px;min-width:250px;display:flex}.technologies span{color:#b5b5b5;background:#111;border:1px solid #333;border-radius:4px;padding:6px 10px;font-size:.75rem}.about-technologies{max-width:900px;margin-top:3rem}.about-technology-list{grid-template-columns:repeat(2,1fr);gap:.75rem 1rem;margin-top:1rem;display:grid}.about-technology{color:#ccc;border-radius:4px;padding:.75rem 1rem;font-size:.85rem}.about-technology:hover{background-color:#181818;border-color:#555;transform:translateY(-2px)}@media (width<=600px){.about-technology-list{grid-template-columns:1fr}}
