@layer reset{*,:before,:after{box-sizing:border-box}html{-moz-text-size-adjust:none;text-size-adjust:none;hanging-punctuation:first last}body,:where(h1,h2,h3,h4,p,ul,ol,dl,dd,figure,blockquote){margin:0}img,picture,svg{block-size:auto;max-inline-size:100%;display:block}}@layer tokens{:root{color-scheme:light dark;--color-bg:light-dark(#dce3df,#161c21);--color-surface:light-dark(#fff,#212a32);--color-text:light-dark(#252e37,#e6ebe8);--color-heading:light-dark(#252e37,#fff);--color-text-muted:light-dark(#3b4652,#b9c3cc);--color-text-subtle:light-dark(#515e6b,#9aa6b2);--color-accent:light-dark(#a3350d,#f2865f);--color-accent-hover:light-dark(#7a2709,#f8b293);--color-rule:light-dark(#9aa6b2,#3a4550);--color-rule-subtle:light-dark(#c2ccc6,#3a4550);--color-inverse-bg:light-dark(#252e37,#0e1317);--color-inverse-text:light-dark(#fff,#e6ebe8);--color-inverse-muted:light-dark(#d5dbe1,#b9c3cc);--color-inverse-rule:light-dark(#515e6b,#3a4550);--color-button:light-dark(#252e37,#e6ebe8);--color-button-text:light-dark(#fff,#161c21);--color-cta:#d33f12;--color-cta-text:#fff;--font-sans:system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--step-0:clamp(1rem, .9583rem + .1852vw, 1.125rem);--step-1:clamp(1.125rem, 1.0625rem + .2778vw, 1.3125rem);--step-2:clamp(1.25rem, 1.1667rem + .3704vw, 1.5rem);--step-3:clamp(1.5rem, 1.25rem + 1.1111vw, 2.25rem);--step-4:clamp(1.875rem, 1.5833rem + 1.2963vw, 2.75rem);--step-5:clamp(2.25rem, 1.4167rem + 3.7037vw, 4.75rem);--space-section:clamp(3.5rem, 2.5rem + 4.4444vw, 6.5rem);--gutter:clamp(1.25rem, .8333rem + 1.8519vw, 2.5rem);--step--1:.9375rem;--space-xs:.5rem;--space-s:1rem;--space-m:1.5rem;--space-l:2.5rem;--space-xl:3.5rem;--container:77.5rem;--measure:40rem;--radius:.5rem;--radius-s:.25rem;--tap:2.75rem}@supports (width:calc(1px * progress(100vw, 360px, 1440px))){:root{--progress:progress(100vw, 22.5rem, 90rem);--step-0:calc(1rem + .125rem * var(--progress));--step-1:calc(1.125rem + .1875rem * var(--progress));--step-2:calc(1.25rem + .25rem * var(--progress));--step-3:calc(1.5rem + .75rem * var(--progress));--step-4:calc(1.875rem + .875rem * var(--progress));--step-5:calc(2.25rem + 2.5rem * var(--progress));--space-section:calc(3.5rem + 3rem * var(--progress));--gutter:calc(1.25rem + 1.25rem * var(--progress))}}}@layer base{@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}@view-transition{navigation:auto}}body{min-block-size:100dvh;font-family:var(--font-sans);font-size:var(--step-0);color:var(--color-text);background:var(--color-bg);-webkit-font-smoothing:antialiased;line-height:1.55}h1,h2,h3{color:var(--color-heading);text-wrap:balance;font-weight:400}h1{font-size:var(--step-5);letter-spacing:-.02em;line-height:1.04}h2{font-size:var(--step-4);letter-spacing:-.01em;line-height:1.12}h3{font-size:var(--step-2);line-height:1.25}p,li,dd{text-wrap:pretty}a{color:var(--color-accent);text-underline-offset:.18em;text-decoration-thickness:from-font;&:hover{color:var(--color-accent-hover)}}:focus-visible{outline:3px solid var(--color-accent);outline-offset:3px;border-radius:var(--radius-s)}[id]{scroll-margin-block-start:var(--space-m)}::selection{background:color-mix(in oklch, var(--color-accent) 30%, transparent)}@media print{body{color:#000;background:0 0}.skip-link,.site-nav,.contact{display:none}}}@layer layout{.container{max-inline-size:var(--container);padding-inline:var(--gutter);margin-inline:auto}.section{padding-block:var(--space-section)}.section--surface{background:var(--color-surface)}.section--inverse{--color-heading:var(--color-inverse-text);--color-text-muted:var(--color-inverse-muted);--color-rule:var(--color-inverse-rule);color:var(--color-inverse-text);background:var(--color-inverse-bg)}.split{gap:var(--space-l) var(--space-xl);flex-wrap:wrap;display:flex;&>:first-child{flex:18rem}&>:last-child{flex:2 min(100%,34rem)}}.flow>*+*{margin-block-start:var(--flow-space,1em)}}@layer components{.skip-link{z-index:10;padding:var(--space-xs) var(--space-s);color:var(--color-button-text);background:var(--color-button);border-radius:var(--radius-s);position:absolute;inset-block-start:var(--space-xs);inset-inline-start:var(--space-xs);translate:0 -200%;&:focus-visible{translate:0}}.visually-hidden:not(:focus,:active){clip-path:inset(50%);white-space:nowrap;block-size:1px;inline-size:1px;position:absolute;overflow:hidden}.eyebrow{font-size:var(--step--1);letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-subtle)}.muted{color:var(--color-text-muted)}.site-header{align-items:center;gap:var(--space-xs) var(--space-m);padding-block:var(--space-s);flex-wrap:wrap;display:flex}.site-logo{min-block-size:var(--tap);font-size:var(--step-1);color:var(--color-text);align-items:center;gap:.75rem;text-decoration:none;display:inline-flex;& svg{fill:currentColor;inline-size:3rem}}.site-nav{margin-inline-start:auto;& ul{flex-wrap:wrap;padding:0;list-style:none;display:flex}& a{min-block-size:var(--tap);color:var(--color-text);align-items:center;padding-inline:.75rem;text-decoration:none;display:inline-flex;&:hover,&[aria-current=page]{text-decoration:underline}}}.button{min-block-size:var(--tap);color:var(--color-button-text);background:var(--color-button);border-radius:var(--radius-s);justify-content:center;align-items:center;padding:.875rem 1.75rem;text-decoration:none;display:inline-flex;&:hover{color:var(--color-button-text);background:color-mix(in oklch, var(--color-button) 85%, var(--color-bg))}}.button--cta{color:var(--color-cta-text);background:var(--color-cta);&:hover{color:var(--color-cta-text);background:color-mix(in oklch, var(--color-cta) 85%, black)}}.intro{padding-block:var(--space-l) var(--space-section);& h1{max-inline-size:18em;margin-block-start:var(--space-l)}}.byline{align-items:center;gap:var(--space-s);color:var(--color-text-muted);display:flex;& img{aspect-ratio:1;border-radius:50%;inline-size:4rem}}.intro__footer{justify-content:space-between;align-items:end;gap:var(--space-l);flex-wrap:wrap;margin-block-start:var(--space-l);display:flex;& p{max-inline-size:var(--measure);font-size:var(--step-1);color:var(--color-text-muted);flex:min(100%,32rem)}}.stats{gap:var(--space-m);grid-template-columns:repeat(auto-fit,minmax(min(100%,9rem),1fr));display:grid;& dt{font-size:var(--step-4);color:var(--color-accent);line-height:1}& dd{color:var(--color-text-muted);margin-block-start:var(--space-xs)}}.werk{container-type:inline-size}.featured{background:var(--color-surface);border-radius:var(--radius);margin-block-start:var(--space-l);display:grid;position:relative;overflow:hidden;& img{aspect-ratio:16/10;object-fit:cover;object-position:top;inline-size:100%}& .featured__body{align-content:center;gap:var(--space-s);padding:var(--space-l) var(--gutter);display:grid}& h3{font-size:var(--step-3)}@container (inline-size>50rem){grid-template-columns:1.2fr 1fr}}.werk-grid{gap:var(--space-l) var(--space-m);grid-template-columns:repeat(2,minmax(0,1fr));margin-block-start:var(--space-l);padding:0;list-style:none;display:grid;@container (inline-size>40rem){grid-template-columns:repeat(3,minmax(0,1fr))}@container (inline-size>60rem){grid-template-columns:repeat(4,minmax(0,1fr))}}.card{align-content:start;gap:.25rem;display:grid;position:relative;& img{aspect-ratio:16/10;object-fit:cover;object-position:top;background:var(--color-surface);border-radius:var(--radius);inline-size:100%;margin-block-end:.5rem;transition:translate .2s}& h3{font-size:var(--step-1)}& h3 a{color:inherit;text-decoration:none;&:after{content:"";position:absolute;inset:0}&:focus-visible{outline:none}}& p{font-size:var(--step--1);color:var(--color-text-muted)}&:has(a:hover) h3{text-decoration:underline}&:has(a:focus-visible){outline:3px solid var(--color-accent);outline-offset:6px;border-radius:var(--radius)}@media (prefers-reduced-motion:no-preference){&:has(a:hover) img{translate:0 -.25rem}}}.clients{gap:var(--space-xs) var(--space-l);border-block-start:1px solid var(--color-rule);flex-wrap:wrap;margin-block-start:var(--space-xl);padding-block-start:var(--space-m);display:flex;& h3{font-size:var(--step--1);letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-muted);flex:0 0 12rem}& p{color:var(--color-text-muted);flex:min(100%,36rem)}}.columns{gap:var(--space-l) var(--space-m);grid-template-columns:repeat(auto-fit,minmax(min(100%,18rem),1fr));margin-block-start:var(--space-l);display:grid}.question{align-content:start;gap:var(--space-s);border-block-start:1px solid var(--color-rule);padding-block-start:var(--space-m);display:grid;& p{color:var(--color-text-muted)}}.service{align-content:start;gap:var(--space-xs);padding:var(--space-l) var(--space-m);background:var(--color-surface);border-radius:var(--radius);display:grid;& h3{font-size:var(--step-3)}& p{color:var(--color-text-muted)}}.talks{padding:0;list-style:none;& li{justify-content:space-between;gap:0 var(--space-s);border-block-end:1px solid var(--color-rule-subtle);flex-wrap:wrap;padding-block:.875rem;display:flex}& span{color:var(--color-text-subtle)}}.contact{align-items:center;gap:var(--space-l);flex-wrap:wrap;display:flex;& h2{font-size:var(--step-5);flex:2 min(100%,34rem)}}.site-footer{align-items:center;gap:0 var(--space-l);padding-block:var(--space-m);font-size:var(--step--1);color:var(--color-text-muted);border-block-start:1px solid var(--color-rule-subtle);flex-wrap:wrap;display:flex;& ul{gap:0 var(--space-m);flex-wrap:wrap;padding:0;list-style:none;display:flex}& a{min-block-size:var(--tap);align-items:center;display:inline-flex}& ul:last-child{margin-inline-start:auto}}.case-header{padding-block:var(--space-l) var(--space-xl);& h1{max-inline-size:20em;margin-block-start:var(--space-m)}}.breadcrumb ol{font-size:var(--step--1);flex-wrap:wrap;gap:.5ch;padding:0;list-style:none;display:flex;& li+li:before{content:"/";color:var(--color-text-subtle);margin-inline-end:.5ch}}.case-meta{gap:var(--space-m);border-block-start:1px solid var(--color-rule);grid-template-columns:repeat(auto-fit,minmax(min(100%,9rem),1fr));margin-block-start:var(--space-l);padding-block-start:var(--space-m);display:grid;& dt{font-size:var(--step--1);color:var(--color-text-subtle)}}.case-image{aspect-ratio:16/10;object-fit:cover;object-position:top;background:var(--color-surface);border-radius:var(--radius);inline-size:100%}.prose{max-inline-size:46rem;& h2{--flow-space:2.5em}& h3{--flow-space:2em}& ul,& ol{padding-inline-start:1.25em}& li+li{margin-block-start:.5em}& section>*+*{margin-block-start:1em}& section+section{margin-block-start:2.5em}}}@page{size:auto;margin:1.5cm}
