:root{--ink:#0b0f14;--navy:#101827;--slate:#344054;--slate-2:#5a6776;--mist:#f5f7fa;--paper:#fff;--blue:#2563eb;--soft-blue:#eaf1ff;--line:#d0d5dd;--font-display:"Inter Tight", "Inter", system-ui, sans-serif;--font-body:"Inter", system-ui, sans-serif;--font-mono:"JetBrains Mono", ui-monospace, monospace;--radius-lg:32px;--radius-md:24px;--radius-sm:16px;--radius-pill:999px}*{box-sizing:border-box}html,body{scroll-behavior:smooth;margin:0;padding:0}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}body{background:var(--mist);color:var(--ink);font-family:var(--font-body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:16px;line-height:1.55}a{color:inherit;text-decoration:none}button{cursor:pointer;background:0 0;border:0;font-family:inherit}img{max-width:100%;display:block}input,textarea,select{font-family:inherit;font-size:16px}.container{max-width:1200px;margin:0 auto;padding:24px}.kicker{font-family:var(--font-mono);color:var(--blue);text-transform:uppercase;letter-spacing:.14em;font-size:12px;font-weight:500}.h-display{font-family:var(--font-display);letter-spacing:-.04em;color:var(--ink);font-weight:800;line-height:.98}.btn{background:var(--ink);color:var(--paper);border-radius:var(--radius-pill);align-items:center;gap:10px;padding:14px 22px;font-size:15px;font-weight:700;transition:transform .15s,background .15s;display:inline-flex}.btn:hover{background:var(--blue);transform:translateY(-1px)}.btn-ghost{color:var(--ink);border:1px solid var(--line);background:0 0}.btn-ghost:hover{background:var(--paper);border-color:var(--ink)}.nav{justify-content:space-between;align-items:center;padding:24px 0 8px;display:flex}.brand-lockup{letter-spacing:-.03em;align-items:center;gap:12px;font-size:22px;font-weight:800;display:flex}.brand-mark{background:var(--ink);color:#fff;width:40px;height:40px;font-family:var(--font-display);border-radius:12px;place-items:center;font-size:20px;font-weight:850;display:grid}.nav-links{align-items:center;gap:28px;display:flex}.nav-links a{color:var(--slate);font-size:15px;font-weight:500}.nav-links a:hover{color:var(--ink)}@media (max-width:720px){.nav-links a:not(.btn){display:none}}.hero{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-lg);isolation:isolate;margin-top:24px;padding:clamp(40px,7vw,112px);position:relative;overflow:hidden}.hero-spotlight{pointer-events:none;z-index:-1;border-radius:var(--radius-lg);transition:background 80ms linear;position:absolute;inset:0}.hero-headline{font-family:var(--font-display);letter-spacing:-.015em;word-spacing:.02em;max-width:16ch;color:var(--ink);margin:20px 0 24px;font-size:clamp(40px,7vw,88px);font-weight:700;line-height:1.02}.hero-sub{color:var(--slate);max-width:60ch;margin:0 0 32px;font-size:clamp(17px,1.4vw,20px)}.hero-ctas{flex-wrap:wrap;gap:12px;display:flex}.hero-meta{color:var(--slate-2);font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.12em;flex-wrap:wrap;gap:24px;margin-top:40px;font-size:12px;display:flex}section{padding:72px 0 0}.section-head{flex-direction:column;gap:12px;max-width:720px;margin-bottom:36px;display:flex}.section-head h2{font-family:var(--font-display);letter-spacing:-.02em;margin:0;font-size:clamp(28px,4vw,48px);font-weight:700;line-height:1.05}.section-head p{color:var(--slate);max-width:56ch;margin:0;font-size:18px}.services{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}@media (max-width:980px){.services{grid-template-columns:repeat(2,1fr)}}@media (max-width:640px){.services{grid-template-columns:1fr}}.service-card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-md);padding:28px;transition:transform .2s,border-color .2s}.service-card:hover{border-color:var(--ink);transform:translateY(-2px)}.service-num{font-family:var(--font-mono);color:var(--blue);letter-spacing:.12em;font-size:12px}.service-card h3{font-family:var(--font-display);letter-spacing:-.02em;margin:14px 0 10px;font-size:22px;font-weight:700}.service-card p{color:var(--slate);margin:0 0 14px;font-size:15px}.service-card ul{color:var(--slate-2);margin:0;padding-left:18px;font-size:14px}.service-card ul li{margin-bottom:4px}.process-grid{grid-template-columns:repeat(4,1fr);gap:16px;display:grid}@media (max-width:980px){.process-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:600px){.process-grid{grid-template-columns:1fr}}.process-card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-md);padding:28px;transition:transform .35s cubic-bezier(.2,.7,.2,1),border-color .25s}.process-card:hover{border-color:var(--ink);transform:translateY(-2px)}.process-num{font-family:var(--font-mono);color:var(--blue);letter-spacing:.12em;font-size:12px}.process-card h3{font-family:var(--font-display);letter-spacing:-.015em;margin:14px 0 10px;font-size:20px;font-weight:700}.process-card p{color:var(--slate);margin:0;font-size:15px;line-height:1.55}.faq-list{flex-direction:column;gap:10px;max-width:880px;display:flex}.faq-item{background:var(--paper);border:1px solid var(--line);border-radius:18px;padding:0;transition:border-color .2s}.faq-item[open]{border-color:var(--ink)}.faq-item summary{cursor:pointer;font-family:var(--font-display);letter-spacing:-.01em;color:var(--ink);justify-content:space-between;align-items:center;gap:16px;padding:22px 26px;font-size:17px;font-weight:600;list-style:none;display:flex}.faq-item summary::-webkit-details-marker{display:none}.faq-icon{font-family:var(--font-mono);color:var(--slate-2);font-size:22px;font-weight:400;transition:transform .25s,color .2s}.faq-item[open] .faq-icon{color:var(--blue);transform:rotate(45deg)}.faq-item p{color:var(--slate);max-width:64ch;margin:0;padding:0 26px 24px;font-size:15px;line-height:1.65}.pricing-grid{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}@media (max-width:900px){.pricing-grid{grid-template-columns:1fr}}.pricing-card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-md);flex-direction:column;gap:8px;padding:28px;display:flex}.pricing-range{font-family:var(--font-display);letter-spacing:-.03em;color:var(--ink);margin:8px 0 4px;font-size:38px;font-weight:800;line-height:1}.pricing-card p{color:var(--slate);margin:0;font-size:15px}.pricing-note{color:var(--slate-2);text-align:center;margin-top:20px;font-size:14px}.pricing-custom{background:var(--ink);color:#fff;border-radius:var(--radius-md);justify-content:space-between;align-items:center;gap:24px;margin-top:24px;padding:32px;display:flex}.pricing-custom .kicker{color:#9db4d9}.pricing-custom h3{font-family:var(--font-display);letter-spacing:-.02em;color:#fff;margin:6px 0 8px;font-size:26px}.pricing-custom p{color:#c8d2e1;max-width:620px;margin:0;font-size:15px}.pricing-custom .btn{color:var(--ink);white-space:nowrap;background:#fff}@media (max-width:720px){.pricing-custom{flex-direction:column;align-items:flex-start}}.project-kind{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.12em;border-radius:999px;padding:4px 10px;font-size:10px;font-weight:500;display:inline-block}.projects{grid-template-columns:repeat(2,1fr);gap:18px;display:grid}@media (max-width:820px){.projects{grid-template-columns:1fr}}.project{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-md);flex-direction:column;gap:14px;padding:28px;transition:border-color .2s;display:flex}.project:hover{border-color:var(--ink)}.project-featured{border-width:2px;border-color:#e5232e;padding:27px;position:relative;box-shadow:0 0 0 4px #e5232e14}.project-featured:before{content:"Flagship";color:#fff;font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;background:#e5232e;border-radius:999px;padding:4px 10px;font-size:10px;font-weight:600;position:absolute;top:-10px;left:20px}.project-featured:hover{border-color:#e5232e;box-shadow:0 0 0 5px #e5232e24}.project-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.project h3{font-family:var(--font-display);letter-spacing:-.025em;margin:0;font-size:26px;font-weight:800}.project-link{font-family:var(--font-mono);color:var(--blue);letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;font-size:12px}.project-link:hover{text-decoration:underline}.project p{color:var(--slate);margin:0;font-size:15px}.project-tools{flex-wrap:wrap;gap:6px;margin-top:4px;display:flex}.tool-chip{background:var(--soft-blue);color:var(--blue);font-family:var(--font-mono);border-radius:var(--radius-pill);letter-spacing:.04em;padding:5px 10px;font-size:11px;font-weight:500}.project-useful{border-top:1px dashed var(--line);color:var(--slate-2);margin-top:8px;padding-top:14px;font-size:14px}.project-useful strong{color:var(--ink);text-transform:uppercase;letter-spacing:.12em;font-size:12px;font-family:var(--font-mono);margin-bottom:4px;font-weight:500;display:block}.about{background:var(--ink);color:var(--mist);border-radius:var(--radius-lg);grid-template-columns:1fr 1fr;align-items:center;gap:32px;margin-top:24px;padding:clamp(32px,5vw,64px);display:grid}@media (max-width:820px){.about{grid-template-columns:1fr}}.about h2{font-family:var(--font-display);letter-spacing:-.03em;margin:0 0 16px;font-size:clamp(28px,3.6vw,44px);font-weight:800;line-height:1.05}.about p{color:#b8c0cc;margin:0;font-size:17px}.about-grid{grid-template-columns:repeat(2,1fr);gap:14px;display:grid}.about-stat{border-radius:var(--radius-md);background:#ffffff0a;border:1px solid #ffffff14;padding:22px}.about-stat span{font-family:var(--font-mono);color:#6e7c8e;text-transform:uppercase;letter-spacing:.14em;margin-bottom:8px;font-size:11px;display:block}.about-stat strong{font-family:var(--font-display);letter-spacing:-.02em;color:var(--mist);font-size:22px;font-weight:700}.form-shell{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-lg);margin-top:16px;padding:clamp(28px,4vw,56px)}.form-grid{grid-template-columns:repeat(2,1fr);gap:18px;display:grid}@media (max-width:720px){.form-grid{grid-template-columns:1fr}}.field{flex-direction:column;gap:8px;display:flex}.field.full{grid-column:1/-1}.field label{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.12em;color:var(--slate);font-size:11px;font-weight:500}.field input,.field select,.field textarea{border:1px solid var(--line);background:var(--mist);color:var(--ink);border-radius:14px;outline:none;padding:14px 16px;transition:border-color .15s,background .15s}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--ink);background:var(--paper)}.field textarea{resize:vertical;min-height:110px}.field-help{color:var(--slate-2);margin-top:-2px;font-size:13px}.checkbox-group{grid-template-columns:repeat(2,1fr);gap:8px;display:grid}@media (max-width:600px){.checkbox-group{grid-template-columns:1fr}}.check{background:var(--mist);border:1px solid var(--line);cursor:pointer;color:var(--slate);border-radius:12px;align-items:center;gap:10px;padding:12px 14px;font-size:14px;transition:all .15s;display:flex}.check:hover{border-color:var(--ink);color:var(--ink)}.check input[type=checkbox]{accent-color:var(--blue);width:16px;height:16px}.check input[type=checkbox]:checked+span{color:var(--ink);font-weight:600}.form-submit{flex-wrap:wrap;align-items:center;gap:14px;margin-top:24px;display:flex}.form-note{color:var(--slate-2);font-size:13px}.form-success{background:var(--soft-blue);border:1px solid var(--blue);color:var(--ink);border-radius:var(--radius-md);margin-top:24px;padding:20px 22px;font-size:15px}.form-error{color:#7f1d1d;border-radius:var(--radius-md);background:#fef2f2;border:1px solid #dc2626;margin-top:24px;padding:16px 20px;font-size:14px}@keyframes fade-up{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes gradient-pan{0%{background-position:0%}to{background-position:200%}}@keyframes aurora{to{transform:rotate(360deg)}}@keyframes float-slow{0%,to{transform:translate(0)}50%{transform:translate(-20px,-30px)}}@keyframes marquee-scroll{0%{transform:translate(0)}to{transform:translate(-50%)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.reveal{opacity:0;will-change:opacity, transform;transition:opacity .9s cubic-bezier(.2,.7,.2,1),transform .9s cubic-bezier(.2,.7,.2,1);transform:translateY(28px)}.reveal.is-visible{opacity:1;transform:translateY(0)}@media (prefers-reduced-motion:reduce){.reveal{opacity:1;transition:none;transform:none}}.hero .kicker,.hero .hero-headline,.hero .hero-sub,.hero .hero-ctas,.hero .hero-meta{opacity:0;animation:.9s cubic-bezier(.2,.7,.2,1) forwards fade-up}.hero .kicker{animation-delay:50ms}.hero .hero-headline{animation-delay:.15s}.hero .hero-sub{animation-delay:.35s}.hero .hero-ctas{animation-delay:.5s}.hero .hero-meta{animation-delay:.65s}@media (prefers-reduced-motion:reduce){.hero .kicker,.hero .hero-headline,.hero .hero-sub,.hero .hero-ctas,.hero .hero-meta{opacity:1;animation:none}}.tilt{transform-style:preserve-3d;will-change:transform;transition:transform .35s cubic-bezier(.2,.7,.2,1);position:relative}.tilt>*{transform-style:preserve-3d}.service-card,.project,.pricing-card{transition:transform .35s cubic-bezier(.2,.7,.2,1),border-color .25s}.service-card:hover,.project:hover,.pricing-card:hover{border-color:var(--ink);transform:translateY(-2px)}.hero-meta span{padding-left:14px;position:relative}.hero-meta span:before{content:"";background:var(--line);border-radius:50%;width:4px;height:4px;margin-top:-2px;position:absolute;top:50%;left:0}.section-head h2{display:inline-block;position:relative}footer{border-top:1px solid var(--line);color:var(--slate-2);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin:88px 0 32px;padding-top:32px;font-size:14px;display:flex}footer a{color:var(--slate)}footer a:hover{color:var(--ink)}
