@import"https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@300;400;500;600;700&family=IBM+Plex+Mono:wght@300;400;500&display=swap";*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--coral: #FF5841;--charcoal: #242424;--charcoal-light: #242424e8;--stone: #B9B9B9;--stone-light: #E8E4DF;--white: #F0EDE8;--mono: "IBM Plex Mono", monospace;--sans: "Space Grotesk", sans-serif}html{scroll-behavior:smooth}body{font-family:var(--sans);background:var(--charcoal);color:var(--white);overflow-x:hidden}::selection{background:var(--coral);color:var(--charcoal)}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:var(--charcoal)}::-webkit-scrollbar-thumb{background:var(--stone)}body:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999;pointer-events:none;opacity:.03;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)'/%3E%3C/svg%3E")}#cursor-dot{position:fixed;pointer-events:none;z-index:99999;width:10px;height:10px;border-radius:50%;background:#fff;mix-blend-mode:difference;transform:translate(-50%,-50%);transition:width .3s cubic-bezier(.34,1.56,.64,1),height .3s cubic-bezier(.34,1.56,.64,1);will-change:left,top,width,height}#cursor-dot.hovered{width:70px;height:70px}.display-huge{font-size:clamp(42px,9vw,180px);font-weight:700;line-height:.9;letter-spacing:-.03em;font-family:var(--sans)}.display-large{font-size:clamp(32px,5.5vw,100px);font-weight:700;line-height:.92;letter-spacing:-.03em}.display-medium{font-size:clamp(22px,3.5vw,56px);font-weight:600;line-height:1.05;letter-spacing:-.02em}.mono-label{font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase}.body-text{font-size:clamp(13px,1.4vw,16px);line-height:1.65;font-weight:400;opacity:.75}.reveal{opacity:0;transform:translateY(40px);transition:opacity .7s cubic-bezier(.16,1,.3,1),transform .7s cubic-bezier(.16,1,.3,1)}.reveal.visible{opacity:1;transform:translateY(0)}.hover-line{position:relative}.hover-line:after{content:"";position:absolute;bottom:0;left:0;width:0;height:1px;background:var(--coral);transition:width .3s cubic-bezier(.16,1,.3,1)}.hover-line:hover:after{width:100%}.grid-overlay{background-image:linear-gradient(rgba(232,80,58,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(232,80,58,.05) 1px,transparent 1px);background-size:60px 60px}nav{position:fixed;top:0;left:0;right:0;z-index:1000}.section-coral{background:var(--coral);color:var(--charcoal)}.section-stone{background:var(--stone-light);color:var(--charcoal)}.section-dark{background:var(--charcoal);color:var(--white)}.section-darker{background:#141414;color:var(--white)}.tag{font-family:var(--mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;padding:4px 10px;border:1px solid currentColor;opacity:.6}.btn-primary,.btn-outline,.nav-span,.menu-item,.clickable{-webkit-tap-highlight-color:transparent;outline:none!important;-webkit-user-select:none;user-select:none}.btn-primary{display:inline-flex;align-items:center;gap:10px;font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;padding:14px 28px;background:var(--coral);color:var(--charcoal);border:none;cursor:pointer;font-weight:500;transition:all .2s}.btn-primary:hover{background:var(--white)}.btn-outline{display:inline-flex;align-items:center;gap:10px;font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;padding:14px 28px;background:transparent;color:currentColor;border:1px solid currentColor;cursor:pointer;transition:all .2s}.btn-outline:hover{background:var(--coral);border-color:var(--coral);color:var(--charcoal)}.menu-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:999;background:var(--stone-light);color:var(--charcoal);transform:translate(100%);transition:transform .5s cubic-bezier(.16,1,.3,1)}.menu-overlay.open{transform:translate(0)}.project-card{border-top:1px solid #525151;transition:all .6s;cursor:pointer}.project-card:hover{background:#b9b9b95e}.project-card:hover .project-num{color:var(--coral)}.img-placeholder{background:var(--charcoal-light);display:flex;align-items:center;justify-content:center;overflow:hidden;position:relative}.img-placeholder:before{content:attr(data-label);font-family:var(--mono);font-size:10px;letter-spacing:.15em;text-transform:uppercase;opacity:.3;position:absolute}.img-placeholder:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(135deg,rgba(232,80,58,.1) 0%,transparent 60%)}.status-dot{width:6px;height:6px;border-radius:50%;background:#4ade80;display:inline-block;animation:pulse 2s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.3}}.ticker-wrap{overflow:hidden;white-space:nowrap;border-top:1px solid rgba(212,207,200,.15);border-bottom:1px solid rgba(212,207,200,.15)}.ticker-inner{display:inline-flex;animation:ticker 20s linear infinite}@keyframes ticker{0%{transform:translate(0)}to{transform:translate(-50%)}}input,textarea{background:transparent;border:none;border-bottom:1px solid rgba(212,207,200,.3);padding:16px 0;color:var(--white);font-family:var(--sans);font-size:16px;width:100%;outline:none;transition:border-color .2s}input:focus,textarea:focus{border-color:var(--coral)}input::placeholder,textarea::placeholder{opacity:.3;font-family:var(--mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase}.skill-bar{height:1px;background:#d4cfc826;position:relative;overflow:hidden}.skill-bar-fill{position:absolute;top:0;left:0;height:100%;background:var(--coral);transition:width 1.2s cubic-bezier(.16,1,.3,1);width:0}.code-block{font-family:var(--mono);font-size:12px;line-height:1.8;color:var(--stone);opacity:.8}@media (max-width: 1024px){.hero-grid{grid-template-columns:1fr!important}.hero-right-panel{display:none!important}.two-col{grid-template-columns:1fr!important;gap:48px!important}.three-col,.four-col{grid-template-columns:1fr 1fr!important}.project-row{grid-template-columns:60px 1fr!important}.project-row-meta{display:none!important}.footer-grid{grid-template-columns:1fr 1fr!important}.case-study-grid,.featured-post-grid,.contact-grid{grid-template-columns:1fr!important}}@media (max-width: 768px){.display-huge{font-size:clamp(38px,11vw,72px)!important}.display-large{font-size:clamp(28px,8vw,56px)!important}.display-medium{font-size:clamp(20px,5.5vw,36px)!important}.three-col,.four-col,.blog-grid,.contact-grid,.footer-grid{grid-template-columns:1fr!important}.nav-desktop{display:none!important}.hero-stats{gap:24px!important;flex-wrap:wrap}.hero-ctas{flex-wrap:wrap}.section-pad{padding-left:20px!important;padding-right:20px!important}.filter-bar{gap:6px!important;flex-wrap:wrap}.btn-primary,.btn-outline{padding:12px 20px!important;font-size:10px!important}}@media (max-width: 480px){.display-huge{font-size:clamp(34px,10vw,56px)!important}.three-col,.featured-post-grid{grid-template-columns:1fr!important}}html.lenis,html.lenis body{height:auto}.lenis.lenis-smooth{scroll-behavior:auto}
