*,:before,:after{box-sizing:border-box;margin:0;padding:0}img,svg,video{max-width:100%}html,body{overscroll-behavior-x:none;width:100%;max-width:100%;overflow-x:hidden}html{scroll-behavior:smooth;font-size:16px}body{background:var(--bg);touch-action:pan-y}:focus-visible{outline:2px solid var(--green);outline-offset:3px;border-radius:4px}:root{--green:#1c5c38;--green-mid:#2b7a50;--gold:#ecc842;--bg:#fff;--bg-tint:#f9f7f4;--text:#111;--text-soft:#525252;--text-muted:#767676;--border:#e8e8e8;--serif:"Merriweather", Georgia, serif;--sans:"IBM Plex Sans", system-ui, sans-serif;--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-smooth:cubic-bezier(.25, .46, .45, .94)}.scroll-progress{background:var(--green-mid);z-index:200;transform-origin:0;pointer-events:none;height:3px;position:fixed;top:0;left:0}nav{z-index:100;background:var(--bg);border-bottom:1px solid #0000;align-items:center;height:64px;padding:0 48px;transition:border-color .3s;display:flex;position:fixed;top:0;left:0;right:0}nav.scrolled{border-color:var(--border)}.nav-inner{justify-content:space-between;align-items:center;width:100%;max-width:1100px;margin:0 auto;display:flex}.nav-logo{font-family:var(--sans);color:var(--text);letter-spacing:-.01em;font-size:15px;font-weight:600;text-decoration:none}.nav-links{align-items:center;gap:32px;display:flex}.nav-link{font-family:var(--sans);color:var(--text-soft);font-size:14px;font-weight:500;text-decoration:none;transition:color .2s}.nav-link:hover{color:var(--text)}section{padding:112px 48px}.inner{max-width:1100px;margin:0 auto;overflow:hidden}#hero{padding:140px 48px 80px;position:relative;overflow:hidden}.hero-orb{pointer-events:none;background:radial-gradient(circle at 40% 40%,#ecc8422e,#0000 70%);border-radius:50%;width:600px;height:600px;position:absolute;top:-200px;right:-180px}.hero-label{font-family:var(--sans);letter-spacing:.1em;text-transform:uppercase;color:var(--green);margin-bottom:24px;font-size:12px;font-weight:500}.hero-h1{font-family:var(--serif);letter-spacing:-.025em;color:var(--text);max-width:896px;margin-bottom:32px;font-size:clamp(48px,6.5vw,64px);font-weight:400;line-height:1.15}.hero-h1 .muted{color:var(--text-muted)}.hero-sub{font-family:var(--sans);color:var(--text-soft);max-width:680px;margin-bottom:48px;font-size:18px;line-height:1.65}.hero-ctas{flex-wrap:wrap;align-items:center;gap:24px;display:flex}@keyframes flow-dash{to{stroke-dashoffset:-10px}}@keyframes btn-ripple-expand{0%{opacity:1;transform:scale(0)}to{opacity:0;transform:scale(1)}}.btn-ripple-circle{pointer-events:none;border-radius:50%;animation:.55s ease-out forwards btn-ripple-expand;position:absolute}.btn-green,.btn-outline{background:linear-gradient(to bottom, var(--bg) 0%, color-mix(in srgb, var(--bg) 78%, #000) 100%);color:var(--text);font-family:var(--sans);cursor:pointer;border:none;border-radius:16px;align-items:center;gap:6px;min-height:44px;padding:0 28px;font-size:14px;font-weight:600;text-decoration:none;transition:box-shadow .25s cubic-bezier(.25,1,.5,1);display:inline-flex;position:relative;overflow:hidden;box-shadow:0 3px 8px #0000001f,0 1px 3px #00000014,inset 0 1px #fff,inset 0 -1px #00000012,0 0 #0000,0 0 #d2d2d200}.btn-green:hover,.btn-outline:hover{box-shadow:0 3px 8px #0000001a,0 1px 3px #00000012,inset 0 1px #fff,inset 0 -1px #00000012,0 0 0 5px #0000001c,0 0 0 9px #d7d7d78c}.btn-green:active,.btn-outline:active{transform:translateY(1px);box-shadow:inset 0 3px 8px #00000024,0 1px 2px #0000000f,0 0 0 5px #00000017,0 0 0 9px #d7d7d773}.link-soft{font-family:var(--sans);color:var(--text-soft);font-size:15px;font-weight:500;text-decoration:none;transition:color .2s}.link-soft:hover{color:var(--green)}#logos{background:var(--bg);border-top:1px solid var(--border);padding:56px 48px}#logos .inner{max-width:1100px;margin:0 auto}.logos-label{font-family:var(--sans);letter-spacing:.1em;text-transform:uppercase;color:var(--green);margin-bottom:24px;font-size:12px;font-weight:500}.logos-row{flex-wrap:nowrap;justify-content:space-between;align-items:center;gap:0;display:flex}.logos-row img{flex-shrink:0;display:block}#work{border-top:1px solid var(--border)}.section-label{font-family:var(--sans);letter-spacing:.1em;text-transform:uppercase;color:var(--green);margin-bottom:16px;font-size:12px;font-weight:500}.section-h2{font-family:var(--serif);letter-spacing:-.02em;color:var(--text);max-width:576px;margin-bottom:48px;font-size:clamp(32px,4vw,52px);font-weight:400;line-height:1.1}.card-grid{grid-template-columns:1fr;gap:32px;display:grid}.card{background:var(--bg);border:1px solid var(--border);cursor:pointer;transition:transform .32s var(--ease-out), box-shadow .32s var(--ease-out);color:inherit;border-radius:16px;text-decoration:none;display:block;overflow:hidden}.card:hover{transform:translateY(-4px);box-shadow:0 16px 40px #0000001a,0 4px 12px #0000000f}.card-img{aspect-ratio:16/9;background:var(--bg-tint);width:100%;position:relative;overflow:hidden}.card-img-photo{background:var(--text)}.card-img-photo img{object-fit:cover;width:100%;height:100%;transition:transform .6s var(--ease-out);display:block}.card:hover .card-img-photo img{transform:scale(1.03)}.card-img-grid{background-image:linear-gradient(var(--border) 1px, transparent 1px), linear-gradient(90deg, var(--border) 1px, transparent 1px);opacity:.5;background-size:32px 32px;position:absolute;inset:0}.card-img-icon{flex-direction:column;justify-content:center;align-items:center;gap:8px;display:flex;position:absolute;inset:0}.card-img-circle{border:1px solid var(--border);width:48px;height:48px;color:var(--text-muted);background:#fffc;border-radius:50%;justify-content:center;align-items:center;font-size:18px;display:flex}.card-img-caption{font-family:var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--text-muted);font-size:.75rem;font-weight:500}.card-body{padding:24px}.card-label{font-family:var(--sans);letter-spacing:.08em;text-transform:uppercase;color:var(--green);margin-bottom:8px;font-size:.75rem;font-weight:600}.card-title{font-family:var(--serif);color:var(--text);margin-bottom:8px;font-size:20px;font-weight:400;line-height:1.3}.card-desc{font-family:var(--sans);color:var(--text-soft);margin-bottom:16px;font-size:14px;line-height:1.6}.card-tags{flex-wrap:wrap;gap:8px;margin-bottom:16px;display:flex}.tag{font-family:var(--sans);color:var(--text);background:var(--bg-tint);border-radius:4px;padding:4px 8px;font-size:12px;font-weight:500}.card-stat{border-top:1px solid var(--border);align-items:center;gap:8px;padding-top:16px;display:flex}.stat-dot{background:var(--green);border-radius:50%;flex-shrink:0;width:8px;height:8px}.stat-text{font-family:var(--sans);color:var(--text);font-size:.875rem;font-weight:600}#testimonials{background:var(--bg-tint);border-top:1px solid var(--border);padding-top:80px;padding-bottom:80px}.testimonial-grid{grid-template-columns:1fr 1fr;gap:32px;display:grid}.testimonial-card{background:var(--bg);border:1px solid var(--border);border-radius:16px;padding:32px}.testimonial-quote{font-family:var(--serif);color:var(--text);margin-bottom:24px;font-size:20px;line-height:1.65}.testimonial-attr{align-items:center;gap:12px;display:flex}.testimonial-bar{background:linear-gradient(to bottom, var(--green-mid), var(--green));border-radius:2px;flex-shrink:0;width:4px;height:32px}.testimonial-name{font-family:var(--sans);color:var(--text);font-size:14px;font-weight:600}.testimonial-title{font-family:var(--sans);color:var(--text-muted);font-size:.75rem}#contact{background:var(--bg);border-top:1px solid var(--border)}.two-col{grid-template-columns:1fr 1fr;align-items:start;gap:80px;display:grid}.two-col>*{min-width:0}.about-label,.contact-label{font-family:var(--sans);letter-spacing:.1em;text-transform:uppercase;color:var(--green);margin-bottom:24px;font-size:12px;font-weight:500}.headshot-row{align-items:center;gap:16px;margin-bottom:24px;display:flex}.headshot{background:var(--gold);border-radius:50%;flex-shrink:0;width:70px;height:70px;overflow:hidden}.name{font-family:var(--sans);color:var(--text);font-size:16px;font-weight:600}.role{font-family:var(--sans);color:var(--text-muted);margin-top:2px;font-size:.75rem}.bio-para{font-family:var(--sans);color:var(--text-soft);margin-bottom:20px;font-size:1rem;line-height:1.75}.contact-h2{font-family:var(--serif);letter-spacing:-.02em;color:var(--text);margin-bottom:28px;font-size:clamp(28px,3.5vw,44px);font-weight:400;line-height:1.2}.contact-email-row{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:24px;display:flex}.contact-email{font-family:var(--sans);color:var(--text-soft);letter-spacing:.01em;-webkit-user-select:all;user-select:all;font-size:14px}.contact-sub{font-family:var(--sans);color:var(--text-soft);margin-bottom:40px;font-size:16px;line-height:1.7}.contact-links{flex-wrap:wrap;gap:16px;display:flex}footer{border-top:1px solid var(--border);padding:32px 48px}.footer-inner{justify-content:flex-start;align-items:center;max-width:1100px;margin:0 auto;display:flex}.footer-copy{font-family:var(--sans);color:var(--text-muted);font-size:.75rem}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}html{scroll-behavior:auto}}@media (width>=810px) and (width<=1199px){#hero{padding:104px 40px 72px}nav{padding:0 40px}.logos-row{flex-wrap:wrap;justify-content:flex-start;gap:24px 48px}}@media (width<=809px){nav{padding:0 24px}section{padding:72px 24px}#hero{padding:88px 24px 64px}.two-col,.card-grid{grid-template-columns:1fr;gap:40px}.testimonial-grid{grid-template-columns:1fr;gap:24px}footer{padding:24px}.footer-inner{flex-direction:column;align-items:flex-start;gap:12px}.nav-links{gap:20px}.nav-link{padding-block:12px;font-size:13px}.hero-label{letter-spacing:.05em}.hero-h1{font-size:clamp(28px,9vw,36px)}.hero-sub{font-size:15px}.bio-para{font-size:.875rem}.contact-sub{font-size:14px}.contact-email-row{flex-flow:wrap;align-items:center;gap:8px}.contact-email{flex:0 0 100%}#logos{padding:40px 24px 48px}.logos-row{flex-wrap:wrap;justify-content:flex-start;gap:24px 40px}}@media (width>=1200px){.logos-row img[alt=HCLTech]{height:13px}.logos-row img[alt=T-Mobile]{height:28px}.logos-row img[alt=Norfolk\ Southern]{height:19px}.logos-row img[alt="Portland General Electric"]{height:28px}.logos-row img[alt="MLB Advanced Media"]{height:24px}.logos-row img[alt=Oracle]{height:34px}.logos-row img[alt=Accenture]{height:20px;transform:translateY(-5px)}}.cs-hero{max-width:1100px;margin:0 auto;padding:120px 48px 0}.cs-label{font-family:var(--sans);letter-spacing:.1em;text-transform:uppercase;color:var(--green);margin-bottom:24px;font-size:12px;font-weight:500}.cs-title{font-family:var(--serif);letter-spacing:-.02em;color:var(--text);max-width:760px;margin-bottom:24px;font-size:clamp(32px,4vw,56px);font-weight:400;line-height:1.1}.cs-subtitle{font-family:var(--sans);color:var(--text-soft);max-width:640px;margin-bottom:48px;font-size:18px;line-height:1.65}.cs-meta{border-top:1px solid var(--border);border-bottom:1px solid var(--border);flex-wrap:wrap;gap:40px;padding:32px 0;display:flex}.cs-meta-item dt{font-family:var(--sans);letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);margin-bottom:4px;font-size:.75rem;font-weight:500}.cs-meta-item dd{font-family:var(--sans);color:var(--text);font-size:14px}.cs-cover{width:100%;max-width:1100px;margin:24px auto 80px;padding:0 48px}.cs-cover img{border:1px solid var(--border);border-radius:16px;width:100%;display:block}.cs-body{max-width:720px;margin:0 auto;padding:0 48px 80px}.cs-section{margin-bottom:64px}.cs-section-label{font-family:var(--sans);letter-spacing:.1em;text-transform:uppercase;color:var(--green);margin-bottom:16px;font-size:.75rem;font-weight:600}.cs-h2{font-family:var(--serif);color:var(--text);margin-bottom:16px;font-size:28px;font-weight:400;line-height:1.2}.cs-p{font-family:var(--sans);color:var(--text-soft);margin-bottom:16px;font-size:16px;line-height:1.8}.cs-stats{grid-template-columns:repeat(3,1fr);gap:24px;margin:40px 0;display:grid}.cs-stats-2col{grid-template-columns:repeat(2,1fr)}.cs-stat{background:var(--bg-tint);border:1px solid var(--border);border-radius:12px;padding:24px}.cs-stat-num{font-family:var(--sans);color:var(--text);margin-bottom:8px;font-size:32px;font-weight:700;line-height:1}.cs-stat-label{font-family:var(--sans);color:var(--text-muted);font-size:.75rem}.cs-img{border:1px solid var(--border);border-radius:12px;width:100%;margin-bottom:12px;display:block}.cs-img-caption{font-family:var(--sans);color:var(--text-muted);margin-bottom:40px;font-size:12px}.cs-img-grid{grid-template-columns:1fr 1fr;gap:16px;margin-bottom:40px;display:grid}.cs-img-grid img{border:1px solid var(--border);border-radius:12px;width:100%;display:block}.cs-callout{background:var(--bg-tint);border-left:3px solid var(--gold);border-radius:0 8px 8px 0;margin:32px 0;padding:20px 24px}.cs-callout p{font-family:var(--sans);color:var(--text);font-size:1rem;line-height:1.7}.cs-callout strong{color:var(--text)}.cs-page-nav,.cs-nav{border-top:1px solid var(--border);justify-content:space-between;align-items:center;max-width:1100px;margin:0 auto;padding:48px;display:flex}.cs-page-nav a,.cs-nav a{font-family:var(--sans);color:var(--text-soft);font-size:14px;font-weight:500;text-decoration:none;transition:color .2s}.cs-page-nav a:hover,.cs-nav a:hover{color:var(--green)}.cs-nav-next{text-align:left}.cs-nav-next-label,.cs-nav-prev-label{font-family:var(--sans);letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);margin-bottom:4px;font-size:.75rem;font-weight:500;display:block}@media (width<=809px){.cs-hero,.cs-cover,.cs-body{padding-left:24px;padding-right:24px}.cs-hero{padding-top:88px}.cs-stats,.cs-img-grid{grid-template-columns:1fr}.cs-page-nav,.cs-nav{padding:32px 24px}}@media (width<=600px){.cs-page-nav,.cs-nav{flex-direction:column;align-items:flex-start;gap:24px}}
