@font-face{font-family:Barlow Condensed;src:url(/fonts/barlow-condensed-500-latin.woff2)format("woff2");font-style:normal;font-weight:500;font-display:swap}@font-face{font-family:Barlow Condensed;src:url(/fonts/barlow-condensed-600-latin.woff2)format("woff2");font-style:normal;font-weight:600;font-display:swap}@font-face{font-family:Barlow Condensed;src:url(/fonts/barlow-condensed-700-latin.woff2)format("woff2");font-style:normal;font-weight:700;font-display:swap}@font-face{font-family:"Source Sans 3";src:url(/fonts/source-sans-3-latin.woff2)format("woff2");font-style:normal;font-weight:200 900;font-display:swap}:root{--color-paper:oklch(95.8% .012 90);--color-surface:oklch(98.2% .006 90);--color-sand:oklch(88.5% .035 87);--color-ink:oklch(20% .014 150);--color-field:oklch(17% .025 150);--color-field-soft:oklch(27% .026 150);--color-muted:oklch(50% .018 135);--color-line:oklch(76% .018 91);--color-accent:oklch(64% .185 43);--color-accent-dark:oklch(48% .15 43);--color-light-text:oklch(93% .013 88);--font-display:"Barlow Condensed", "Arial Narrow", sans-serif;--font-body:"Source Sans 3", "Helvetica Neue", sans-serif;--text-xs:.875rem;--text-sm:.9375rem;--text-body:1.0625rem;--text-lead:clamp(1.25rem, 1.05rem + .8vw, 1.75rem);--text-heading:clamp(2.75rem, 2.15rem + 3vw, 5.25rem);--text-display:clamp(3.75rem, 2.9rem + 4.3vw, 6rem);--space-2xs:.25rem;--space-xs:.5rem;--space-sm:.75rem;--space-md:1rem;--space-lg:1.5rem;--space-xl:2rem;--space-2xl:3rem;--space-3xl:clamp(3.5rem, 6vw, 6.5rem);--space-4xl:clamp(5rem, 9vw, 9rem);--page-gutter:clamp(1rem, 3.2vw, 3.5rem);--content-width:92rem;--z-header:20;--z-skip-link:40;--ease-out-quint:cubic-bezier(.22, 1, .36, 1);color:var(--color-ink);background:var(--color-paper);font-family:var(--font-body);font-synthesis:none;font-kerning:normal;text-rendering:optimizelegibility}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--color-paper);min-width:20rem;color:var(--color-ink);font-size:var(--text-body);margin:0;line-height:1.5}button,input,textarea,select{font:inherit}img,picture,svg{max-width:100%;display:block}figure,h1,h2,h3,p{margin:0}h1,h2,h3{text-wrap:balance}p,li{text-wrap:pretty}a{color:inherit;text-underline-offset:.2em;text-decoration-thickness:1px}a:focus-visible,summary:focus-visible{outline:3px solid var(--color-accent);outline-offset:4px}::selection{color:var(--color-ink);background:var(--color-accent)}.page-gutter{width:min(100%, var(--content-width));padding-inline:var(--page-gutter);margin-inline:auto}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.placeholder-copy{text-decoration-line:underline;text-decoration-style:dotted;-webkit-text-decoration-color:var(--color-accent-dark);text-decoration-color:var(--color-accent-dark);text-underline-offset:.16em;text-decoration-thickness:1px}.placeholder-bracket,.placeholder-example{color:var(--color-accent-dark);font-weight:700;text-decoration:none}.preview-notice{border-bottom:1px solid var(--color-accent-dark);background:oklch(91% .045 65)}.preview-notice-inner{gap:var(--space-xs);padding-block:var(--space-sm);font-size:var(--text-sm);display:grid}.preview-notice-inner strong{font-family:var(--font-display);letter-spacing:.08em;text-transform:uppercase;font-size:1rem}.preview-notice-inner p{max-width:70ch}.section-space{padding-block:var(--space-4xl)}.skip-link{z-index:var(--z-skip-link);top:var(--space-md);left:var(--space-md);padding:var(--space-sm) var(--space-md);color:var(--color-light-text);background:var(--color-field);position:fixed;transform:translateY(-200%)}.skip-link:focus{transform:translateY(0)}.site-header{z-index:var(--z-header);justify-content:space-between;align-items:center;gap:var(--space-lg);min-height:4.75rem;padding:var(--space-sm) var(--page-gutter);border-bottom:1px solid var(--color-line);background:var(--color-paper);display:flex;position:relative}.brand-lockup{align-items:center;gap:var(--space-sm);min-height:2.75rem;text-decoration:none;display:inline-flex}.brand-lockup img{object-fit:contain;width:2.8rem;height:2.8rem}.brand-lockup span{text-transform:uppercase;line-height:.88;display:grid}.brand-lockup strong{font-family:var(--font-display);letter-spacing:.035em;font-size:1.45rem;font-weight:700}.brand-lockup small{margin-top:var(--space-2xs);font-size:var(--text-xs);letter-spacing:.24em;font-weight:700}.navigation-shell{position:relative}.navigation-shell summary{border:1px solid var(--color-ink);cursor:pointer;min-width:3.5rem;min-height:2.75rem;font-size:var(--text-sm);transition:color .18s var(--ease-out-quint), background-color .18s var(--ease-out-quint);place-items:center;font-weight:650;list-style:none;display:grid}.navigation-shell summary::-webkit-details-marker{display:none}.navigation-shell[open] summary{color:var(--color-light-text);background:var(--color-field)}.primary-navigation{top:calc(100% + var(--space-sm));width:min(20rem, calc(100vw - 2 * var(--page-gutter)));border:1px solid var(--color-ink);background:var(--color-paper);display:grid;position:absolute;right:0}.primary-navigation a{min-height:3.25rem;padding-inline:var(--space-md);border-bottom:1px solid var(--color-line);align-items:center;text-decoration:none;display:flex}.primary-navigation a[aria-current=page]{font-weight:700}.primary-navigation a[aria-current=page]:before{width:.45rem;height:.45rem;margin-right:var(--space-sm);background:var(--color-accent);content:"";border-radius:50%}.primary-navigation .nav-inquiry{color:var(--color-light-text);background:var(--color-field);border-bottom:0;justify-content:center;font-weight:700}.hero{gap:var(--space-2xl);padding-top:clamp(3rem,7vw,7rem);padding-bottom:var(--space-3xl);border-bottom:1px solid var(--color-line);display:grid}.hero-copy{align-items:flex-start;gap:var(--space-lg);flex-direction:column;display:flex}.eyebrow,.back-link{font-size:var(--text-xs);letter-spacing:.08em;text-transform:uppercase;font-weight:700;line-height:1.2}.hero h1,.page-intro h1,.project-header h1{max-width:9.8ch;font-family:var(--font-display);font-size:var(--text-display);letter-spacing:-.025em;text-transform:uppercase;margin-left:-.025em;font-weight:600;line-height:.84}.hero-support{max-width:31ch;font-size:var(--text-lead);font-weight:520;line-height:1.25}.hero-actions{align-items:center;gap:var(--space-md) var(--space-lg);margin-top:var(--space-sm);flex-wrap:wrap;display:flex}.button{justify-content:space-between;align-items:center;gap:var(--space-lg);min-width:12.5rem;min-height:3.25rem;padding:var(--space-sm) var(--space-md);font-size:var(--text-sm);transition:color .18s var(--ease-out-quint), background-color .18s var(--ease-out-quint), border-color .18s var(--ease-out-quint), transform .18s var(--ease-out-quint);border:1px solid;font-weight:700;text-decoration:none;display:inline-flex}.button-dark{color:var(--color-light-text);background:var(--color-field);justify-content:center}.button-accent{color:var(--color-ink);border-color:var(--color-accent);background:var(--color-accent);justify-content:center}.text-link,.section-link{align-items:center;gap:var(--space-sm);min-height:2.75rem;transition:color .18s var(--ease-out-quint), transform .18s var(--ease-out-quint);font-weight:700;text-decoration:none;display:inline-flex}.hero-visual{align-self:end}.hero-visual .project-figure{max-width:38rem;margin-left:auto}.hero-visual>p{justify-content:space-between;gap:var(--space-md);padding-top:var(--space-sm);color:var(--color-muted);font-size:var(--text-xs);letter-spacing:.08em;text-transform:uppercase;display:flex}.project-figure{background:var(--color-sand);overflow:hidden}.project-figure img{width:100%;height:auto}.hero-copy{animation:hero-copy-arrive .65s var(--ease-out-quint) both}.hero-visual{animation:hero-visual-arrive .8s 90ms var(--ease-out-quint) both}@keyframes hero-copy-arrive{0%{opacity:.7;filter:blur(3px);transform:translateY(1rem)}}@keyframes hero-visual-arrive{0%{opacity:.75;clip-path:inset(6% 0 0);transform:translateY(1.25rem)}}.section-heading{margin-bottom:var(--space-3xl)}.split-heading{gap:var(--space-xl);display:grid}.section-heading>div{gap:var(--space-md);display:grid}.section-heading h2,.about-copy h2,.field-copy h2,.contact-band h2,.service-detail-list h2{max-width:11ch;font-family:var(--font-display);font-size:var(--text-heading);letter-spacing:-.015em;text-transform:uppercase;margin-left:-.02em;font-weight:600;line-height:.88}.section-heading>p{max-width:43ch;color:var(--color-muted)}.project-grid{gap:var(--space-3xl) var(--space-xl);display:grid}.project-tile{align-content:start;gap:var(--space-md);display:grid}.project-image-link{display:block}.project-image-link img,.project-tile h2 a,.project-tile h3 a,.primary-navigation a{transition:color .18s var(--ease-out-quint), background-color .18s var(--ease-out-quint), transform .32s var(--ease-out-quint)}.project-tile-copy{gap:var(--space-sm) var(--space-md);padding-top:var(--space-sm);border-top:1px solid var(--color-ink);grid-template-columns:minmax(0,1fr) auto;align-items:start;display:grid}.project-tile-copy>div{gap:var(--space-xs);display:grid}.project-tile h2,.project-tile h3{max-width:16ch;font-family:var(--font-display);text-transform:uppercase;font-size:clamp(1.75rem,1.45rem + 1.2vw,2.7rem);font-weight:600;line-height:.95}.project-tile h2 a,.project-tile h3 a{text-decoration:none}.project-tile-copy>p{color:var(--color-muted);font-size:var(--text-sm);text-align:right}.selected-work>.section-link{margin-top:var(--space-3xl);border-bottom:1px solid var(--color-ink)}.services-section{border-top:1px solid var(--color-line)}.service-list{border-top:1px solid var(--color-ink)}.service-list article{gap:var(--space-lg);padding-block:var(--space-xl);border-bottom:1px solid var(--color-line);display:grid}.service-list h3{font-family:var(--font-display);text-transform:uppercase;font-size:clamp(2rem,1.6rem + 1.6vw,3.7rem);font-weight:600;line-height:.95}.service-list p,.service-list a{grid-column:1}.service-list p{max-width:37ch;color:var(--color-muted)}.service-list a{width:fit-content;min-height:2.75rem;font-size:var(--text-sm);font-weight:700;text-decoration:none}.field-knowledge{color:var(--color-light-text);background:var(--color-field)}.field-copy{gap:var(--space-xl);padding-top:var(--space-4xl);padding-bottom:var(--space-3xl);display:grid}.field-copy h2{max-width:9ch;font-size:clamp(3.4rem,2.8rem + 3.5vw,5.75rem)}.field-copy>p:last-child{color:oklch(78% .018 95);max-width:43ch;font-size:var(--text-lead);line-height:1.45}.evidence-list{padding-top:0;padding-bottom:var(--space-4xl);margin-block:0;list-style:none}.evidence-list li{gap:var(--space-md);padding-block:var(--space-lg);border-top:1px solid var(--color-field-soft);font-family:var(--font-display);text-transform:uppercase;grid-template-columns:.75rem 1fr;font-size:clamp(1.8rem,1.45rem + 1.7vw,3.5rem);font-weight:500;line-height:1;display:grid}.evidence-list li:before{background:var(--color-accent);content:"";width:.45rem;height:.45rem;margin-top:.3em}.evidence-list li:last-child{border-bottom:1px solid var(--color-field-soft)}.about-preview{gap:var(--space-2xl);display:grid}.about-image picture,.about-image img{width:100%;height:auto;display:block}.about-copy{align-items:flex-start;gap:var(--space-xl);flex-direction:column;align-self:center;display:flex}.about-copy>p{max-width:43ch;color:var(--color-muted);font-size:var(--text-lead)}.contact-band{border-top:1px solid var(--color-ink)}.contact-band>div{gap:var(--space-xl);display:grid}.contact-band h2{max-width:12ch;font-size:clamp(3.2rem,2.6rem + 3vw,5.5rem)}.site-footer{gap:var(--space-3xl);padding:var(--space-3xl) var(--page-gutter) max(var(--space-xl), env(safe-area-inset-bottom));color:var(--color-light-text);background:var(--color-field);display:grid}.footer-lead{gap:var(--space-lg);display:grid}.footer-lead img{width:min(18rem,70vw);height:auto}.footer-lead p{color:oklch(78% .018 95);max-width:28ch;font-size:var(--text-lead)}.footer-navigation{border-top:1px solid var(--color-field-soft);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.footer-navigation a{border-bottom:1px solid var(--color-field-soft);align-items:center;min-height:3rem;text-decoration:none;display:flex}.footer-meta{justify-content:space-between;gap:var(--space-sm) var(--space-lg);color:oklch(70% .018 95);font-size:var(--text-xs);letter-spacing:.08em;text-transform:uppercase;flex-wrap:wrap;display:flex}.interior-page{padding-top:var(--space-3xl);padding-bottom:var(--space-4xl)}.page-intro{gap:var(--space-xl);margin-bottom:var(--space-4xl);display:grid}.page-intro h1{max-width:10ch}.page-intro>p:not(.eyebrow){max-width:46ch;color:var(--color-muted);font-size:var(--text-lead)}.back-link{align-items:center;min-height:2.75rem;text-decoration:none;display:inline-flex}.project-header{gap:var(--space-lg);margin-bottom:var(--space-3xl);display:grid}.project-header>p:last-child{max-width:42ch;color:var(--color-muted);font-size:var(--text-lead)}.project-hero{max-width:72rem;margin-inline:auto}.project-hero .project-figure.portrait{max-width:44rem;margin-inline:auto}.project-facts{margin-top:var(--space-2xl);border-top:1px solid var(--color-ink);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.project-facts div{gap:var(--space-xs);padding:var(--space-md) 0;border-bottom:1px solid var(--color-line);display:grid}.project-facts span{color:var(--color-muted);font-size:var(--text-xs);letter-spacing:.12em;text-transform:uppercase;font-weight:700}.project-facts strong{text-transform:capitalize;font-weight:600}.project-narrative{gap:var(--space-xl);max-width:44rem;margin:var(--space-4xl) auto 0;display:grid}.project-narrative h2{font-family:var(--font-display);text-transform:uppercase;font-size:clamp(1.9rem,1.65rem + 1vw,2.6rem);font-weight:600;line-height:1}.project-narrative>p{max-width:62ch;color:var(--color-muted)}.service-detail-list{border-top:1px solid var(--color-ink)}.service-detail-list section{padding-block:var(--space-3xl);border-bottom:1px solid var(--color-line);scroll-margin-top:var(--space-xl)}.service-detail-list section>div{gap:var(--space-lg);display:grid}.service-detail-list .service-lead{max-width:38ch;font-size:var(--text-lead)}.service-detail-list section p:not(.service-lead){max-width:58ch;color:var(--color-muted)}.about-page-grid{gap:var(--space-2xl);display:grid}.about-page-grid picture,.about-page-grid img{width:100%;height:auto;display:block}.about-page-grid>div{align-items:flex-start;gap:var(--space-lg);flex-direction:column;align-self:center;display:flex}.about-page-grid p{max-width:48ch;color:var(--color-muted);font-size:var(--text-lead)}.contact-options{border-top:1px solid var(--color-ink);display:grid}.contact-options>div{align-content:start;gap:var(--space-xl);padding-block:var(--space-2xl);border-bottom:1px solid var(--color-line);display:grid}.contact-options h2{font-family:var(--font-display);text-transform:uppercase;font-size:clamp(1.9rem,1.65rem + 1vw,2.6rem);font-weight:600;line-height:1}.contact-options p{max-width:42ch;color:var(--color-muted)}.contact-email{color:var(--color-muted);overflow-wrap:anywhere;text-underline-offset:.2em}.contact-options ul{gap:var(--space-sm);margin:0;padding-left:1.2rem;display:grid}@media (hover:hover){.primary-navigation a:not(.nav-inquiry):hover,.section-link:hover,.text-link:hover{color:var(--color-accent-dark)}.button:hover{color:var(--color-light-text);border-color:var(--color-accent-dark);background:var(--color-accent-dark)}.project-image-link:hover img{transform:scale(1.012)}.project-tile h2 a:hover,.project-tile h3 a:hover{color:var(--color-accent-dark)}}.button:active,.text-link:active,.section-link:active{transform:translateY(1px)}@media (width>=42rem){.preview-notice-inner{align-items:baseline;gap:var(--space-lg);grid-template-columns:auto minmax(0,1fr)}.split-heading{grid-template-columns:minmax(0,1.3fr) minmax(16rem,.7fr);align-items:end}.project-grid{grid-template-columns:repeat(12,minmax(0,1fr))}.project-tile-1,.project-tile-4,.project-tile-6{grid-column:span 7}.project-tile-2,.project-tile-3,.project-tile-5{grid-column:span 5}.project-tile-2,.project-tile-5{margin-top:clamp(3rem,9vw,9rem)}.project-tile-3{align-self:end}.service-list article{align-items:start;column-gap:var(--space-xl);grid-template-columns:minmax(12rem,.95fr) minmax(14rem,.8fr) auto}.service-list p,.service-list a{grid-column:auto}.about-preview{grid-template-columns:minmax(16rem,.8fr) minmax(20rem,1.2fr);align-items:center}.about-image{max-width:31rem}.contact-band>div{grid-template-columns:1fr auto;align-items:end}.site-footer{grid-template-columns:1fr 1fr}.footer-meta{grid-column:1/-1}.project-facts{grid-template-columns:repeat(4,minmax(0,1fr))}.project-facts div+div{padding-left:var(--space-md);border-left:1px solid var(--color-line)}.about-page-grid{grid-template-columns:minmax(18rem,.8fr) minmax(22rem,1.2fr);align-items:center}.about-page-grid picture{max-width:36rem}.contact-options{grid-template-columns:repeat(2,minmax(0,1fr))}.contact-options>div{padding-inline:var(--space-xl)}.contact-options>div:first-child{padding-left:0}.contact-options>div+div{border-left:1px solid var(--color-line)}}@media (width>=54rem){.site-header{min-height:5.25rem}.navigation-shell summary{display:none}.navigation-shell:not([open])>.primary-navigation,.primary-navigation{background:0 0;border:0;align-items:center;width:auto;display:flex;position:static}.primary-navigation a{min-height:2.75rem;padding-inline:var(--space-md);font-size:var(--text-sm);border:0}.primary-navigation .nav-inquiry{min-width:10.5rem;margin-left:var(--space-sm)}.hero{min-height:calc(100svh - 8.375rem);padding-top:var(--space-2xl);padding-bottom:var(--space-2xl);grid-template-columns:minmax(0,1.18fr) minmax(19rem,.82fr);align-items:end;gap:clamp(2rem,5vw,6rem)}.hero-copy{align-self:center}.field-copy{grid-template-columns:minmax(0,1.3fr) minmax(18rem,.7fr);align-items:end}.evidence-list li{grid-template-columns:1rem 1fr}}@media (width>=72rem){.field-copy h2{max-width:8.5ch}.evidence-list{width:min(82%,76rem);margin-left:auto}.service-detail-list section>div{column-gap:var(--space-3xl);grid-template-columns:minmax(18rem,.8fr) minmax(24rem,1.2fr)}.service-detail-list h2,.service-detail-list .service-lead,.service-detail-list .section-link{grid-column:1}.service-detail-list section p:not(.service-lead){font-size:var(--text-lead);grid-area:1/2/span 3;align-self:center}}@media (pointer:coarse){.primary-navigation a,.button,.text-link,.section-link{min-height:3.25rem}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important;animation-delay:0s!important}}@media print{.site-header,.site-footer,.hero-actions,.contact-band{display:none}body{background:var(--color-surface)}a{text-decoration:none}}
