/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before{box-sizing:border-box;border:0 solid;margin:0;padding:0}::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){-webkit-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.relative{position:relative}.start{inset-inline-start:var(--spacing)}.table{display:table}}.hero .hero-subhead{font-size:var(--hero-subhead-size);white-space:pre-line}.hero-subhead-mobile{display:none}.hero-video{object-fit:cover;z-index:0;width:100%;height:100%;position:absolute;inset:0}.hero-video-mobile{display:none}.hero-video-overlay{z-index:1;pointer-events:none;background:linear-gradient(90deg,#0a0a0af5 0%,#0a0a0aa3 52%,#0a0a0a47 100%);position:absolute;inset:0}.hero.has-video:before{display:none}.hero.has-video .hero-content{z-index:2;position:relative}.hero.has-video .hero-index,.hero.has-video .stat-strip{z-index:2}.hero.has-video{color:#fff}.hero.has-video .stat-strip{border-color:#ffffffb8}main:has(.hero.has-video) .site-header{color:#fff;border-color:#ffffffb8}main:has(.hero.has-video) .site-header .button{border-color:#fff}@media (max-width:820px){.hero .hero-subhead{font-size:min(var(--hero-subhead-size),6vw,28px)}}.project-carousel{transition:background-image .2s;position:relative;overflow:hidden}.project-carousel .carousel-arrow{z-index:2;border:1px solid var(--ink);width:46px;height:64px;color:var(--ink);cursor:pointer;background:#e8e7e2e6;place-items:center;font-size:22px;display:grid;position:absolute;top:50%;transform:translateY(-50%)}:is(.project-carousel .carousel-arrow:hover,.project-carousel .carousel-arrow:focus-visible){background:var(--accent);color:#fff}.project-carousel .previous{border-left:0;left:0}.project-carousel .next{border-right:0;right:0}.project-carousel .carousel-count{border:1px solid var(--ink);font:700 9px var(--font-mono),monospace;letter-spacing:.08em;background:#e8e7e2e6;padding:7px 9px;position:absolute;bottom:12px;right:12px}@media (max-width:820px){.project-carousel .carousel-arrow{width:42px;height:56px}.project-carousel .carousel-count{bottom:8px;right:8px}}:root{--paper:#e8e7e2;--ink:#151515;--accent:#a43b2f;--white:#fff;--serif:"Iowan Old Style","Baskerville","Times New Roman",serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--paper);color:var(--ink);font-family:var(--font-sans),Arial,sans-serif;margin:0}a{color:inherit;text-decoration:none}button{font:inherit}.cms-link{z-index:20;border:1px solid var(--ink);background:var(--paper);font:700 10px var(--font-mono),monospace;text-transform:uppercase;letter-spacing:.08em;box-shadow:3px 3px 0 var(--ink);border-radius:999px;padding:10px 14px;position:fixed;bottom:18px;right:18px}.cms-link:hover{background:var(--accent);color:#fff}.site-header{z-index:10;border-bottom:1px solid var(--ink);align-items:center;gap:42px;height:78px;padding:0 4vw;display:flex;position:absolute;top:0;left:0;right:0}.wordmark{font:700 24px/1 var(--serif);letter-spacing:-.03em}.wordmark span{color:var(--accent);font-style:italic}.site-header nav{font:600 10px var(--font-mono),monospace;text-transform:uppercase;letter-spacing:.1em;gap:30px;margin-right:auto;display:flex}.site-header nav a:hover,.socials a:hover,.text-link:hover{color:var(--accent)}.button{border:1px solid var(--ink);text-transform:uppercase;font:700 10px var(--font-mono),monospace;letter-spacing:.09em;border-radius:999px;justify-content:center;align-items:center;display:inline-flex}.button-small{padding:10px 17px}.button:hover{background:var(--accent);color:#fff;border-color:var(--accent)}.hero{border-bottom:1px solid var(--ink);flex-direction:column;justify-content:flex-end;height:100svh;min-height:760px;padding:120px 4vw 38px;display:flex;position:relative;overflow:hidden}.hero:before{content:"AF";color:#a43b2f14;font:700 min(62vw,800px)/.78 var(--serif);letter-spacing:-.14em;z-index:-1;position:absolute;top:.12em;right:-.02em}.hero-index{font:600 10px var(--font-mono),monospace;text-transform:uppercase;letter-spacing:.12em;position:absolute;top:105px;right:4vw}.hero-content{max-width:1150px}.eyebrow{font:700 10px var(--font-mono),monospace;text-transform:uppercase;letter-spacing:.13em;margin:0 0 15px}.hero h1,h2,.project-summary strong,.big-copy,.contact h2,.capability-grid h3{font-family:var(--serif);font-weight:700}.hero h1{letter-spacing:-.065em;max-width:1050px;margin:0;font-size:clamp(78px,11vw,172px);line-height:.79}.hero-subhead{letter-spacing:-.025em;max-width:820px;margin:32px 0 24px;font-size:clamp(21px,2.5vw,38px);line-height:1.12}.hero-subhead em{font-family:var(--serif);font-weight:700}.hero-meta{font:600 10px var(--font-mono),monospace;text-transform:uppercase;letter-spacing:.1em;gap:26px;display:flex}.stat-strip{border-top:1px solid var(--ink);grid-template-columns:repeat(3,1fr);width:370px;display:grid;position:absolute;bottom:38px;right:4vw}.stat-strip>div{flex-direction:column;padding:12px 12px 0 0;display:flex}.stat-strip strong,.detail-stats strong{font:700 28px/1 var(--serif)}.stat-strip small,.detail-stats small{font:600 8px/1.3 var(--font-mono),monospace;text-transform:uppercase;letter-spacing:.08em;margin-top:6px}.ticker{background:var(--accent);color:#fff;border-bottom:1px solid var(--ink);white-space:nowrap;font:700 12px var(--font-mono),monospace;text-transform:uppercase;letter-spacing:.12em;padding:13px 0;overflow:hidden}.ticker div{width:max-content;animation:28s linear infinite ticker}@keyframes ticker{to{transform:translate(-50%)}}.section{border-bottom:1px solid var(--ink);padding:110px 4vw}.section-heading{grid-template-columns:.65fr 2.2fr 1fr;align-items:start;gap:34px;margin-bottom:64px;display:grid}.section-heading h2{letter-spacing:-.055em;margin:0;font-size:clamp(56px,7.5vw,118px);line-height:.82}.section-heading h2 span{color:var(--accent);font:700 .13em var(--font-mono),monospace;vertical-align:top;letter-spacing:0;margin-right:12px}.section-heading>p:last-child{max-width:360px;margin:0;font-size:14px;line-height:1.6}.about{background:var(--ink);color:var(--paper)}.about h2 span{color:#d77466}.about-grid{grid-template-columns:1.15fr 1fr;gap:9vw;display:grid}.big-copy{letter-spacing:-.04em;margin:0;font-size:clamp(42px,5.2vw,78px);line-height:.98}.body-copy{align-self:end;font-size:16px;line-height:1.72}.body-copy p:first-child{margin-top:0}.capability-grid{border:1px solid var(--ink);grid-template-columns:1fr 1fr;display:grid}.capability-grid article{padding:34px 38px 42px}.capability-grid article+article{border-left:1px solid var(--ink)}.cap-number{color:var(--accent);font:700 11px var(--font-mono),monospace;margin:0 0 44px}.capability-grid h3{letter-spacing:-.045em;margin:0;font-size:clamp(42px,5vw,76px);line-height:.9}.cap-intro{max-width:540px;min-height:68px;margin:24px 0 34px;font-size:18px;line-height:1.35}.capability-grid ul{border-top:1px solid;margin:0;padding:0;list-style:none}.capability-grid li{font:600 11px var(--font-mono),monospace;text-transform:uppercase;letter-spacing:.06em;border-bottom:1px solid;padding:12px 0}.project{border-top:1px solid var(--ink)}.project:last-child{border-bottom:1px solid var(--ink)}.project-summary{width:100%;min-height:112px;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:60px 1fr auto 34px;align-items:center;gap:20px;display:grid}.project-summary:hover{color:var(--accent)}.project-number,.project-summary small{font:600 9px var(--font-mono),monospace;text-transform:uppercase;letter-spacing:.1em}.project-summary strong{letter-spacing:-.04em;font-size:clamp(34px,4.5vw,68px);line-height:.9;display:block}.project-metric{font:700 11px var(--font-mono),monospace;text-transform:uppercase}.plus{text-align:right;font-size:26px}.project-detail{grid-template-columns:1.5fr 1fr;gap:32px;padding:0 0 42px 80px;animation:.28s both reveal;display:grid}@keyframes reveal{0%{opacity:0;transform:translateY(-8px)}}.project-image{filter:grayscale();border:1px solid var(--ink);background-position:50%;background-size:cover;grid-row:span 2;min-height:440px}.project-copy{align-self:end}.project-intro{font:700 29px/1.12 var(--serif);letter-spacing:-.02em}.project-copy p:not(.project-intro){font-size:14px;line-height:1.65}.project-copy a,.text-link{font:700 10px var(--font-mono),monospace;text-transform:uppercase;letter-spacing:.08em;border-bottom:1px solid;margin-top:16px;padding-bottom:4px;display:inline-block}.detail-stats{border:1px solid var(--ink);grid-template-columns:repeat(3,1fr);display:grid}.detail-stats div{border-right:1px solid;flex-direction:column;padding:14px;display:flex}.detail-stats div:last-child{border:0}.resume{background:#d9d5cc}.resume-grid{border-top:1px solid;border-bottom:1px solid;grid-template-columns:1fr 1.8fr;gap:8vw;padding:36px 0;display:grid}.resume-role{font:700 28px/1.1 var(--serif);margin-top:0}.resume-grid ul{margin:0;padding-left:20px}.resume-grid li{margin-bottom:14px;line-height:1.5}.contact{background:var(--accent);color:#fff;padding:100px 4vw 30px}.contact h2{letter-spacing:-.065em;margin:0;font-size:clamp(72px,13vw,190px);line-height:.78}.contact h2 a:hover{color:var(--ink)}.contact>p:not(.eyebrow){max-width:700px;font-size:18px;line-height:1.5}.socials{font:700 11px var(--font-mono),monospace;text-transform:uppercase;gap:28px;margin:60px 0 110px;display:flex}.contact footer{font:600 9px var(--font-mono),monospace;text-transform:uppercase;border-top:1px solid #fff9;justify-content:space-between;padding-top:18px;display:flex}.light{color:#fff}@media (max-width:900px){.hero{min-height:720px}.stat-strip{width:100%;margin-top:48px;position:static}.hero-content{margin-top:auto}.section-heading{grid-template-columns:.5fr 2fr}.section-heading>p:last-child{grid-column:2}.project-detail{grid-template-columns:1fr;padding-left:0}.project-image{grid-row:auto}.hero:before{top:.3em}}@media (max-width:680px){.site-header{height:64px;padding:0 18px}.site-header nav{display:none}.site-header .button{margin-left:auto}.hero{height:auto;min-height:760px;padding:100px 20px 28px}.hero-index{display:none}.hero h1{font-size:clamp(70px,24vw,104px)}.hero-subhead{font-size:23px}.hero-meta{flex-wrap:wrap}.stat-strip{grid-template-columns:repeat(3,1fr);margin-top:40px}.stat-strip strong{font-size:22px}.section{padding:76px 20px}.section-heading{display:block}.section-heading h2{margin:16px 0 28px}.about-grid,.capability-grid,.resume-grid{grid-template-columns:1fr}.about-grid{gap:38px}.capability-grid article{padding:28px 24px}.capability-grid article+article{border-top:1px solid;border-left:0}.project-summary{grid-template-columns:34px 1fr 26px;gap:10px;min-height:96px}.project-metric{display:none}.project-detail{padding:0 0 30px}.project-image{min-height:280px}.contact{padding:76px 20px 24px}.contact h2{font-size:24vw}.socials{flex-wrap:wrap;margin-bottom:80px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.ticker div{animation:none}}.resume-document{border:1px solid var(--ink);width:min(920px,82vw);box-shadow:7px 7px 0 var(--ink);background:#fff;margin:0 auto;overflow:hidden}.resume-document img{width:100%;height:auto;display:block}.resume-download{background:var(--accent);border-color:var(--ink);color:#fff;width:max-content;margin:34px auto 0;padding:13px 22px}.resume-download:hover{background:var(--ink)}@media (max-width:680px){.resume-document{width:100%;box-shadow:4px 4px 0 var(--ink)}}.site-header,.hero{padding-left:var(--page-gutter);padding-right:var(--page-gutter)}.hero-index,.stat-strip{right:var(--page-gutter)}.section,.contact{padding-left:var(--page-gutter);padding-right:var(--page-gutter)}@media (max-width:680px){.site-header{padding-left:18px;padding-right:18px}:root{--page-gutter:20px}}:root{--page-gutter:max(10vw,calc((100vw - 1100px)/2))}.hero h1{font-size:var(--hero-heading-size)}.about .section-heading h2{font-size:var(--about-heading-size)}.capabilities .section-heading h2{font-size:var(--capabilities-heading-size)}.projects .section-heading h2{font-size:var(--projects-heading-size)}.resume .section-heading h2{font-size:var(--resume-heading-size)}.contact h2{font-size:var(--contact-heading-size)}@media (max-width:680px){:root{--page-gutter:20px}.hero h1{font-size:min(var(--hero-heading-size),24vw)}.about .section-heading h2,.capabilities .section-heading h2,.projects .section-heading h2,.resume .section-heading h2{font-size:min(var(--about-heading-size),18vw)}.contact h2{font-size:min(var(--contact-heading-size),24vw)}.about .section-heading h2{font-size:min(var(--about-heading-size),18vw)}.capabilities .section-heading h2{font-size:min(var(--capabilities-heading-size),18vw)}.projects .section-heading h2{font-size:min(var(--projects-heading-size),18vw)}.resume .section-heading h2{font-size:min(var(--resume-heading-size),18vw)}}.capability-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.capability-grid article{min-width:0}@media (max-width:680px){.capability-grid{grid-template-columns:1fr}}.about .big-copy{font-size:var(--about-headline-size)}@media (max-width:680px){.about .big-copy{font-size:min(var(--about-headline-size),16vw)}.about-portrait{justify-self:start;width:min(100%,320px);margin:28px 0 0}}.about .section-heading{grid-template-columns:.35fr 1fr 2fr}.about-portrait{width:min(100%,var(--about-portrait-width));max-width:960px;max-height:none}@media (max-width:680px){.about .section-heading{display:block}.about-portrait{width:100%;max-width:none}}.body-copy p{white-space:pre-line;margin:0 0 1.75em}.body-copy p:last-child{margin-bottom:0}.body-copy ul{margin:1.6em 0 0;padding-left:1.15em;list-style-type:disc}.body-copy ul+p{margin-top:1.75em}.body-copy li{margin:.22em 0;padding-left:.18em}.body-copy li::marker{color:#d77466}.hero h1,.hero-subhead,.section-heading h2,.section-heading>p:last-child,.big-copy,.cap-intro,.project-intro,.project-copy p,.resume-grid li,.contact h2,.contact>p:not(.eyebrow){white-space:pre-line}.about .section-heading{grid-template-columns:.25fr minmax(0,1.8fr) minmax(280px,1.2fr);gap:18px}.capabilities .section-heading{grid-template-columns:.35fr minmax(0,3fr) .45fr;gap:18px}@media (max-width:680px){.about .section-heading,.capabilities .section-heading{display:block}}.capability-grid article:first-child h3{font-size:var(--communications-heading-size)}.capability-grid article:last-child h3{font-size:var(--marketing-heading-size)}.resume-document{width:min(736px,66vw)}@media (max-width:680px){.capability-grid article h3{font-size:min(var(--communications-heading-size),15vw)}.capability-grid article:last-child h3{font-size:min(var(--marketing-heading-size),15vw)}.resume-document{width:100%}}.resume-download{display:flex}.projects .section-heading{grid-template-columns:.35fr minmax(0,3fr) minmax(190px,.9fr);gap:18px}@media (max-width:680px){.projects .section-heading{display:block}}.capability-grid h3{white-space:pre-line}.project-summary strong{font-size:var(--project-title-size)}@media (max-width:680px){.project-summary strong{font-size:min(var(--project-title-size),13vw)}}@media (max-width:1024px){:root{--page-gutter:40px}.section,.contact{padding-top:84px;padding-bottom:84px}.site-header{gap:24px}.site-header nav{gap:18px}.section-heading{gap:20px}.about .section-heading{grid-template-columns:.2fr minmax(0,1.5fr) minmax(240px,1fr)}.capability-grid article{padding:30px}.project-detail{padding-left:50px}.contact{padding-bottom:28px}}@media (max-width:820px){:root{--page-gutter:20px}html,body{overflow-x:hidden}.site-header{height:64px;padding:0 18px;position:absolute}.site-header nav{display:none}.site-header .button{margin-left:auto}.wordmark{font-size:21px}.hero{height:auto;min-height:680px;padding:100px 20px 30px}.hero:before{font-size:min(100vw,460px);top:.28em}.hero-index{display:none}.hero-content{max-width:none}.hero h1{max-width:none;font-size:min(var(--hero-heading-size),18vw,128px);line-height:.84}.hero-subhead{max-width:none;margin:26px 0 20px;font-size:21px}.hero-meta{flex-wrap:wrap;gap:10px 20px}.stat-strip{width:100%;margin-top:38px;position:static}.ticker{padding:11px 0;font-size:10px}.section,.contact{padding:68px 20px}.section-heading,.about .section-heading,.capabilities .section-heading,.projects .section-heading{margin-bottom:42px;display:block}.section-heading h2{margin:14px 0 24px;line-height:.88}.about .section-heading h2{font-size:min(var(--about-heading-size),14vw,96px)}.capabilities .section-heading h2{font-size:min(var(--capabilities-heading-size),14vw,96px)}.projects .section-heading h2{font-size:min(var(--projects-heading-size),14vw,96px)}.resume .section-heading h2{font-size:min(var(--resume-heading-size),14vw,96px)}.section-heading>p:last-child{max-width:none}.about-portrait{width:min(100%,var(--about-portrait-width));max-width:100%;margin-top:26px}.about-grid{grid-template-columns:1fr;gap:34px}.about .big-copy{font-size:min(var(--about-headline-size),11vw,68px);line-height:1.02}.body-copy{font-size:15px;line-height:1.62}.capability-grid{grid-template-columns:1fr}.capability-grid article{padding:28px 22px 34px}.capability-grid article+article{border-top:1px solid;border-left:0}.cap-number{margin-bottom:30px}.capability-grid article h3{font-size:min(var(--communications-heading-size),11vw,64px);overflow-wrap:anywhere}.capability-grid article:last-child h3{font-size:min(var(--marketing-heading-size),11vw,64px)}.cap-intro{min-height:0;margin:20px 0 28px;font-size:17px}.project-summary{grid-template-columns:30px minmax(0,1fr) 24px;gap:10px;min-height:92px}.project-summary strong{font-size:min(var(--project-title-size),10vw,56px);overflow-wrap:anywhere;line-height:.95}.project-metric{display:none}.project-detail{grid-template-columns:1fr;gap:20px;padding:0 0 32px}.project-image{grid-row:auto;min-height:240px}.project-copy{align-self:auto}.project-intro{font-size:25px}.detail-stats{grid-template-columns:repeat(3,minmax(0,1fr))}.detail-stats div{padding:10px}.detail-stats strong{font-size:22px}.resume-document{width:100%;box-shadow:4px 4px 0 var(--ink)}.contact h2{font-size:min(var(--contact-heading-size),18vw,120px);overflow-wrap:anywhere;line-height:.84}.contact>p:not(.eyebrow){font-size:16px}.socials{flex-wrap:wrap;gap:18px 24px;margin:44px 0 72px}.contact footer{gap:20px;line-height:1.5}}@media (max-width:420px){.hero{min-height:620px}.hero h1{font-size:min(var(--hero-heading-size),18vw)}.stat-strip{grid-template-columns:repeat(3,minmax(0,1fr))}.stat-strip strong{font-size:20px}.section,.contact{padding-top:56px;padding-bottom:56px}.capability-grid article{padding:24px 18px 30px}.detail-stats{grid-template-columns:1fr}.detail-stats div{border-bottom:1px solid;border-right:0}.contact footer{display:block}.contact footer span{margin-top:8px;display:block}}@media (max-width:820px){.capability-grid article:first-child h3{font-size:min(var(--communications-heading-size),11vw,64px)}}.about .section-heading{grid-template-columns:.25fr minmax(260px,1fr) clamp(160px,var(--about-portrait-width),55%);align-items:start}.about-portrait{justify-self:stretch;width:100%;max-width:none;height:auto;max-height:none;display:block}@media (max-width:1024px) and (min-width:821px){.about .section-heading{grid-template-columns:.2fr minmax(240px,1fr) clamp(160px,var(--about-portrait-width),48%)}}@media (max-width:820px){.about .section-heading{display:block}.about-portrait{width:min(100%,var(--about-portrait-width));max-width:100%;margin-top:26px}}.principles{background:var(--accent);color:#fff}.principles-heading{grid-template-columns:.65fr 1.8fr;align-items:end;gap:34px;margin-bottom:48px;display:grid}.principles-heading h2{max-width:900px;font-family:var(--serif);font-weight:700;font-size:var(--principles-heading-size);letter-spacing:-.05em;white-space:pre-line;margin:0;line-height:.86}.principles-grid{border:1px solid;grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.principles-grid article{flex-direction:column;justify-content:flex-start;min-height:360px;padding:24px;display:flex}.principles-grid article+article{border-left:1px solid}.principles-grid span{font:700 10px var(--font-mono),monospace;letter-spacing:.1em}.principles-grid h3{font-family:var(--serif);font-weight:700;font-size:var(--principle-title-size);letter-spacing:-.035em;white-space:pre-line;margin:42px 0 0;line-height:.98}.principles-grid p{font-size:var(--principle-body-size);white-space:pre-line;margin:22px 0 0;line-height:1.55}@media (max-width:1024px){.principles-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.principles-grid article:nth-child(3){border-left:0}.principles-grid article:nth-child(n+3){border-top:1px solid}}@media (max-width:820px){.principles-heading{display:block}.principles-heading h2{font-size:min(var(--principles-heading-size),14vw,84px);margin-top:14px}.principles-grid{grid-template-columns:1fr}.principles-grid article{min-height:260px}.principles-grid h3{font-size:min(var(--principle-title-size),11vw,54px)}.principles-grid p{font-size:min(var(--principle-body-size),5vw,20px)}.principles-grid article+article{border-top:1px solid;border-left:0}}.strategy-sequence{border:1px solid var(--ink);width:max-content;font:700 9px var(--font-mono),monospace;text-transform:uppercase;letter-spacing:.1em;border-radius:999px;align-items:center;gap:16px;margin:0 0 22px;padding:9px 14px;display:flex}.strategy-sequence span{color:var(--accent)}.strategy-sequence strong{font:inherit}.project-list,.project{position:relative}.project-summary{z-index:4;grid-template-columns:90px 1fr auto 34px;position:relative}.project-number{z-index:2;border:2px solid var(--accent);background:var(--paper);width:60px;height:60px;color:var(--accent);border-radius:50%;place-items:center;font-size:12px;transition:background .18s,color .18s,transform .18s;display:grid;position:relative}.project.open .project-number,.project-summary:hover .project-number{background:var(--accent);color:var(--paper);transform:scale(1.06)}.project.connected:before{content:"";z-index:3;border-left:3px dotted var(--accent);opacity:.9;position:absolute;top:86px;bottom:-39px;left:29px}.project.connected:after{content:"↓";z-index:4;background:var(--paper);width:30px;height:32px;color:var(--accent);font:900 27px/1 var(--font-mono),monospace;place-items:center;display:grid;position:absolute;bottom:-16px;left:15px}.project.open.connected:before{top:86px}.project.bonus{border-top:1px dashed var(--accent);margin-top:34px}.project.bonus .project-number{border-radius:999px;width:76px;font-size:8px}.project.bonus .project-summary{grid-template-columns:90px 1fr auto 34px}.project-detail{z-index:2;background:var(--paper);padding-left:110px;position:relative}@media (max-width:820px){.strategy-sequence{justify-content:space-between;gap:10px;width:100%;margin-bottom:12px}.project-number{width:46px;height:46px;font-size:10px}.project.connected:before{border-left-width:2px;top:79px;bottom:-32px;left:22px}.project.connected:after{width:28px;height:28px;font-size:23px;bottom:-14px;left:9px}.project.bonus{margin-top:26px}.project.bonus .project-number{width:64px}.project.bonus .project-summary{grid-template-columns:72px minmax(0,1fr) 24px}.project-detail{margin-left:58px;padding-left:0}}@media (max-width:420px){.strategy-sequence{border-radius:16px;flex-direction:column;align-items:flex-start}.project-detail{margin-left:0}}.contact.has-images{grid-template-columns:minmax(0,1.5fr) minmax(220px,.7fr);align-items:center;column-gap:6vw;display:grid}.contact-copy{min-width:0}.contact-carousel{place-self:center end;width:min(100%,390px)}.contact-carousel-image{aspect-ratio:1;background-repeat:no-repeat;background-size:cover;border:1px solid #ffffffbf;transition:background-image .35s;box-shadow:10px 10px #15151538}.contact-carousel-controls{min-height:34px;font:700 9px var(--font-mono),monospace;letter-spacing:.1em;justify-content:flex-end;align-items:center;gap:12px;margin-top:12px;display:flex}.contact-carousel-controls button{color:#fff;cursor:pointer;background:0 0;border:1px solid #ffffffbf;width:34px;height:30px}:is(.contact-carousel-controls button:hover,.contact-carousel-controls button:focus-visible){color:var(--accent);background:#fff}.contact.has-images>.socials,.contact.has-images>footer{grid-column:1/-1}.contact.has-images>.socials{margin-top:48px}@media (max-width:820px){.contact.has-images{grid-template-columns:1fr;gap:34px}.contact-carousel{justify-self:start;width:min(78vw,360px)}.contact.has-images>.socials{margin-top:10px}}@media (prefers-reduced-motion:reduce){.contact-carousel-image{transition:none}}.photo-carousel-section{padding:72px var(--page-gutter) 62px;border-bottom:1px solid var(--ink);background:#d9d5cc;overflow:hidden}.photo-carousel-section>.eyebrow{text-align:center;margin-bottom:30px}.photo-carousel-track{justify-content:center;align-items:center;gap:18px;display:flex}.photo-carousel-tile{aspect-ratio:1;border:1px solid var(--ink);filter:grayscale();opacity:.58;background-repeat:no-repeat;background-size:cover;flex:0 0 clamp(180px,22vw,310px);transition:opacity .35s,transform .35s,background-image .35s;transform:scale(.9)}.photo-carousel-tile.active{opacity:1;box-shadow:8px 8px 0 var(--accent);transform:scale(1)}.photo-carousel-controls{font:700 9px var(--font-mono),monospace;letter-spacing:.1em;justify-content:center;align-items:center;gap:14px;margin-top:28px;display:flex}.photo-carousel-controls button{border:1px solid var(--ink);width:40px;height:34px;color:var(--ink);cursor:pointer;background:0 0}:is(.photo-carousel-controls button:hover,.photo-carousel-controls button:focus-visible){background:var(--accent);border-color:var(--accent);color:#fff}@media (max-width:680px){.photo-carousel-section{padding:54px 20px 48px}.photo-carousel-section>.eyebrow{text-align:left;margin-bottom:22px}.photo-carousel-track{min-height:0}.photo-carousel-tile{flex-basis:min(78vw,320px);display:none}.photo-carousel-tile.active{display:block}.photo-carousel-controls{margin-top:24px}}@media (prefers-reduced-motion:reduce){.photo-carousel-tile{transition:none}}.projects .section-heading>p:last-child{display:none}.projects .section-heading{grid-template-columns:.35fr minmax(0,3fr)}.strategy-sequence strong{display:none}@media (max-width:680px){.projects{padding-left:18px;padding-right:18px}.projects .section-heading{margin-bottom:30px}.projects .section-heading h2{max-width:100%;font-size:min(var(--projects-heading-size),14vw,62px);letter-spacing:-.045em;margin-top:10px;line-height:.9}.projects .section-heading>p:last-child{margin-top:22px;font-size:13px;line-height:1.5}.projects .strategy-sequence{border-radius:14px;flex-direction:column;align-items:flex-start;gap:5px;width:100%;margin-bottom:10px;padding:10px 12px}.projects .project-summary{grid-template-columns:56px minmax(0,1fr) 22px;align-items:start;gap:9px;min-height:0;padding:15px 0}.projects .project-number{width:46px;height:46px;margin-top:3px;font-size:10px}.projects .project-summary small{margin-bottom:6px;font-size:7px;line-height:1.25;display:block}.projects .project-summary strong{font-size:min(var(--project-title-size),8.2vw,36px);letter-spacing:-.03em;line-height:.96}.projects .plus{padding-top:20px;font-size:21px}.projects .project.connected:before{top:64px;bottom:-28px;left:22px}.projects .project.connected:after{width:28px;height:28px;font-size:23px;bottom:-14px;left:9px}.projects .project.bonus{margin-top:0}.projects .project.bonus .project-summary{grid-template-columns:70px minmax(0,1fr) 22px}.projects .project.bonus .project-number{width:64px;height:34px;margin-top:3px}.projects .project-detail{margin-left:58px;padding-bottom:28px}}@media (max-width:420px){.projects .section-heading h2{font-size:min(var(--projects-heading-size),13.5vw,56px)}.projects .project-summary strong{font-size:min(var(--project-title-size),7.8vw,33px)}.projects .project-detail{margin-left:0}}.project.bonus{margin-top:0}.writing-cta{justify-content:center;padding-top:46px;display:flex}.writing-cta .button{background:var(--accent);border-color:var(--accent);color:#fff;padding:14px 24px}.writing-cta .button:hover{background:var(--ink);border-color:var(--ink)}@media (max-width:680px){.writing-cta{padding-top:34px}.writing-cta .button{width:min(100%,260px)}}.photo-carousel-tile{filter:none;opacity:.7;flex-basis:clamp(135px,15vw,245px)}.photo-carousel-tile.active{opacity:1}@media (max-width:680px){.photo-carousel-tile{flex-basis:min(78vw,320px)}}.photo-carousel-tile{opacity:.58;flex-basis:clamp(150px,12vw,240px);transform:scale(1)}.photo-carousel-tile:nth-child(2),.photo-carousel-tile:nth-child(4){opacity:.82;flex-basis:clamp(190px,15vw,300px)}.photo-carousel-tile.active{opacity:1;transform:scale(1)}@media (max-width:680px){.photo-carousel-section{padding-top:54px;padding-bottom:48px}.photo-carousel-tile,.photo-carousel-tile:nth-child(2),.photo-carousel-tile:nth-child(3),.photo-carousel-tile:nth-child(4){flex-basis:min(82vw,340px)}}.photo-carousel-section{padding-top:96px;padding-bottom:86px}.photo-carousel-track{gap:16px}.photo-carousel-tile{flex-basis:clamp(170px,13.5vw,270px)}.photo-carousel-tile:nth-child(2),.photo-carousel-tile:nth-child(4){flex-basis:clamp(215px,17vw,340px)}.photo-carousel-tile:nth-child(3){flex-basis:clamp(270px,21.5vw,430px)}@media (max-width:680px){.photo-carousel-section{padding-top:60px;padding-bottom:54px}.photo-carousel-tile,.photo-carousel-tile:nth-child(2),.photo-carousel-tile:nth-child(3),.photo-carousel-tile:nth-child(4){flex-basis:min(88vw,370px)}}.projects .project-image{filter:none}.projects .project-detail{grid-template-columns:minmax(280px,.58fr) minmax(0,1fr);gap:38px}.projects .project-image{min-height:280px}.projects .project-intro{margin:0 0 20px}.projects .project-copy p:not(.project-intro){margin-top:0}.work-links{border:1px solid var(--ink);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.work-links a{border-right:1px solid var(--ink);flex-direction:column;justify-content:space-between;min-height:112px;padding:15px 36px 15px 15px;transition:background .18s,color .18s;display:flex;position:relative}.work-links a:last-child{border-right:0}.work-links a:hover{background:var(--accent);color:var(--paper)}.work-links strong{font:700 19px/1.05 var(--serif)}.work-links small{font:700 8px/1.25 var(--font-mono),monospace;text-transform:uppercase;letter-spacing:.08em;margin-top:16px}.work-links span{font:700 14px/1 var(--font-mono),monospace;position:absolute;top:14px;right:14px}@media (max-width:820px){.projects .project-detail{grid-template-columns:1fr;gap:20px}.projects .project-image{min-height:240px}.work-links{grid-template-columns:1fr}.work-links a{border-right:0;border-bottom:1px solid var(--ink);min-height:80px}.work-links a:last-child{border-bottom:0}}.capabilities-module-header{grid-template-columns:.35fr minmax(0,3fr);align-items:start;gap:18px;margin-bottom:42px;display:grid}.capabilities-module-header h2{max-width:1100px;font:700 clamp(42px,5vw,72px)/.92 var(--serif);letter-spacing:-.045em;margin:0}.capabilities-module-header h2 span{color:var(--accent);font:700 .16em var(--font-mono),monospace;vertical-align:top;letter-spacing:0;margin-right:12px}.capability-steps{border-top:1px solid var(--ink);border-left:1px solid var(--ink);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.capability-steps article{border-right:1px solid var(--ink);border-bottom:1px solid var(--ink);flex-direction:column;min-height:310px;padding:24px 22px 28px;display:flex}.capability-step-number{color:var(--accent);font:700 9px var(--font-mono),monospace;letter-spacing:.1em}.capability-steps h3{font:700 clamp(34px,3.2vw,52px)/.9 var(--serif);letter-spacing:-.04em;margin:42px 0 2px}.capability-steps h4{font:700 10px/1.25 var(--font-mono),monospace;text-transform:uppercase;letter-spacing:.09em;margin:7px 0 22px}.capability-steps p{margin:auto 0 0;font-size:14px;line-height:1.55}@media (max-width:900px){.capabilities-module-header{margin-bottom:32px;display:block}.capabilities-module-header h2{margin-top:14px}.capability-steps{grid-template-columns:repeat(2,minmax(0,1fr))}.capability-steps article{min-height:280px}}@media (max-width:520px){.capabilities-module-header h2{font-size:42px}.capability-steps{grid-template-columns:1fr}.capability-steps article{min-height:0}.capability-steps h3{margin-top:28px}.capability-steps p{margin-top:10px}}.lineage{background:var(--paper)}.lineage-heading{grid-template-columns:.35fr minmax(0,3fr);gap:18px;margin-bottom:70px;display:grid}.lineage-heading h2{max-width:1150px;font-family:var(--serif);font-size:clamp(36px,var(--lineage-title-size),180px);letter-spacing:-.055em;margin:0;font-weight:700;line-height:.82}.lineage-list{position:relative}.lineage-item{border-top:1px solid var(--ink);grid-template-columns:90px minmax(260px,.9fr) minmax(0,1.45fr);gap:34px;padding:54px 0 36px;display:grid;position:relative}.lineage-item:last-child{border-bottom:1px solid var(--ink)}.lineage-marker{justify-content:flex-start;display:flex;position:relative}.lineage-marker span{z-index:2;border:2px solid var(--accent);background:var(--paper);width:60px;height:60px;color:var(--accent);font:800 12px var(--font-mono),monospace;letter-spacing:.08em;border-radius:50%;place-items:center;display:grid;position:relative}.lineage-marker:after{content:"";border-left:3px dotted var(--accent);opacity:.9;position:absolute;top:60px;bottom:-63px;left:29px}.lineage-item:last-child .lineage-marker:after{display:none}.lineage-marker i{z-index:3;background:var(--paper);width:30px;height:32px;color:var(--accent);font:900 27px/1 var(--font-mono),monospace;place-items:center;font-style:normal;display:grid;position:absolute;bottom:-26px;left:15px}.lineage-chapter h3{font-family:var(--serif);font-size:clamp(24px,var(--lineage-chapter-title-size),96px);letter-spacing:-.04em;margin:0;font-weight:700;line-height:.92}.lineage-toggle{width:100%;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;align-items:flex-start;gap:14px;padding:0;display:flex}.lineage-toggle>span{max-width:100%}:is(.lineage-toggle:hover h3,.lineage-toggle:focus-visible h3){color:var(--accent)}.lineage-toggle:focus-visible{outline:2px solid var(--accent);outline-offset:8px}.lineage-plus{font:700 30px/1 var(--font-mono),monospace;position:absolute;top:54px;right:0}.lineage-meta{margin:18px 0 0;font-size:14px;line-height:1.4}.lineage-copy{max-width:760px;font-size:var(--lineage-body-size);padding-right:34px;line-height:1.68}.lineage-copy>p:not(.lineage-closing){white-space:pre-line;margin:0 0 1.45em}.lineage-copy ul{margin:26px 0;padding-left:22px;list-style-type:circle}.lineage-copy li{margin:0 0 11px;padding-left:5px}.lineage-copy li::marker{color:var(--accent);font-size:.85em}.lineage-closing{font-family:var(--serif);margin-top:30px;font-size:20px;line-height:1.42}.lineage-copy strong{font-weight:750}.lineage-copy a{color:inherit;text-decoration-line:underline;-webkit-text-decoration-color:var(--accent);-webkit-text-decoration-color:var(--accent);-webkit-text-decoration-color:var(--accent);text-decoration-color:var(--accent);text-underline-offset:.18em;text-decoration-thickness:1.5px}:is(.lineage-copy a:hover,.lineage-copy a:focus-visible){color:var(--accent)}@media (max-width:960px){.lineage-heading{margin-bottom:46px;display:block}.lineage-heading h2{margin-top:16px}.lineage-item{grid-template-columns:72px minmax(220px,.8fr) minmax(0,1.2fr);gap:22px}}@media (max-width:700px){.lineage-item{grid-template-columns:56px minmax(0,1fr);gap:12px 18px;padding:38px 0 28px}.lineage-marker{grid-row:1/span 2}.lineage-marker span{width:46px;height:46px;font-size:10px}.lineage-marker:after{border-left-width:2px;top:46px;bottom:-29px;left:22px}.lineage-marker i{width:28px;height:28px;font-size:23px;bottom:-16px;left:9px}.lineage-toggle>span{max-width:calc(100% - 34px)}.lineage-plus{top:38px}.lineage-copy{grid-column:2;padding-right:28px}.lineage-chapter h3{font-size:min(var(--lineage-chapter-title-size),36px)}.lineage-copy{font-size:min(var(--lineage-body-size),14px)}.lineage-closing{font-size:18px}}@media (max-width:820px){.hero.has-mobile-video .hero-video-desktop{display:none!important}.hero-video-mobile{display:block!important}.hero h1{font-size:var(--hero-mobile-heading-size)!important}.hero .hero-subhead{font-size:var(--hero-mobile-subhead-size)!important}.hero-subhead-desktop{display:none!important}.hero-subhead-mobile{display:block!important}.projects .section-heading h2{font-size:var(--projects-mobile-heading-size)!important}.projects .project-summary strong{font-size:var(--project-mobile-title-size)!important}.projects .project-summary small,.projects .project-metric{font-size:var(--project-mobile-label-size)!important}.projects .project-intro{font-size:var(--project-mobile-intro-size)!important}.projects .project-copy p:not(.project-intro){font-size:var(--project-mobile-body-size)!important}.lineage-heading h2{font-size:var(--lineage-mobile-title-size)!important}.lineage-chapter h3{font-size:var(--lineage-mobile-chapter-title-size)!important}.lineage-meta{font-size:var(--lineage-mobile-meta-size)!important}.lineage-copy{font-size:var(--lineage-mobile-body-size)!important}}.video-producer{padding:48px var(--page-gutter) 58px;background:var(--paper);border-bottom:1px solid var(--ink)}.video-producer-header,.video-producer-track{width:80%;margin-left:auto;margin-right:auto}.video-producer-header{justify-content:space-between;align-items:end;gap:30px;margin-bottom:20px;display:flex}.video-producer-header .eyebrow{margin-bottom:7px}.video-producer h3{font:700 clamp(32px,3.2vw,50px)/.95 var(--serif);letter-spacing:-.04em;margin:0}.video-producer-controls{font:700 9px var(--font-mono),monospace;letter-spacing:.1em;align-items:center;gap:10px;display:flex}.video-producer-controls button{border:1px solid var(--ink);cursor:pointer;background:0 0;width:38px;height:34px}:is(.video-producer-controls button:hover,.video-producer-controls button:focus-visible){background:var(--accent);border-color:var(--accent);color:#fff}.video-producer-track{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.video-card{border:1px solid var(--ink);background:#fff;border-radius:9px;min-width:0;transition:transform .18s,box-shadow .18s;overflow:hidden}:is(.video-card:hover,.video-card:focus-visible){box-shadow:6px 6px 0 var(--accent);transform:translateY(-4px)}.video-card-image{aspect-ratio:4/4.7;background-color:#c8c3b9;background-repeat:no-repeat;background-size:cover;position:relative}.video-play{color:#fff;background:#151515b8;border:1px solid #fff;border-radius:50%;place-items:center;width:48px;height:48px;padding-left:3px;font-size:16px;display:grid;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.video-card-meta{border-top:1px solid var(--ink);min-height:64px;font-family:var(--font-mono),monospace;text-transform:uppercase;flex-direction:column;justify-content:space-between;gap:7px;padding:11px 13px;display:flex}.video-card-meta strong{letter-spacing:.07em;font-size:10px;line-height:1.25}.video-card-meta span{color:#315fd5;letter-spacing:.08em;font-size:9px;line-height:1.3}@media (max-width:820px){.video-producer{padding:44px 20px 52px}.video-producer-header,.video-producer-track{width:100%}.video-producer-header{align-items:flex-start}.video-producer h3{font-size:38px}.video-producer-track{grid-template-columns:1fr}.video-card:not(:first-child){display:none}.video-card-image{aspect-ratio:4/5}.video-producer-controls{margin-top:3px}.video-producer-controls span{display:none}}@media (max-width:420px){.video-producer-header{display:block}.video-producer-controls{margin-top:18px}.video-producer-controls span{display:inline}}
