@import"https://fonts.googleapis.com/css2?family=IBM+Plex+Sans:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500;600&display=swap";:root{--background:#0f172a;--foreground:#f1f5f9;--card:#1e293b;--muted:#cbd5e1;--primary:#0ea5e9;--accent:#06b6d4;--border:#334155;--radius:.5rem}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:320px;background:var(--background);color:var(--foreground);font-family:IBM Plex Sans,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}a{color:inherit;text-decoration:none}a,button{transition:all .2s ease-out}a:focus-visible,button:focus-visible{outline:2px solid var(--primary);outline-offset:3px}h1,h2,h3,p{margin-top:0}h1,h2,h3{letter-spacing:-.02em}h1{font-size:clamp(3rem,7vw,5.25rem);line-height:1.03;margin-bottom:2rem}h2{font-size:clamp(2.25rem,5vw,3.75rem);line-height:1.1;margin-bottom:2rem}h3{font-size:clamp(1.4rem,3vw,2rem)}.container{width:100%;max-width:1280px;margin:0 auto;padding-left:1rem;padding-right:1rem}@media(min-width:640px){.container{padding-left:1.5rem;padding-right:1.5rem}}@media(min-width:1024px){.container{padding-left:2rem;padding-right:2rem}}.site-shell{min-height:100vh;background:var(--background)}.site-nav{border-bottom:1px solid var(--border);background:#0f172ad1;backdrop-filter:blur(16px);position:relative;z-index:10}.sticky-nav{position:sticky;top:0}.nav-inner{min-height:4rem;display:flex;align-items:center;justify-content:space-between;gap:2rem}.brand{font-size:1.2rem;font-weight:700;color:var(--primary)}.nav-links{display:flex;gap:clamp(1rem,3vw,2.25rem);font-size:.9rem}.nav-links a:hover{color:var(--primary)}.back-link{color:var(--primary);display:inline-flex;align-items:center;gap:.5rem}.back-link:hover{color:var(--accent)}.section{padding:5rem 0;border-top:1px solid var(--border)}@media(min-width:768px){.section{padding:8rem 0}}.hero{min-height:100vh;padding-top:5rem;display:flex;align-items:center;position:relative;border-top:0}.section-image{position:relative;background-size:cover;background-position:center;background-attachment:fixed}.hero-image{background-image:url(/assets/hero-background.png)}.portfolio-image{background-image:url(/assets/portfolio-accent-pattern.png)}.skills-image{background-image:url(/assets/skills-background.png)}.overlay{position:absolute;inset:0;pointer-events:none}.overlay-hero{background:linear-gradient(90deg,#0f172afa,#0f172ad1 52%,#0f172a47)}.overlay-section{background:#0f172af0}.content-layer{position:relative;z-index:1}.hero-grid{display:grid;grid-template-columns:1fr;gap:3rem;align-items:center}@media(min-width:1024px){.hero-grid{grid-template-columns:1fr 1fr;gap:3rem}}.hero-copy{max-width:44rem}.eyebrow{color:var(--accent);font-family:JetBrains Mono,monospace;text-transform:uppercase;letter-spacing:.18em;font-size:.78rem;margin-bottom:1rem}.lead{color:var(--muted);font-size:1.08rem;line-height:1.75}.hero-copy .lead{max-width:38rem}.button-row{display:flex;flex-wrap:wrap;gap:1rem;margin-top:2rem}.button{display:inline-flex;align-items:center;justify-content:center;gap:.55rem;padding:.8rem 1.25rem;border-radius:.55rem;font-weight:600;border:1px solid transparent}.button:hover{transform:translateY(-2px)}.button-primary{background:var(--primary);color:#f0f9ff}.button-primary:hover{background:#0284c7}.button-outline{border-color:var(--border);color:var(--foreground)}.button-outline:hover{border-color:var(--primary);background:#1e293bb3}.button.small{padding:.65rem .9rem;font-size:.9rem;flex:1}.hero-portrait-wrap{display:flex;justify-content:flex-end;align-items:center}.hero-portrait{width:min(30rem,80vw);aspect-ratio:1;object-fit:contain;filter:drop-shadow(0 20px 36px rgba(0,0,0,.35))}.stats-strip{padding:4rem 0;background:#1e293b80;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.stats-grid{display:grid;grid-template-columns:1fr;gap:2rem}@media(min-width:768px){.stats-grid{grid-template-columns:repeat(3,1fr)}}.stat{text-align:center}.stat strong{display:block;color:var(--primary);font-size:clamp(2.5rem,5vw,3.5rem);margin-bottom:.4rem}.stat span{display:block;color:var(--muted);font-family:JetBrains Mono,monospace;font-size:.75rem;letter-spacing:.15em;text-transform:uppercase}.narrow-content{max-width:900px;text-align:left}.section-about .lead+.lead{margin-top:1.5rem}.section-heading{margin-bottom:4rem}.section-heading h2{margin-bottom:0}.project-list{display:grid;gap:5rem}.feature-project{display:grid;grid-template-columns:1fr;gap:3rem;align-items:center}@media(min-width:1024px){.feature-project{grid-template-columns:1fr 1fr}.feature-project.reverse .project-copy{grid-column:2}.feature-project.reverse .project-image-frame{grid-column:1;grid-row:1}}.project-subtitle{color:var(--accent);font-weight:600}.body-copy{color:var(--muted);line-height:1.75}.skillset{margin:2rem 0}.skillset strong{display:block;margin-bottom:.75rem}.tag-list{display:flex;flex-wrap:wrap;gap:.5rem}.tag-list span{font-family:JetBrains Mono,monospace;font-size:.72rem;color:var(--muted);background:var(--card);border:1px solid var(--border);padding:.4rem .65rem;border-radius:.35rem}.project-image-frame{height:24rem;overflow:hidden;border:1px solid var(--border);border-radius:.65rem;background:var(--card)}.project-image-frame img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease-out}.project-image-frame:hover img{transform:scale(1.05)}.center-action{display:flex;justify-content:center;margin-top:4rem}.testimonial-card,.skill-card,.project-card,.result-card{background:var(--card);border:1px solid var(--border);border-radius:.65rem}.testimonial-card{max-width:50rem;padding:2rem}@media(min-width:768px){.testimonial-card{padding:3rem}}.testimonial-copy{color:var(--muted);font-size:1.12rem;font-style:italic;line-height:1.75;margin-bottom:2rem}.person{display:flex;align-items:center;gap:1rem}.person img{width:3rem;height:3rem;border-radius:50%;object-fit:cover}.person strong,.person span{display:block}.person span{color:var(--muted);font-size:.9rem;margin-top:.2rem}.skills-grid{display:grid;grid-template-columns:1fr;gap:2rem}@media(min-width:768px){.skills-grid{grid-template-columns:repeat(3,1fr)}}.skill-card{padding:1.5rem}.skill-card:hover{border-color:var(--primary)}.skill-card h3{font-size:1.2rem;margin-bottom:1rem}.skill-card ul{margin:0;padding:0;list-style:none;display:grid;gap:.7rem;color:var(--muted)}.skill-card li:before{content:"•";color:var(--primary);margin-right:.7rem}.contact-inner{max-width:780px;margin:0 auto;text-align:center}.contact-inner h2{margin-bottom:1.5rem}.centered{justify-content:center}.social-links{display:flex;justify-content:center;gap:1rem;margin-top:2rem}.social-links a{width:2.5rem;height:2.5rem;border:1px solid var(--border);border-radius:.55rem;display:flex;align-items:center;justify-content:center;color:var(--muted);font-weight:600;font-size:.9rem}.social-links a:hover{color:var(--primary);border-color:var(--primary);background:var(--card)}.site-footer{border-top:1px solid var(--border);background:#1e293b80;padding:3rem 0}.footer-inner{display:flex;flex-direction:column;align-items:center;justify-content:space-between;gap:2rem}@media(min-width:768px){.footer-inner{flex-direction:row}}.footer-inner strong,.footer-inner span{display:block}.footer-inner strong{color:var(--primary);font-size:1.1rem}.footer-inner span,.footer-inner p{color:var(--muted);font-size:.85rem}.footer-inner p{margin:0}.page-content{padding-top:5rem;padding-bottom:5rem}.page-intro{max-width:800px;margin-bottom:4rem}.page-intro h1{margin-bottom:1.5rem}.projects-grid{display:grid;grid-template-columns:1fr;gap:2rem}@media(min-width:768px){.projects-grid{grid-template-columns:repeat(2,1fr)}}@media(min-width:1100px){.projects-grid{grid-template-columns:repeat(3,1fr)}}.project-card{overflow:hidden;transition:transform .25s ease-out,border-color .25s ease-out,box-shadow .25s ease-out}.project-card:hover{transform:translateY(-4px);border-color:#0ea5e999;box-shadow:0 18px 40px #0000002e}.card-image{height:16rem;overflow:hidden;background:#0b1220}.card-image img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease-out}.project-card:hover .card-image img{transform:scale(1.08)}.card-content{padding:1.5rem}.card-content h2{font-size:1.45rem;margin-bottom:.4rem}.clamp{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;margin-bottom:1.5rem}.card-actions{display:flex;gap:.75rem}.closing-cta{text-align:center;border-top:1px solid var(--border);margin-top:5rem;padding:5rem 0 1rem}.closing-cta .lead{max-width:680px;margin:0 auto}.case-study{padding-top:5rem;padding-bottom:5rem}.case-hero{display:grid;grid-template-columns:1fr;gap:3rem;align-items:start;margin-bottom:5rem}@media(min-width:900px){.case-hero{grid-template-columns:1fr 1fr;align-items:center}}.case-hero h1{margin-bottom:1.5rem}.case-image{overflow:hidden;border:1px solid var(--border);border-radius:.65rem;background:var(--card)}.case-image img{display:block;width:100%;height:auto;object-fit:cover}.case-section{margin-bottom:5rem}.case-section h2{color:var(--primary)}.rule-section{padding:3rem 0;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.swatches{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;max-width:42rem}@media(min-width:700px){.swatches{grid-template-columns:repeat(5,1fr)}}.swatch-color{height:6rem;border-radius:.55rem;border:1px solid var(--border);margin-bottom:.7rem}.swatch strong,.swatch span{display:block}.swatch strong{font-size:.85rem}.swatch span{color:var(--muted);font-size:.75rem;margin-top:.25rem}.type-samples{display:grid;gap:2rem}.type-samples>div{display:grid;gap:.35rem}.type-samples span{color:var(--muted);font-size:.9rem}.type-display{font-size:clamp(2.5rem,5vw,4rem)}.type-sub{font-size:2rem}.type-body{font-size:1.2rem}.result-card{padding:2rem}.metrics{display:grid;grid-template-columns:1fr;gap:1.5rem;margin-top:2rem}@media(min-width:700px){.metrics{grid-template-columns:repeat(3,1fr)}}.metrics strong,.metrics span{display:block}.metrics strong{font-size:2.6rem;color:var(--primary);margin-bottom:.3rem}.metrics span{color:var(--muted)}.not-found{min-height:100vh;display:grid;place-items:center;text-align:center;padding:2rem}@media(max-width:767px){.nav-links{gap:1rem;font-size:.78rem}.hero{min-height:auto;padding:8rem 0 5rem}.hero-portrait-wrap{justify-content:center}.hero-portrait{width:min(22rem,85vw)}.card-actions{flex-direction:column}.swatches{grid-template-columns:repeat(2,1fr)}.footer-inner div{text-align:center}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}
