﻿@import url("https://use.typekit.net/orr0otw.css");html{scroll-behavior:smooth}body{margin:0;background:#faf9f6;color:#292d2c;font-family:"aileron",Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}code{color:#426c73}hr{color:#e7e5e0;opacity:1}h2{font-size:1.2rem;font-weight:600;letter-spacing:.1em;margin:0;text-transform:uppercase}.muted{color:#747a78}.text-balance{text-wrap:balance}.site-width{max-width:1600px;padding-left:clamp(20px, 4vw, 72px);padding-right:clamp(20px, 4vw, 72px)}.skip-link{position:absolute;z-index:100;background:white}.btn-primary{--bs-btn-color: #faf9f6;--bs-btn-bg: #426c73;--bs-btn-border-color: #426c73;--bs-btn-hover-color: #faf9f6;--bs-btn-hover-bg: #292d2c;--bs-btn-hover-border-color: #292d2c;--bs-btn-active-color: #faf9f6;--bs-btn-active-bg: #292d2c;--bs-btn-active-border-color: #292d2c;--bs-btn-border-radius: 0;--bs-btn-padding-x: 2rem;--bs-btn-padding-y: 1rem}.btn-outline-primary{--bs-btn-color: #426c73;--bs-btn-bg: transparent;--bs-btn-border-color: #426c73;--bs-btn-hover-color: #faf9f6;--bs-btn-hover-bg: #426c73;--bs-btn-hover-border-color: #426c73;--bs-btn-active-color: #faf9f6;--bs-btn-active-bg: #292d2c;--bs-btn-active-border-color: #292d2c;--bs-btn-border-radius: 0;--bs-btn-padding-x: 2rem;--bs-btn-padding-y: 1rem}.site-header{padding:28px 0}.site-header nav{display:flex;gap:30px}.site-header nav a{text-decoration:none;font-size:.86rem}.site-header nav a:hover,.site-header nav a:focus-visible{color:#426c73}@media (max-width: 575.98px){.site-header{padding:22px 0}}.brand{text-decoration:none;font-weight:700;letter-spacing:.1em;font-size:1.45rem;text-transform:uppercase}.brand-dot{color:#426c73}.hero{position:relative;padding-top:clamp(65px, 10vw, 160px);padding-bottom:clamp(75px, 10vw, 155px)}.hero h1{font-size:clamp(2.5rem, 5vw, 5.4rem);line-height:1.06;letter-spacing:-.065em;font-weight:600;margin:0}.hero h1 span:not(.brand-dot){font-weight:200;font-size:clamp(4.5rem, 7vw, 7rem);color:#426c73;font-family:"Courier New", monospace}.hero .hero-copy{color:#747a78;font-size:clamp(1rem, 1.4vw, 1.2rem);line-height:1.7;margin:30px 0 0}.hero .hero-arrow{position:absolute;top:5%;right:8%;width:40px;height:90%;color:#426c73;text-decoration:none}.hero .hero-arrow svg{display:block;width:100%;height:100%}.hero .hero-arrow svg path{fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}.hero .hero-arrow svg .arrow-line{stroke-dasharray:700;stroke-dashoffset:400;animation:hero-arrow-draw 2s ease-in-out 3s both}.hero .hero-arrow svg .arrow-head{opacity:0;animation:hero-arrow-head .4s ease 4.5s forwards}.hero .hero-arrow:hover,.hero .hero-arrow:focus-visible{color:#292d2c}@media (max-width: 575.98px){.hero{padding-top:70px;padding-bottom:85px}}@keyframes hero-arrow-draw{from{stroke-dashoffset:700}to{stroke-dashoffset:0}}@keyframes hero-arrow-head{to{opacity:1}}@media (prefers-reduced-motion: reduce){.hero .hero-arrow .arrow-line{animation:none;stroke-dashoffset:0}.hero .hero-arrow .arrow-head{animation:none;opacity:1}}.eyebrow{text-transform:uppercase;letter-spacing:.18em;color:#747a78;font-size:.7rem;margin-bottom:24px}.work{padding-bottom:110px}.work-top{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:18px 32px;padding-bottom:28px}.filters{display:flex;flex-wrap:wrap;gap:8px 22px}@media (max-width: 575.98px){.filters{gap:12px 16px}}.filter-btn{appearance:none;border:0;border-bottom:1px solid transparent;padding:0 0 5px;background:none;color:#747a78;font-size:.85rem;transition:color .2s, border-color .2s}.filter-btn:hover,.filter-btn:focus-visible,.filter-btn.active{color:#292d2c;border-color:#426c73}.portfolio-grid{margin:0 -4px}@media (max-width: 575.98px){.portfolio-grid{margin:0 -7px}}.grid-sizer{height:0}.portfolio-item{padding:0 4px 8px}@media (max-width: 575.98px){.portfolio-item{padding:0 7px 14px}}.project-card{position:relative;overflow:hidden;background:#e4e3df;outline-offset:3px}.project-card img{display:block;width:100%;height:auto;transition:transform .6s ease}.project-card:hover img,.project-card:focus-visible img{transform:scale(1.035)}.project-card:hover .project-overlay,.project-card:focus-visible .project-overlay{opacity:1}.project-card:hover .project-overlay>div,.project-card:focus-visible .project-overlay>div{transform:none}.project-overlay{position:absolute;inset:0;display:flex;align-items:flex-end;padding:clamp(18px, 2.5vw, 30px);background:linear-gradient(transparent 30%, rgba(0,0,0,0.73));color:#fff;opacity:0;transition:opacity .3s ease}.project-overlay>div{transform:translateY(10px);transition:transform .3s ease}.project-overlay h3{font-size:clamp(1.15rem, 2vw, 1.65rem);font-weight:600;letter-spacing:-.03em;margin:0 0 4px}.project-overlay h6{font-size:.8rem;text-transform:uppercase;letter-spacing:.1em;margin:.5rem 0 1.5rem}.project-overlay p{font-size:.85rem;margin:0;opacity:.85}@media (hover: none){.project-overlay{opacity:1}.project-overlay>div{transform:none}}.hello{font-weight:300}.portrait-crop{position:relative;margin:0}.portrait-crop-image{position:relative;overflow:hidden;aspect-ratio:1 / 1}.portrait-crop-image img{display:block;width:100%;height:100%;object-fit:cover;object-position:right}.portrait-crop-image::after{content:"";position:absolute;top:0;left:0;width:100%;height:20%;pointer-events:none;background-image:radial-gradient(rgba(250,249,246,0.85) 1px, transparent 1px);background-size:5px 5px}.portrait-crop figcaption{position:absolute;top:0;right:-22px;writing-mode:vertical-rl;font-size:.65rem;letter-spacing:.15em;color:#747a78}@media (max-width: 991.98px){.portrait-crop{margin-right:22px}}.cv .lead{font-size:1.25rem;font-weight:300}.cv .company{font-weight:800}.cv h3{font-size:clamp(1.15rem, 2vw, 1.65rem);font-weight:600;letter-spacing:-.03em;padding-bottom:1rem}.cv h4{font-size:1rem;font-weight:600;margin-bottom:1rem}.cv ul{list-style:none;padding:0;margin:0}.cv ul li{color:#747a78;font-size:.95rem;line-height:1.8;margin-bottom:.2rem}.cv ul li span{font-size:.85rem;color:#747a78;opacity:.8;margin-left:1rem}.cv .skill-group{margin-bottom:2.5rem}.cv .skill-group:last-child{margin-bottom:0}.cv .expertise-skills{display:flex;flex-wrap:wrap;gap:.65rem 2rem;margin-bottom:2rem}.cv .expertise-skills li{position:relative;line-height:1.6;text-transform:uppercase}.cv .expertise-skills li:not(:first-child)::before{content:"·";position:absolute;left:-1rem;transform:translateX(-50%);color:#426c73}.site-footer{border-top:1px solid #e7e5e0;padding:28px 0 36px;color:#747a78;font-size:.82rem}.site-footer a{text-decoration:none}.site-footer a:hover{color:#292d2c}@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}*,*::before,*::after{transition-duration:.01ms !important;animation-duration:.01ms !important}}
