:root{--font-sans: "Segoe UI", "Helvetica Neue", Arial, sans-serif;--font-editorial: "Iowan Old Style", "Palatino Linotype", "Book Antiqua", Georgia, serif;--font-mono: var(--font-sans);--space-sm: .5rem;--space-md: 1rem;--space-lg: 1.75rem;--space-xl: clamp(2rem, 5vw, 5rem);--space-section: clamp(4rem, 9vw, 8rem);--space-panel: clamp(1.5rem, 5vw, 4rem)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{background:#f7f5ef;color:#2d302f;scroll-behavior:smooth}body{margin:0;font-family:var(--font-sans);-webkit-font-smoothing:antialiased}button,input,textarea{font:inherit}button,a,input,textarea{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}a{color:inherit}button{cursor:pointer}h1,h2,h3{font-family:var(--font-editorial);font-weight:400;text-wrap:balance}h1{letter-spacing:-.045em}p{text-wrap:pretty}::selection{background:#ccd7dc;color:#242b2e}:focus-visible{outline:2px solid var(--accent, #526a76);outline-offset:5px}.app-container{width:100%;margin:0 auto;position:relative;isolation:isolate}.site-header{width:min(1320px,100%);margin:auto;padding:2rem clamp(1.25rem,5vw,4rem);display:flex;align-items:center;justify-content:space-between;gap:2rem;position:relative;z-index:2}.wordmark{font:400 clamp(1.55rem,2.6vw,2rem)/1 var(--font-editorial);letter-spacing:-.055em;text-decoration:none;white-space:nowrap}.wordmark em{font-weight:400}.site-nav{display:flex;gap:2.25rem;align-items:center}.site-nav a{min-height:44px;display:flex;align-items:center;font-size:.85rem;text-decoration:none;border-bottom:1px solid transparent}.site-nav a:hover,.site-nav a[aria-current]{border-color:var(--text)}.site-controls{display:flex;gap:.75rem}.site-controls button{background:transparent;color:var(--muted);border:0;min-width:44px;min-height:44px;font-size:.75rem}.site-controls button:last-child{border-left:1px solid var(--border);padding-left:.75rem}.skip-link{position:absolute;top:-100px;background:var(--text);color:var(--bg);padding:1rem;z-index:10}.skip-link:focus{top:0}.site-main{width:min(1240px,100%);margin:auto;padding:0 clamp(1.25rem,5vw,4rem);flex:1;min-width:0;position:relative}.site-main>:not(.living-current){position:relative;z-index:1}.living-current{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;pointer-events:none;overflow:hidden;z-index:0;color:var(--accent)}.living-current path{stroke:currentColor;stroke-width:.65;opacity:.15;vector-effect:non-scaling-stroke}.site-current{height:1400px;max-height:100%;opacity:.7}.site-footer{width:min(1240px,100%);margin:2rem auto 0;padding:2rem clamp(1.25rem,5vw,4rem);display:flex;justify-content:space-between;align-items:center;gap:1.5rem;border-top:1px solid var(--border);color:var(--muted);font-size:.75rem}.site-footer a{text-underline-offset:4px}.site-footer .wordmark{color:var(--text);font-size:1.5rem}.page{width:100%;padding:clamp(3rem,7vw,6rem) 0}.page-label{color:var(--accent);font-size:.7rem;letter-spacing:.16em;text-transform:uppercase;margin-bottom:1.5rem}.page h1{font-size:clamp(2.7rem,6vw,5.3rem);line-height:1.05;max-width:17ch;margin-bottom:2rem}.page-lead{font-size:1.15rem;line-height:1.8;max-width:55ch;color:var(--muted)}.page-copy{max-width:62ch;color:var(--muted);line-height:1.8;margin-top:1.5rem}.page-note{border-top:1px solid var(--border);padding-top:1.5rem;margin-top:3rem;font-size:.85rem;color:var(--muted)}.contact-layout{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2rem,7vw,7rem)}.contact-form{padding-top:.3rem}.contact-form label{display:block;font-size:.8rem;margin-bottom:.65rem}.contact-form input,.contact-form textarea{width:100%;padding:.85rem 0;background:transparent;border:0;border-bottom:1px solid var(--border);color:var(--text);border-radius:0}.contact-form textarea{resize:vertical;min-height:140px}.contact-form>div{margin-bottom:1.75rem}.contact-form .home-button{cursor:pointer}.form-note{font-size:.8rem;line-height:1.6;color:var(--muted);margin-top:1rem}.work-feature{display:grid;grid-template-columns:1.1fr 1fr;gap:3rem;margin:3rem 0;align-items:center}.work-feature figure{background:#152023;padding:2rem}.work-feature img{width:100%;height:auto;display:block}.work-feature h2{font-size:3rem;margin:1rem 0}.work-tags{display:flex;gap:.75rem;flex-wrap:wrap;margin:1.5rem 0;font-size:.75rem;color:var(--muted)}.work-tags span{border-bottom:1px solid var(--border);padding-bottom:.5rem}@media(max-width:800px){.site-header{flex-wrap:wrap;gap:.75rem;padding-top:1.4rem;padding-bottom:1rem}.site-controls{margin-left:auto}.site-nav{order:3;width:100%;justify-content:space-between;gap:.6rem}.site-nav a{font-size:.8rem}.contact-layout,.work-feature{grid-template-columns:1fr}.site-footer{flex-wrap:wrap}.site-current{height:1000px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}.home{width:100%;min-width:0;font-family:var(--font-sans);color:var(--text);overflow-wrap:anywhere}.home h1,.home h2,.home h3{font-weight:600;text-wrap:balance}.home h1{font-size:clamp(2.65rem,6.2vw,4.8rem);line-height:1.04;letter-spacing:-.055em;max-width:12ch}.home h2{font-size:clamp(1.9rem,3.7vw,3rem);line-height:1.12;letter-spacing:-.04em;max-width:20ch}.home h3{font-size:1.2rem;line-height:1.3;letter-spacing:-.02em}.home p{font-size:1.05rem;line-height:1.7;color:var(--muted)}.home .home-label,.home-number{font:500 .7rem/1.6 var(--font-mono);letter-spacing:.09em;text-transform:uppercase}.home .home-label{margin-bottom:var(--space-lg)}.home-dot{display:inline-block;width:9px;height:9px;margin-right:10px;background:var(--accent);border-radius:50%;transition:transform .18s ease,box-shadow .18s ease}.home-dot:hover,.home-dot:focus-visible{transform:scale(1.55);box-shadow:0 0 0 5px color-mix(in srgb,var(--accent) 22%,transparent)}.home-hero{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(0,1fr);gap:var(--space-xl);align-items:center;padding:var(--space-section) 0}.home .home-intro{max-width:47ch;margin-top:var(--space-lg);font-size:1.125rem}.home-actions{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-lg);margin-top:var(--space-lg)}.home-button,.home-text-link{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-md);min-height:46px;font:600 .95rem/1.4 var(--font-sans);text-decoration:none}.home-button{padding:.85rem 1.25rem;background:var(--text);color:var(--bg);border:1px solid var(--text);border-radius:3px}.home-text-link{color:var(--text);text-decoration:underline;text-underline-offset:5px;text-decoration-thickness:1px}.home-button:hover{box-shadow:inset 0 -3px var(--accent)}.home-text-link:hover{text-decoration-color:var(--accent)}.home :is(a,button):focus-visible{outline:3px solid var(--text);outline-offset:5px}.home-ideas{border-top:2px solid var(--text);padding-top:var(--space-lg)}.home-ideas button{width:100%;display:grid;grid-template-columns:2rem minmax(0,1fr) 1rem;gap:var(--space-sm);align-items:center;padding:1.25rem 0;background:transparent;border:0;border-bottom:1px solid var(--border);color:var(--muted);text-align:left;font:500 clamp(1.2rem,2vw,1.65rem)/1.3 var(--font-sans);cursor:pointer}.home-ideas button[aria-pressed=true]{color:var(--text);font-weight:650;border-bottom:2px solid var(--accent)}.home-idea-mark{color:var(--accent)}.home .home-idea-description{margin-top:var(--space-lg);min-height:8.5em;font-size:1rem}.home-section{padding:var(--space-section) var(--space-panel)}.home-split{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-xl);align-items:start}.home-problem{background:var(--surface)}.home .home-note{margin-top:var(--space-lg);color:var(--text);font-weight:600}.home-managed{padding-inline:0}.home-care-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-lg);margin-top:var(--space-xl)}.home-care-grid article{border-top:1px solid var(--border);padding-top:var(--space-md)}.home-care-grid h3{margin:var(--space-md) 0 var(--space-sm)}.home-care-grid p{font-size:1rem}.home-technical{background:var(--technical-bg);color:var(--technical-text)}.home-technical p,.home-technical dd{color:var(--technical-muted)}.home-technical .home-label,.home-technical .home-number{color:var(--technical-accent)}.home-technical-list{margin-top:var(--space-xl)}.home-technical-list>div{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.6fr);gap:var(--space-lg);padding:var(--space-md) 0;border-top:1px solid var(--technical-border)}.home-technical-list dt{display:flex;gap:var(--space-md);align-items:baseline;font-weight:600}.home-technical-list dd{line-height:1.6}.home-work{padding-inline:0;--cardinal-red: #d62d35}.home-work-heading{display:grid;grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);gap:var(--space-lg);align-items:start;margin-bottom:var(--space-xl)}.home .home-work-project{color:var(--text);font:650 clamp(1.35rem,2.5vw,2rem)/1.1 var(--font-sans);letter-spacing:-.035em;border-left:4px solid var(--cardinal-red);padding-left:var(--space-md)}.home-work-heading h2{max-width:22ch}.home-work-visual{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);align-items:center;gap:var(--space-lg);margin:0 0 var(--space-xl);padding:var(--space-panel);background:#101719;border-bottom:6px solid var(--cardinal-red)}.home-work-visual>img{display:block;width:100%;max-width:520px;height:auto;aspect-ratio:1;object-fit:contain}.home-work-visual figcaption{min-width:0;align-self:end;padding-bottom:var(--space-md)}.home-work-visual .home-label{color:#c4cccd}.home .home-work-wordmark{color:#f5f4f0;font:800 clamp(2.3rem,5.3vw,4.75rem)/.94 var(--font-sans);letter-spacing:-.06em;margin-bottom:var(--space-lg)}.home-work-wordmark span{color:var(--cardinal-red)}.home-work-record{position:relative;margin-left:-3rem;padding:var(--space-lg);background:#f5f4f0;border-left:4px solid var(--cardinal-red)}.home-work-record .home-label{color:#525957;margin-bottom:var(--space-sm)}.home .home-work-score{font:600 clamp(.95rem,2vw,1.3rem)/1.5 var(--font-mono);color:#171918}.home-work-story{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:var(--space-xl)}.home-work-story>p{color:var(--text);font-size:clamp(1.15rem,2vw,1.4rem);line-height:1.55}.home-work .home-text-link{text-decoration-color:var(--cardinal-red)}.home-work .home-text-link:hover{text-decoration-thickness:2px}@media(max-width:650px){.home-work-heading,.home-work-story,.home-work-visual{grid-template-columns:minmax(0,1fr)}.home-work-visual{gap:var(--space-md)}.home-work-visual>img{max-width:400px;justify-self:center}.home-work-wordmark br{display:none}.home .home-work-wordmark{font-size:clamp(2.1rem,7vw,3rem)}.home-work-record{margin-left:0;padding:var(--space-md)}}.home-final{border-top:2px solid var(--text);text-align:center}.home-final h2{margin-inline:auto;max-width:22ch}.home-final p:not(.home-label){max-width:45ch;margin:var(--space-lg) auto}.home-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}@media(max-width:800px){.home-hero,.home-split{grid-template-columns:minmax(0,1fr);gap:var(--space-lg)}.home h1{max-width:15ch}.home-ideas{margin-top:var(--space-lg)}.home .home-idea-description{min-height:0}}@media(max-width:540px){.home-care-grid{grid-template-columns:minmax(0,1fr)}.home-technical-list>div{grid-template-columns:minmax(0,1fr);gap:var(--space-sm)}.home-actions{gap:var(--space-md)}.home-hero{padding-top:var(--space-xl)}}.home{overflow-wrap:normal}.home h1,.home h2,.home h3{font-weight:400}.home h1{font-size:clamp(3.05rem,5.4vw,5rem);max-width:17ch;line-height:1.06;letter-spacing:-.045em}.home h1 em{color:var(--accent);font-weight:400}.home h2{font-size:clamp(2.35rem,4.2vw,3.7rem);letter-spacing:-.035em;line-height:1.1}.home h3{font-size:1.65rem}.home-hero{grid-template-columns:minmax(0,1.65fr) minmax(0,1fr);gap:clamp(2rem,6vw,6rem);padding:clamp(3rem,7vw,6rem) 0 clamp(5rem,9vw,8rem);align-items:end}.home .home-intro{max-width:45ch;font-size:1rem;margin-top:2rem}.home .home-label,.home-number{font-size:.66rem;letter-spacing:.15em}.home-ideas{border-top:1px solid var(--border);margin-bottom:0}.home-ideas button{font:400 clamp(1.2rem,2vw,1.65rem)/1.4 var(--font-editorial);padding:1.3rem 0}.home-ideas button[aria-pressed=true]{font-weight:400;border-bottom:1px solid var(--accent)}.home .home-idea-description{min-height:9em;font-size:.88rem;line-height:1.8}.home-button{border-radius:0;padding:.9rem 1.15rem;font-size:.85rem;font-weight:500}.home-text-link{font-size:.85rem;font-weight:500}.home-problem{background:color-mix(in srgb,var(--surface) 90%,transparent);position:relative}.home .home-note{font-weight:400;font-family:var(--font-editorial);font-style:italic;font-size:1.35rem}.home-technical{background:var(--technical-bg)}.home-final{border-top:1px solid var(--border);position:relative}.home-care-grid{gap:2rem}.home-work-visual{border-bottom-width:2px}.home-work-record{margin-left:0}@media(max-width:800px){.home-hero{grid-template-columns:1fr}.home h1{max-width:17ch}.home-ideas{margin-top:1rem}.home .home-idea-description{min-height:0}}.home-final>:not(.living-current){position:relative;z-index:1}.flow-field{position:relative;isolation:isolate;width:min(1180px,100%);min-height:calc(100vh - 8rem);overflow:hidden;padding:clamp(1.5rem,4vw,4rem);border:1px solid var(--border);background:radial-gradient(circle at var(--field-x) var(--field-y),color-mix(in srgb,var(--accent) 30%,transparent) 0,transparent 25%),var(--surface)}.flow-field-grid{position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;opacity:.22;background-image:linear-gradient(var(--border) 1px,transparent 1px),linear-gradient(90deg,var(--border) 1px,transparent 1px);background-size:48px 48px;-webkit-mask-image:linear-gradient(to bottom,#000,transparent);mask-image:linear-gradient(to bottom,#000,transparent)}.flow-field-copy{max-width:690px}.flow-field-eyebrow,.flow-field-hint,.flow-field-result>p:first-child{font:500 .72rem/1.5 var(--font-mono);letter-spacing:.09em;text-transform:uppercase}.flow-field h1{max-width:12ch;margin:1.25rem 0;font-size:clamp(2.7rem,6.5vw,5.5rem);line-height:.98;letter-spacing:-.055em}.flow-field-copy>p:not(.flow-field-eyebrow,.flow-field-hint){max-width:58ch;color:var(--muted);font-size:1.08rem;line-height:1.7}.flow-field-hint{margin-top:2rem;color:var(--accent)}.flow-field-signals{position:relative;min-height:260px;margin:1rem 0}.flow-signal{position:absolute;display:grid;gap:.3rem;padding:1rem;border:1px solid var(--border);border-radius:50%;aspect-ratio:1;background:color-mix(in srgb,var(--surface) 86%,transparent);color:var(--text);cursor:pointer;place-content:center;text-align:center;font:600 .95rem/1.2 var(--font-sans);transition:transform .18s ease,background .18s ease}.flow-signal span{color:var(--accent);font:500 .65rem/1 var(--font-mono)}.flow-signal:hover,.flow-signal:focus-visible,.flow-signal[aria-pressed=true]{transform:scale(1.1);background:var(--text);color:var(--bg);outline:none}.flow-signal-1{left:8%;top:10%;width:112px}.flow-signal-2{left:44%;top:42%;width:132px}.flow-signal-3{right:8%;top:2%;width:122px}.flow-field-result{max-width:540px;margin-left:auto;padding:1.5rem;border-left:3px solid var(--accent);background:var(--bg)}.flow-field-result h2{margin:.4rem 0 .7rem;font-size:clamp(1.6rem,3vw,2.4rem)}.flow-field-result>p:last-child{color:var(--muted);line-height:1.65}.flow-field-actions{display:flex;flex-wrap:wrap;justify-content:space-between;gap:1rem;margin-top:2.5rem}.flow-field-actions a{color:var(--text);font-weight:600;text-underline-offset:5px}.flow-field-actions a:last-child{color:var(--accent)}@media(max-width:650px){.flow-field-signals{min-height:330px}.flow-signal-1{left:0}.flow-signal-2{left:32%;top:48%}.flow-signal-3{right:0}}@media(prefers-reduced-motion:reduce){.flow-field{background:var(--surface)}.flow-signal{transition:none}}.flow-field{background:var(--surface);border:0}.flow-field>:not(.living-current){position:relative;z-index:1}.flow-field .living-current{transform:translate(calc((var(--field-x) - 50%) * .12));opacity:1}.flow-signal{border-radius:2px;aspect-ratio:auto;min-height:90px}.flow-signal:focus-visible{outline:2px solid var(--accent);outline-offset:5px}.flow-signal[aria-pressed=true] span{color:inherit}.flow-field h1{line-height:1.08}.flow-signal:hover span,.flow-signal:focus-visible span{color:inherit}@media(max-width:450px){.flow-field-signals{display:flex;flex-direction:column;gap:1.25rem;min-height:0;margin:2rem 0}.flow-signal{position:static;min-height:82px;width:70%;transform:none!important}.flow-signal-2{align-self:flex-end}.flow-signal-3{align-self:center}}
