@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800;900&display=swap";*{box-sizing:border-box;margin:0;padding:0}html,body,#root{min-height:100%;overflow-x:hidden}body{color:#222;background:#ececec;font-family:Inter,sans-serif}a{color:inherit;text-decoration:none}.header{color:#fff;background:#060606;grid-template-columns:1fr auto 1fr;align-items:center;height:72px;padding:0 42px;display:grid}.logo{letter-spacing:-1px;justify-self:start;font-size:28px;font-weight:900}.nav{justify-self:center;gap:28px;display:flex}.nav a{opacity:.95;font-size:16px}.nav a:hover{opacity:.7}.socials{justify-self:end;gap:18px;display:flex}.socials a{opacity:.9;font-size:14px}.hero{background:#fff;flex-direction:column;justify-content:center;min-height:calc(100vh - 72px);display:flex}.hero-main{grid-template-columns:1fr 560px 1fr;align-items:center;gap:28px;width:min(1360px,100%);margin:0 auto;padding:0 20px 54px;display:grid}.hero-side{transition:opacity .18s,transform .18s}.hero-side.active{opacity:1;transform:translateY(-2px)}.hero-side.inactive{opacity:.33}.hero-side h1{letter-spacing:-4px;color:#2b2b2b;margin-bottom:18px;font-size:86px;font-weight:900;line-height:.92}.hero-side p{color:#666;max-width:320px;font-size:18px;line-height:1.55}.hero-left{text-align:left;justify-self:end}.hero-right{text-align:left;justify-self:start}.hero-image-wrap{justify-content:center;align-items:end;width:560px;height:560px;display:flex;position:relative;overflow:hidden}.hero-image{object-fit:contain;pointer-events:none;-webkit-user-select:none;user-select:none;max-width:122%;max-height:100%;transition:opacity .18s,transform .18s,filter .18s;position:absolute;bottom:0;left:50%;transform:translate(-50%)scale(1)}.hero-image-normal.show,.hero-image-art.show{opacity:1}.hero-image-normal.hide,.hero-image-art.hide{opacity:0}.hero-image-normal{filter:saturate(.95)contrast(1.02)}.hero-image-art{filter:saturate(1.02)contrast(1.01)}.code-overlay{opacity:0;pointer-events:none;flex-direction:column;gap:2px;transition:opacity .18s,transform .18s;display:flex;position:absolute;bottom:42px;right:20px;transform:translateY(10px)}.code-overlay.visible{opacity:.25;transform:translateY(0)}.code-overlay span{color:#8d8d8d;font-family:Georgia,Times New Roman,serif;font-size:18px;line-height:1.1}.paint-overlay{opacity:0;pointer-events:none;width:200px;height:130px;transition:opacity .18s,transform .18s;position:absolute;bottom:60px;left:56px;transform:translateY(10px)}.paint-overlay.visible{opacity:.9;transform:translateY(0)}.paint{filter:blur(.2px);border-radius:999px;display:block;position:absolute}.paint-1{background:#edc453;width:132px;height:24px;bottom:18px;left:0;transform:rotate(-10deg)}.paint-2{background:#b9dcdb;width:118px;height:26px;bottom:8px;left:70px;transform:rotate(10deg)}.paint-3{background:#eab8aa;width:150px;height:20px;bottom:0;left:4px;transform:rotate(14deg)}.hero-footer{align-items:center;gap:22px;width:min(980px,88%);margin:0 auto 18px;display:flex}.hero-footer span{background:#d5cec3;flex:1;height:1px}.hero-footer p{letter-spacing:2px;color:#8c816f;white-space:nowrap;font-size:13px}@media (width<=1180px){.header{grid-template-columns:1fr;gap:12px;height:auto;padding:18px 20px}.logo,.nav,.socials{justify-self:center}.hero-main{text-align:center;grid-template-columns:1fr;justify-items:center;gap:24px}.hero-left,.hero-right{text-align:center;justify-self:center}.hero-side p{max-width:620px}}@media (width<=768px){.nav{flex-wrap:wrap;justify-content:center;gap:14px}.socials{gap:12px}.hero-main{padding:18px 16px 42px}.hero-side h1{letter-spacing:-2px;font-size:54px}.hero-side p{font-size:17px}.hero-image-wrap{width:320px;height:360px}.hero-image{max-width:128%}.code-overlay span{font-size:12px}.hero-footer{gap:12px}.hero-footer p{letter-spacing:1px;font-size:11px}}.about-page{background:linear-gradient(#f7f7f7 0%,#efefef 100%);min-height:calc(100vh - 72px);padding:80px 20px 100px}.about-hero,.about-grid,.about-stack-section,.about-timeline,.about-cta{width:100%;max-width:1180px;margin:0 auto}.about-hero{margin-bottom:56px}.about-eyebrow{letter-spacing:2px;text-transform:uppercase;color:#8a8a8a;margin-bottom:16px;font-size:13px;font-weight:700;display:inline-block}.about-hero h1{letter-spacing:-2px;color:#111;max-width:900px;margin-bottom:24px;font-size:58px;line-height:1.02}.about-intro{color:#5a5a5a;max-width:760px;font-size:19px;line-height:1.8}.about-grid{grid-template-columns:1.3fr 1fr 1fr;gap:22px;margin-bottom:60px;display:grid}.about-card{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffffc7;border:1px solid #0000000f;border-radius:26px;padding:28px;box-shadow:0 18px 45px #0000000d}.about-card-highlight{color:#fff;background:linear-gradient(#111 0%,#1d1d1d 100%);grid-row:span 2}.about-card-label{letter-spacing:1.6px;text-transform:uppercase;color:#8b8b8b;margin-bottom:14px;font-size:12px;font-weight:700;display:inline-block}.about-card-highlight .about-card-label{color:#b8b8b8}.about-card h2,.about-card h3{color:inherit;margin-bottom:14px;font-size:28px;line-height:1.15}.about-card h3{color:#171717;font-size:24px}.about-card p{color:#666;font-size:16px;line-height:1.75}.about-card-highlight p{color:#ffffffd1}.about-stack-section{grid-template-columns:1fr 1fr;align-items:center;gap:28px;margin-bottom:68px;display:grid}.about-stack-text h2,.about-timeline-text h2,.about-cta h2{letter-spacing:-1px;color:#111;margin-bottom:16px;font-size:42px;line-height:1.08}.about-stack-text p,.about-cta p{color:#5f5f5f;max-width:620px;font-size:18px;line-height:1.75}.about-tags{flex-wrap:wrap;gap:14px;display:flex}.about-tags span{color:#222;background:#fff;border:1px solid #00000014;border-radius:999px;padding:14px 18px;font-size:15px;font-weight:600;box-shadow:0 10px 30px #0000000a}.about-timeline{margin-bottom:72px}.about-timeline-text{margin-bottom:28px}.timeline-list{gap:22px;display:grid;position:relative}.timeline-list:before{content:"";background:#d9d9d9;width:2px;position:absolute;top:0;bottom:0;left:11px}.timeline-item{grid-template-columns:24px 1fr;align-items:start;gap:20px;display:grid;position:relative}.timeline-dot{z-index:1;background:#111;border:5px solid #f2f2f2;border-radius:50%;width:24px;height:24px}.timeline-content{background:#fff;border:1px solid #0000000d;border-radius:22px;padding:22px 24px;box-shadow:0 12px 35px #0000000d}.timeline-content h3{color:#151515;margin-bottom:10px;font-size:22px}.timeline-content p{color:#666;font-size:16px;line-height:1.7}.about-cta{text-align:center;max-width:900px}.about-cta h2{margin-bottom:18px}.about-cta p{margin:0 auto}@media (width<=980px){.about-hero h1{font-size:44px}.about-grid{grid-template-columns:1fr}.about-card-highlight{grid-row:auto}.about-stack-section{grid-template-columns:1fr}.about-stack-text h2,.about-timeline-text h2,.about-cta h2{font-size:34px}}@media (width<=640px){.about-page{padding:56px 16px 72px}.about-hero h1{font-size:34px}.about-intro,.about-stack-text p,.about-cta p{font-size:17px}.about-card,.timeline-content{padding:20px}.about-card h2,.about-card h3{font-size:22px}.about-stack-text h2,.about-timeline-text h2,.about-cta h2{font-size:28px}}.projects-page{background:linear-gradient(#f5f5f5 0%,#ececec 100%);min-height:calc(100vh - 72px);padding:80px 20px 100px}.projects-hero,.projects-grid,.projects-cta{width:100%;max-width:1180px;margin:0 auto}.projects-hero{margin-bottom:54px}.projects-eyebrow{letter-spacing:2px;text-transform:uppercase;color:#8a8a8a;margin-bottom:16px;font-size:13px;font-weight:700;display:inline-block}.projects-hero h1,.projects-cta h2{letter-spacing:-2px;color:#111;max-width:920px;margin-bottom:22px;font-size:58px;line-height:1.02}.projects-intro,.projects-cta p{color:#5d5d5d;max-width:760px;font-size:19px;line-height:1.8}.projects-grid{grid-template-columns:1.2fr 1fr 1fr;gap:22px;margin-bottom:68px;display:grid}.project-card{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffffd1;border:1px solid #0000000f;border-radius:26px;padding:28px;transition:transform .25s,box-shadow .25s;box-shadow:0 18px 45px #0000000d}.project-card:hover{transform:translateY(-6px);box-shadow:0 24px 55px #00000014}.project-card-featured{color:#fff;background:linear-gradient(#111 0%,#1c1c1c 100%);grid-row:span 2}.project-card-top{justify-content:space-between;align-items:center;margin-bottom:18px;display:flex}.project-type,.project-year{letter-spacing:1.5px;text-transform:uppercase;color:#8c8c8c;font-size:12px;font-weight:700}.project-card-featured .project-type,.project-card-featured .project-year{color:#b4b4b4}.project-image{margin-bottom:22px}.project-image-screen{background:#f3f3f3;border:1px solid #0000000f;border-radius:20px;overflow:hidden;box-shadow:inset 0 1px #fffc}.project-card-featured .project-image-screen{background:#ffffff14;border-color:#ffffff14}.project-image-topbar{gap:8px;padding:14px 14px 0;display:flex}.project-image-topbar span{background:#00000026;border-radius:50%;width:10px;height:10px}.project-card-featured .project-image-topbar span{background:#ffffff38}.project-image-content{padding:18px 14px 16px}.mock-block,.mock-block-lg,.mock-line{background:#00000014;border-radius:12px}.project-card-featured .mock-block,.project-card-featured .mock-block-lg,.project-card-featured .mock-line{background:#ffffff29}.mock-block-lg{height:120px;margin-bottom:14px}.mock-row{grid-template-columns:1fr 1fr;gap:10px;margin-bottom:12px;display:grid}.mock-block{height:54px}.mock-line{height:14px}.mock-line.short{width:70%}.project-card h2,.project-card h3{color:inherit;margin-bottom:14px;font-size:30px;line-height:1.12}.project-card h2{font-size:28px}.project-card p{color:#666;margin-bottom:22px;font-size:16px;line-height:1.75}.project-card-featured p{color:#ffffffd1}.project-tags{flex-wrap:wrap;gap:10px;display:flex}.project-tags span{color:#222;background:#0000000d;border-radius:999px;padding:10px 14px;font-size:14px;font-weight:600}.project-card-featured .project-tags span{color:#fff;background:#ffffff1f}.project-actions{gap:14px;margin-top:24px;display:flex}.project-actions a{color:#111;background:#fff;border:1px solid #00000012;border-radius:999px;padding:12px 16px;font-size:14px;font-weight:700}.project-card-featured .project-actions a{background:#fffffff5}.projects-cta{text-align:center;max-width:900px}.projects-cta p{margin:0 auto}@media (width<=980px){.projects-hero h1,.projects-cta h2{font-size:44px}.projects-grid{grid-template-columns:1fr}.project-card-featured{grid-row:auto}}@media (width<=640px){.projects-page{padding:56px 16px 72px}.projects-hero h1,.projects-cta h2{font-size:34px}.projects-intro,.projects-cta p{font-size:17px}.project-card{padding:20px}.project-card h2,.project-card h3{font-size:22px}.project-actions{flex-direction:column}}.contact-page{background:#fff;min-height:calc(100vh - 72px);padding:72px 20px 96px}.contact-shell{width:100%;max-width:1220px;margin:0 auto}.contact-top{grid-template-columns:1.25fr .9fr;align-items:start;gap:48px;margin-bottom:52px;display:grid}.contact-kicker{letter-spacing:2px;text-transform:uppercase;color:#8e8e8e;margin-bottom:16px;font-size:12px;font-weight:700;display:inline-block}.contact-heading h1{letter-spacing:-3px;color:#111;font-size:72px;font-weight:900;line-height:.96}.contact-copy{padding-top:34px}.contact-copy p{color:#616161;max-width:420px;margin-bottom:22px;font-size:18px;line-height:1.8}.contact-mini-links{flex-direction:column;gap:10px;display:flex}.contact-mini-links a{color:#181818;border-bottom:1px solid #0000001f;width:fit-content;padding-bottom:2px;font-size:15px;transition:opacity .2s}.contact-mini-links a:hover{opacity:.65}.contact-main{grid-template-columns:.95fr 1.05fr;align-items:stretch;gap:42px;display:grid}.contact-portrait{background:linear-gradient(#f5f5f5 0%,#ececec 100%);border-radius:34px;justify-content:center;align-items:end;min-height:680px;display:flex;position:relative;overflow:hidden}.contact-portrait-bg{z-index:1;background:radial-gradient(circle at 20% 20%,#ff89502e,#0000 30%),radial-gradient(circle at 70% 75%,#4ac2ff29,#0000 28%),linear-gradient(#fff9,#fff0);position:absolute;inset:0}.contact-portrait img{z-index:2;object-fit:cover;object-position:center top;width:100%;max-width:520px;height:100%;position:relative}.contact-form{background:#fafafa;border:1px solid #0000000f;border-radius:34px;flex-direction:column;justify-content:center;padding:34px;display:flex;box-shadow:0 18px 50px #0000000d}.contact-form-header{margin-bottom:26px}.contact-form-label{letter-spacing:1.8px;text-transform:uppercase;color:#8f8f8f;margin-bottom:10px;font-size:12px;font-weight:700;display:inline-block}.contact-form-header p{color:#666;max-width:520px;font-size:16px;line-height:1.75}.field-grid{grid-template-columns:1fr 1fr;gap:16px;display:grid}.field{flex-direction:column;margin-bottom:16px;display:flex}.field label{color:#181818;margin-bottom:8px;font-size:14px;font-weight:600}.field input,.field textarea{color:#111;background:#fff;border:1px solid #0000;border-radius:18px;width:100%;padding:16px 18px;font-size:15px;transition:border-color .2s,transform .2s}.field input::placeholder,.field textarea::placeholder{color:#999}.field input:focus,.field textarea:focus{border-color:#111;outline:none;transform:translateY(-1px)}.contact-actions{align-items:center;gap:16px;margin-top:10px;display:flex}.contact-actions button{color:#fff;cursor:pointer;background:#111;border:none;border-radius:999px;padding:15px 24px;font-size:15px;font-weight:700;transition:transform .2s,opacity .2s}.contact-actions button:hover{opacity:.92;transform:translateY(-2px)}.contact-actions span{color:#7a7a7a;font-size:14px}@media (width<=980px){.contact-top,.contact-main{grid-template-columns:1fr}.contact-heading h1{letter-spacing:-2px;font-size:48px}.contact-copy{padding-top:0}.contact-portrait{min-height:420px}}@media (width<=640px){.contact-page{padding:56px 16px 72px}.contact-heading h1{font-size:38px}.field-grid{grid-template-columns:1fr}.contact-form{border-radius:24px;padding:22px}.contact-portrait{border-radius:24px}.contact-actions{flex-direction:column;align-items:flex-start}}
