::view-transition-old(root),::view-transition-new(root){animation-duration:.22s;animation-timing-function:ease}::view-transition-old(root){animation-name:fade-out}::view-transition-new(root){animation-name:fade-in}@keyframes fade-out{0%{opacity:1}to{opacity:0}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@font-face{font-family:Avenir Next;src:url(/fonts/AvenirNextLTPro-Regular.otf)format("opentype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Avenir Next;src:url(/fonts/AvenirNextLTPro-Bold.otf)format("opentype");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:Avenir Next;src:url(/fonts/AvenirNextLTPro-It.otf)format("opentype");font-weight:400;font-style:italic;font-display:swap}@font-face{font-family:"Source Sans 3 Greek";src:url(/fonts/source-sans-3-greek-400-normal.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap;unicode-range:U+370-3FF,U+1F??}@font-face{font-family:"Source Sans 3 Greek";src:url(/fonts/source-sans-3-greek-700-normal.woff2)format("woff2");font-weight:700;font-style:normal;font-display:swap;unicode-range:U+370-3FF,U+1F??}@font-face{font-family:"Source Sans 3 Greek";src:url(/fonts/source-sans-3-greek-400-italic.woff2)format("woff2");font-weight:400;font-style:italic;font-display:swap;unicode-range:U+370-3FF,U+1F??}:root{--color-background:#faf8f5;--color-surface:#fff;--color-text:#243348;--color-accent:#415d81;--color-muted:#5f6878;--color-stone:#f1ece4;--color-line:#e4e0da;--color-about:#e4eaec;--ink-tekst:#2f6690;--ink-vertalen:#94503f;--ink-subsidieadvies:#7f1734;--ink-literair:#415d81;--dot-idle:#c9d3e3;--dot-active:var(--color-accent);--ease-out:cubic-bezier(.2, .7, .2, 1);--font-primary:"Avenir Next", Arial, sans-serif;--space-xs:.5rem;--space-sm:1rem;--space-md:2rem;--space-lg:4rem;--space-xl:8rem;--page-padding:3rem;--max-width:1400px;--label-gap:2.5rem}:lang(el){--font-primary:"Source Sans 3 Greek", "Avenir Next", Arial, sans-serif}@media (width<=700px){:root{--space-md:1.5rem;--space-lg:2.5rem;--space-xl:4rem;--label-gap:1.5rem;--page-padding:1.25rem}}@media (width>=900px){:root{--inset-column:min(100% - (var(--page-padding) * 2) - (var(--space-lg) * 2), 1240px);--card-gap:9cqi}}*,:before,:after{box-sizing:border-box}html{scrollbar-width:none;-ms-overflow-style:none;font-size:16px}html::-webkit-scrollbar{display:none}*{scrollbar-width:none;-ms-overflow-style:none}::-webkit-scrollbar{display:none}body{background:var(--color-background);color:var(--color-text);font-family:var(--font-primary);-webkit-font-smoothing:antialiased;flex-direction:column;margin:0;padding:0;font-weight:400;display:flex}html,body{height:100%;overflow-x:hidden}a{color:inherit;text-decoration:none}img{max-width:100%;height:auto;display:block}h1,h2,h3,p{margin:0}.site-header{width:min(100% - (var(--page-padding) * 2), var(--max-width));padding-top:var(--space-md);padding-bottom:var(--space-md);justify-content:space-between;align-items:center;margin-inline:auto;display:flex}.site-header-bar{border-bottom:1px solid var(--color-line)}.logo img{width:200px;height:auto}@media (width>=900px){.logo img{width:240px}}.header-right{align-items:center;gap:var(--space-lg);display:flex}.navigation{font-family:var(--font-primary);letter-spacing:.04em;align-items:center;gap:clamp(1.5rem,3vw,3rem);font-size:1.125rem;display:flex}.navigation a,.mobile-nav-links a{color:color-mix(in srgb, var(--color-text) 55%, var(--color-background));font-weight:400;transition:color .25s}.navigation a[aria-current=page],.navigation a:hover,.mobile-nav-links a[aria-current=page],.mobile-nav-links a:hover{color:var(--color-text)}.navigation a:focus-visible,.mobile-nav-links a:focus-visible,.lang-switch a:focus-visible,.lang-switch-mobile a:focus-visible{outline:2px solid var(--color-accent);outline-offset:4px;border-radius:2px}.lang-switch{align-items:center;gap:var(--space-xs);padding-left:var(--space-lg);border-left:1px solid var(--color-line);letter-spacing:.04em;color:var(--color-muted);font-size:.8rem;display:flex}.lang-switch a,.lang-switch-mobile a{color:var(--color-muted);transition:color .25s}.lang-switch a:hover,.lang-switch-mobile a:hover{color:var(--color-text)}.lang-switch a[aria-current=true],.lang-switch-mobile a[aria-current=true]{color:var(--color-text);font-weight:600}.lang-switch-sep{color:var(--color-line)}.menu-toggle{cursor:pointer;z-index:101;background:0 0;border:none;width:40px;height:40px;padding:8px;display:none;position:relative}.menu-icon{background:var(--color-text);border-radius:1px;width:24px;height:1.5px;margin:auto;transition:transform .25s,opacity .25s,background .25s;display:block;position:relative}.menu-icon:before,.menu-icon:after{content:"";background:var(--color-text);border-radius:1px;width:24px;height:1.5px;transition:transform .25s,opacity .25s;position:absolute;left:0}.menu-icon:before{top:-8px}.menu-icon:after{top:8px}.menu-close-toggle{cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;width:40px;height:40px;padding:8px;display:flex}.menu-close-toggle .menu-icon{background:0 0}.menu-close-toggle .menu-icon:before{transform:translateY(8px)rotate(45deg)}.menu-close-toggle .menu-icon:after{transform:translateY(-8px)rotate(-45deg)}.mobile-nav{background-color:var(--color-background);z-index:999;opacity:0;visibility:hidden;flex-direction:column;justify-content:space-between;width:100vw;height:100dvh;transition:opacity .35s,visibility .35s;display:flex;position:fixed;inset:0;overflow:hidden}.mobile-nav-header{width:100%;padding:var(--space-md) var(--page-padding);box-sizing:border-box;justify-content:space-between;align-items:center;display:flex}.mobile-nav-inner{text-align:center;padding-top:var(--space-md);padding-bottom:calc(var(--space-xl) + env(safe-area-inset-bottom,24px));box-sizing:border-box;flex-direction:column;flex:1;justify-content:space-between;align-items:center;width:100%;max-width:520px;margin-inline:auto;display:flex}.mobile-nav-links{align-items:center;gap:var(--space-md);margin-top:calc(var(--space-lg) * 1.5);flex-direction:column;margin-bottom:auto;display:flex}.mobile-nav-links a{-webkit-tap-highlight-color:transparent;text-decoration:none;display:inline-block}.mobile-nav-links .nav-label{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;letter-spacing:-.015em;color:inherit;font-size:clamp(1.8rem,8vw,2.4rem);font-weight:400;line-height:1.2}.mobile-nav-footer{align-items:center;gap:var(--space-xs);padding-top:var(--space-lg);flex-direction:column;margin-top:auto;display:flex}.mobile-nav-home{display:flex}.mobile-nav-seal{object-fit:contain;opacity:.85;width:44px;height:44px}.mobile-nav-meta{letter-spacing:.08em;text-transform:uppercase;color:var(--color-muted);flex-direction:column;font-size:.75rem;line-height:1.35;display:flex}.mobile-nav-meta .meta-title{color:var(--color-text);font-weight:600}body.mobile-nav-open .mobile-nav{opacity:1;visibility:visible}@media (width<=1100px){.header-right{display:none}.menu-toggle{display:block}.mobile-nav{display:flex}.site-header-bar{z-index:100;background:var(--color-background);width:100%;position:sticky;top:0;box-shadow:0 4px 6px -6px #00000026}.site-header{box-shadow:none}}body.mobile-nav-open .site-header>.menu-toggle{opacity:0;pointer-events:none}.lang-switch-mobile{align-items:center;gap:var(--space-xs);letter-spacing:.04em;flex-direction:row;font-size:.8rem;display:flex}.selected-projects{padding-block:var(--space-xl);width:min(100% - (var(--page-padding) * 2), var(--max-width));margin-inline:auto}.section-label,.selected-projects h2,.recommendations h2{text-transform:uppercase;letter-spacing:.2em;margin-bottom:var(--label-gap);font-size:.8rem;font-weight:600}.selected-projects-grid{gap:var(--space-xl);grid-template-columns:repeat(3,1fr);display:grid}.selected-projects-footer{margin-top:var(--space-lg);text-align:right}.selected-projects-footer a{color:var(--color-muted);font-size:.9rem;transition:color .2s}.selected-projects-footer a:hover{color:var(--color-text)}@media (width>=900px){.selected-projects{width:var(--inset-column);container-type:inline-size}.selected-projects-grid{gap:var(--card-gap)}}.about-field{background:var(--color-about);width:100%;padding-left:max(var(--page-padding), calc((100% - var(--max-width)) / 2));align-items:start;gap:var(--space-xl);grid-template-columns:1fr 1fr;padding-right:0;display:grid}.about-image img{object-fit:cover;border-radius:0;width:100%;height:100%;display:block}.about-content{padding-block:var(--space-lg)}.about-bio p{margin-bottom:var(--space-md);font-size:1.1rem;line-height:1.7}.about-bio p:last-child{margin-bottom:0}@media (width>=900px){.about-field{min-height:calc(100svh - var(--header-h,130px))}.about-content{padding-top:var(--space-xl);padding-left:max(var(--space-md), 100% - 560px)}.about-image{align-self:stretch}.about-image img{object-fit:cover;object-position:center top;height:100%}}.about-image:has(.portrait-credit){position:relative}.portrait-credit,.image-credit{right:var(--space-sm);bottom:var(--space-sm);letter-spacing:.02em;color:#ffffffe6;text-shadow:0 0 4px #00000073,0 1px 2px #00000059;pointer-events:none;margin:0;font-size:.75rem;line-height:1.3;position:absolute}.image-credit{text-shadow:none;background:#2433488c;border-radius:2px;padding:2px 6px;display:inline-block}@media (width<=899.98px){.about-field{grid-template-columns:1fr;gap:0;padding:0}.about-image{aspect-ratio:4/5;order:1}.about-content{max-width:none;padding-block:0;padding:var(--space-lg);order:2}}@media (width<=700px){.about-content{padding-inline:var(--page-padding)}}.portfolio-page{width:min(100% - (var(--page-padding) * 2), var(--max-width));padding-block:var(--space-lg) var(--space-xl);margin-inline:auto}.projects-grid{column-gap:clamp(2.5rem,5vw,6rem);row-gap:var(--space-lg);grid-template-columns:minmax(0,1fr);display:grid}@media (width>=600px){.projects-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width>=1100px){.projects-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width>=900px){.portfolio-page{width:var(--inset-column);container-type:inline-size}.projects-grid{column-gap:var(--card-gap);row-gap:calc(var(--card-gap) * 2 / 3)}}.project-card{display:block}.project-card-image{aspect-ratio:4/5;width:100%;margin-bottom:var(--space-sm);overflow:hidden}.project-card-image img{object-fit:cover;object-position:center;width:100%;height:100%;transition:opacity .25s}.project-card:hover .project-card-image img{opacity:.75}.project-card-category{text-transform:uppercase;letter-spacing:.1em;color:var(--cat-ink,var(--color-muted));margin-bottom:var(--space-xs);font-size:.75rem}.project-card-title{font-size:1rem;font-weight:400;line-height:1.4}.project-card-excerpt{margin-top:var(--space-xs);color:var(--color-muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.85rem;line-height:1.5;display:-webkit-box;overflow:hidden}@media (width<=899.98px){.portfolio-page{width:100%;padding:var(--space-lg) var(--page-padding);background:var(--color-stone);flex:1 0 auto}.portfolio-page .projects-grid{grid-template-columns:minmax(0,1fr);row-gap:clamp(2.5rem,12vw,3.5rem)}.portfolio-page .project-card{--stagger-cover:55%;grid-template-columns:var(--stagger-cover) minmax(0, 1fr);grid-template-rows:1fr auto auto;column-gap:1rem;display:grid}.portfolio-page .project-card-image{grid-area:1/1/-1;margin-bottom:0}.portfolio-page .project-card-category,.portfolio-page .project-card-title{overflow-wrap:break-word;grid-column:2;min-width:0}.portfolio-page .project-card-category{grid-row:2}.portfolio-page .project-card-title{grid-row:3}.portfolio-page .project-card:nth-child(2n){grid-template-columns:minmax(0, 1fr) var(--stagger-cover);text-align:right}.portfolio-page .project-card:nth-child(2n) .project-card-image{grid-column:2}.portfolio-page .project-card:nth-child(2n) .project-card-category,.portfolio-page .project-card:nth-child(2n) .project-card-title{grid-column:1}.portfolio-page .project-card-excerpt{display:none}}@media (width<=359.98px){.portfolio-page .project-card{--stagger-cover:50%}.portfolio-page .project-card-category,.portfolio-page .project-card-title{overflow-wrap:anywhere;hyphens:auto}}.project-detail-field{background:var(--color-stone);width:100%;height:100vh;padding-left:0;padding-right:max(var(--page-padding), calc((100% - var(--max-width)) / 2));align-items:stretch;gap:var(--space-xl);flex-shrink:0;grid-template-columns:1fr 1fr;display:grid;overflow:hidden}.project-detail-image{height:100%;min-height:0;overflow:hidden}.project-detail-image img{object-fit:cover;width:100%;height:100%;display:block}.project-detail-text{scrollbar-width:none;-ms-overflow-style:none;max-width:560px;height:100%;min-height:0;padding-block:var(--space-xl);overflow-y:auto}.project-detail-text::-webkit-scrollbar{display:none}.project-detail-text h1{margin-bottom:var(--space-md);letter-spacing:-.01em;text-wrap:balance;font-size:clamp(1.8rem,3vw,2.6rem);font-weight:400;line-height:1.15}@property --text-fade{syntax:"<length>";inherits:false;initial-value:0}.project-detail-text{--text-fade:0px;-webkit-mask-image:linear-gradient(to bottom, #000 calc(100% - var(--text-fade)), #0000008c calc(100% - var(--text-fade) * .55), #00000026 calc(100% - 1.5rem), transparent calc(100% - 1rem));mask-image:linear-gradient(to bottom, #000 calc(100% - var(--text-fade)), #0000008c calc(100% - var(--text-fade) * .55), #00000026 calc(100% - 1.5rem), transparent calc(100% - 1rem));transition:--text-fade .3s}.project-detail-text.has-more{--text-fade:9rem}.project-detail-cue{display:none}@media (width>=900px){.project-detail-text,.project-detail-cue{grid-area:1/2}.project-detail-cue{width:100%;max-width:560px;color:var(--cat-ink,var(--color-muted));pointer-events:none;opacity:0;justify-content:center;place-self:end start;padding-bottom:1.25rem;transition:opacity .3s;display:flex}.project-detail-text.has-more+.project-detail-cue{opacity:1}}@media (prefers-reduced-motion:reduce){.project-detail-text,.project-detail-cue{transition:none}}.project-detail-category{text-transform:uppercase;letter-spacing:.1em;color:var(--cat-ink,var(--color-muted));margin-bottom:var(--space-sm);font-size:.8rem}.project-detail-text h1:has(+.project-date){margin-bottom:var(--space-xs)}.project-date{color:var(--color-muted);margin-bottom:var(--space-md);font-size:.9rem;display:block}.project-detail-body p{margin-bottom:var(--space-md);font-size:1.05rem;line-height:1.7}.project-detail-body a,.about-bio a,.services-section-body a{text-underline-offset:3px;text-decoration:underline 1px}@media (width<=899.98px){.project-detail-field{grid-template-columns:minmax(0,1fr);gap:0;height:auto;padding:0}.project-detail-image{display:none}.project-detail-text{min-width:0;max-width:none;height:auto;padding:var(--space-lg);order:2;overflow-y:visible}.project-slideshow{min-width:0;padding-bottom:var(--space-lg);order:3;display:block}.project-slideshow-track{scroll-snap-type:x mandatory;overscroll-behavior-x:contain;scrollbar-width:none;display:flex;overflow-x:auto}.project-slideshow-track::-webkit-scrollbar{display:none}.project-slideshow-slide{height:var(--slideshow-h,60svh);scroll-snap-align:start;scroll-snap-stop:always;background:var(--color-stone);flex:0 0 100%}.project-slideshow-slide img{object-fit:contain;width:100%;height:100%;display:block}.project-slideshow-dots{margin-top:var(--space-sm);justify-content:center;display:flex}}@media (width>=900px){.project-slideshow{display:none}}@media (width<=700px){.project-detail-text{padding-inline:var(--page-padding)}}.related-projects{padding-block:var(--space-xl);width:min(100% - (var(--page-padding) * 2), var(--max-width));margin-inline:auto}.related-header{justify-content:space-between;align-items:center;gap:var(--space-md);margin-bottom:var(--label-gap);display:flex}.related-controls{gap:var(--space-xs);display:flex}.related-projects h2{text-transform:uppercase;letter-spacing:.15em;margin:0;font-size:.85rem;font-weight:600}.related-projects-wrapper{position:relative}.related-projects-container{scroll-snap-type:x mandatory;scrollbar-width:none;-ms-overflow-style:none;width:100%;padding-bottom:var(--space-xs);overflow-x:auto}.related-projects-container::-webkit-scrollbar{display:none}.related-projects-track{grid-auto-flow:column;grid-auto-columns:calc((100% - (var(--space-xl) * 2)) / 3);gap:var(--space-xl);display:grid}.related-slide{scroll-snap-align:start;width:100%}@media (width>=900px){.related-projects{width:var(--inset-column);container-type:inline-size}.related-projects-track{grid-auto-columns:calc((100% - (var(--card-gap) * 2)) / 3);gap:var(--card-gap)}}.related-footer{display:none}@media (width<=899.98px){.selected-projects-grid,.related-projects-container{scroll-snap-type:x mandatory;scrollbar-width:none;overflow-x:auto}.selected-projects-grid::-webkit-scrollbar{display:none}.selected-projects-grid,.related-projects-track{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:calc((100% - var(--space-sm)) / 2);gap:var(--space-sm)}.selected-projects-grid>.project-card,.related-slide{scroll-snap-align:start}.selected-projects .project-card-title,.related-projects .project-card-title{font-size:.9rem}.selected-projects .project-card-excerpt,.related-projects .project-card-excerpt,.related-controls{display:none}.project-row-dots:not([hidden]){margin-top:var(--space-sm);justify-content:center;display:flex}.related-footer{margin-top:var(--space-md);text-align:right;display:block}.related-footer a{color:var(--color-muted);font-size:.9rem}}.project-row-dots{display:none}.services-page{--services-gap:clamp(2rem, 5vw, 6rem);padding-block:var(--space-lg) 0}.services-card-label,.services-section-title{color:var(--service-ink,var(--color-text))}.services-section-body{gap:1em;display:grid}.services-section-body p{margin:0;line-height:1.75}.services-overview{width:min(100% - (var(--page-padding) * 2), var(--max-width));gap:var(--services-gap);grid-template-columns:repeat(3,minmax(0,1fr));margin-inline:auto;display:grid}.services-card{text-align:center;color:var(--color-text);align-content:start;justify-items:center;gap:1.4rem;text-decoration:none;display:grid}.services-card:focus-visible{outline:2px solid var(--service-ink,var(--color-accent));outline-offset:8px;border-radius:8px}.services-card-image{width:min(100%,280px)}.services-card-image img{aspect-ratio:1;object-fit:contain;width:100%;transition:transform .5s var(--ease-out);display:block}.services-card:hover .services-card-image img{transform:scale(1.03)}.services-card-label{letter-spacing:.18em;text-transform:uppercase;font-size:.85rem;font-weight:700}.services-card-intro{max-width:34ch;margin:0;line-height:1.6}.services-card-hint{letter-spacing:.1em;color:var(--service-ink,var(--color-accent));opacity:0;transition:opacity .3s var(--ease-out), transform .3s var(--ease-out);font-size:.8rem;transform:translateY(-4px)}.services-card:hover .services-card-hint,.services-card:focus-visible .services-card-hint{opacity:1;transform:none}.services-stage,.services-stack{display:none}.services-section{gap:1.4rem;display:grid}.services-section-title{letter-spacing:-.01em;margin:0;font-size:clamp(1.7rem,3vw,2.3rem);font-weight:400;line-height:1.15}.services-section-intro,.services-tabs,.services-pagers,.services-title-arrow{display:none}.services-section-head{display:contents}.services-section-intro{margin:0;font-size:1.12rem;line-height:1.65}.services-contact{width:max-content;color:var(--service-ink,var(--color-accent));letter-spacing:.02em;font-size:.95rem;text-decoration:none}.services-contact:hover{text-decoration:underline}@media (width>=900px){.services-page{--services-stage-top:10vh;--services-fade:.7s}.services-detail{column-gap:var(--services-gap);padding:clamp(2.5rem, 6vw, 5.5rem) clamp(1.5rem, 5vw, 4.5rem) var(--space-lg);background:var(--color-stone);grid-template-columns:minmax(0,5fr) minmax(0,7fr);margin-top:clamp(4.5rem,9vw,7.5rem);transition:background-color .4s;display:grid}.services-detail[data-active=vertalen]{background:var(--color-background)}.services-stage{top:var(--services-stage-top);align-self:start;justify-items:center;gap:1.75rem;display:grid;position:sticky}.services-stack{width:min(100%,420px);display:grid}.services-stack img{aspect-ratio:1;object-fit:contain;opacity:0;width:100%;transition:opacity var(--services-fade) var(--ease-out), transform var(--services-fade) var(--ease-out);grid-area:1/1;transform:scale(.97)}.services-stack img.is-active{opacity:1;transform:none}.services-dots{gap:.9rem;display:flex}.services-dots a{opacity:.35;width:38px;transition:opacity .3s var(--ease-out), transform .3s var(--ease-out);border-radius:50%;display:block}.services-dots a:hover{opacity:.7}.services-dots a.is-active{opacity:1;transform:scale(1.08)}.services-dots a:focus-visible{outline:2px solid var(--color-accent);outline-offset:3px}.services-dots img{aspect-ratio:1;object-fit:contain;width:100%;display:block}.services-sections{gap:clamp(6rem,14vw,10rem);padding-block:4vh 0;display:grid}.services-section{max-width:60ch;scroll-margin-top:var(--services-stage-top)}.services-section:last-child{min-height:calc(60vh - var(--space-lg))}}@media (prefers-reduced-motion:reduce){.services-card-image img,.services-card-hint,.services-detail,.services-stack img,.services-dots a{transition-duration:0s}}@media (width<=899.98px){.services-page{padding-top:0}.services-overview{display:none}.services-detail{background:var(--color-background);margin-top:0}.services-section{padding-block:var(--space-lg);padding-inline:max(var(--page-padding), calc((100% - 60ch) / 2))}.services-section-intro{display:block}.services-section-title{text-align:center}.has-js .services-section-head{grid-template-columns:1.75rem minmax(0,1fr) 1.75rem;align-items:center;display:grid}.has-js .services-title-arrow{width:44px;height:44px;font:inherit;color:color-mix(in srgb, var(--service-ink) 75%, var(--color-background));cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:0;grid-row:1;justify-content:center;align-items:center;margin-block:-.5rem;padding:0;font-size:1.5rem;line-height:1;display:flex}.has-js .services-title-arrow[data-dir=prev]{grid-column:1;justify-self:start;margin-inline-start:-16px}.has-js .services-title-arrow[data-dir=next]{grid-column:3;justify-self:end;margin-inline-end:-16px}.has-js .services-section-head .services-section-title{grid-area:1/2}.has-js .services-tabs{padding:var(--space-lg) var(--page-padding);scroll-margin-top:calc(var(--header-h,70px) + var(--space-sm));justify-content:center;align-items:center;gap:1rem;display:flex}.services-tab{cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:0;border-radius:50%;flex:none;width:48px;padding:0}.services-tab[data-pos=prev]{order:1}.services-tab[data-pos=current]{cursor:default;order:2;width:120px}.services-tab[data-pos=next]{order:3}.services-tab[data-pos=none]{display:none}.services-tab:focus-visible{outline:2px solid var(--color-accent);outline-offset:3px}.services-tab img{aspect-ratio:1;object-fit:contain;border-radius:50%;width:100%;display:block}.has-js .services-sections,.has-js .services-pagers{touch-action:pan-y}.has-js .services-sections{padding-block:var(--space-lg);background:var(--color-stone)}.has-js .services-section{padding-block:0}.has-js .services-section:not(.is-current),.has-js .services-pager:not(.is-current){display:none}.has-js .services-pagers{padding-inline:max(var(--page-padding), calc((100% - 60ch) / 2));padding-bottom:var(--space-lg);background:var(--color-background);display:block}.has-js .services-pager{gap:var(--space-sm);padding-top:var(--space-lg);grid-template-columns:1fr 1fr;display:grid}.services-pager-item{max-width:100%;min-height:44px;padding:var(--space-xs) 0;font:inherit;color:color-mix(in srgb, var(--service-ink) 75%, var(--color-background));cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:0;grid-template-columns:1fr 56px 1fr;justify-self:start;row-gap:.4rem;display:grid}.services-pager-item[data-dir=next]{justify-self:end}.services-pager-item:focus-visible{outline:2px solid var(--service-ink,var(--color-accent));outline-offset:4px}.services-pager-arrow{grid-area:1/1;justify-self:end;align-items:center;height:56px;margin-inline-end:var(--space-xs);font-size:1.5rem;line-height:1;display:flex}.services-pager-item[data-dir=next] .services-pager-arrow{margin-inline:var(--space-xs) 0;grid-column:3;justify-self:start}.services-pager-card{display:contents}.services-pager-item img{aspect-ratio:1;object-fit:contain;border-radius:50%;grid-area:1/2;width:56px;display:block}.services-pager-title{letter-spacing:.02em;text-align:center;grid-area:2/1/auto/-1;justify-self:center;max-width:7.5rem;font-size:.85rem;line-height:1.3}.has-js .services-section.is-current,.has-js .services-pager.is-current .services-pager-item{animation:services-panel-in .35s var(--ease-out)}}@keyframes services-panel-in{0%{opacity:0}}@media (width<=700px){.services-section,.has-js .services-pagers{padding-inline:var(--page-padding)}}@media (width<=899.98px) and (prefers-reduced-motion:reduce){.has-js .services-section.is-current,.has-js .services-pager.is-current .services-pager-item{animation:none}}.contact-page{background:var(--color-stone);width:100%;min-height:calc(100svh - var(--header-h,130px));padding-inline:max(var(--page-padding), calc((100% - var(--max-width)) / 2));padding-block:var(--space-xl);text-align:center;flex-direction:column;justify-content:center;align-items:center;display:flex}.contact-intro{max-width:560px;margin-bottom:var(--space-lg);font-size:1.2rem;line-height:1.7}.contact-details{gap:var(--space-xl);flex-wrap:wrap;justify-content:center;display:flex}.contact-block .contact-label{text-transform:uppercase;letter-spacing:.2em;margin-bottom:var(--space-sm);font-size:.8rem;font-weight:600}.contact-block p{color:var(--color-muted);margin-bottom:var(--space-xs)}.contact-block a{color:inherit;text-underline-offset:3px;text-decoration:none}.contact-block a:hover{text-decoration:underline}@media (width<=700px){.contact-details{flex-direction:column;align-items:center}}.project-image-stack{width:100%;height:100%;position:relative}.project-image{object-fit:cover;opacity:0;width:100%;height:100%;transition:opacity .6s;position:absolute;inset:0}.project-image.is-active{opacity:1}.project-image-stack .image-credit{opacity:0;transition:opacity .6s}.project-image.is-active+.image-credit{opacity:1}.project-slideshow-slide:has(.project-slideshow-frame){justify-content:center;align-items:center;display:flex}.project-slideshow-frame{width:min(100%, var(--slideshow-h,60svh) * (var(--ratio,1)));max-height:100%;aspect-ratio:var(--ratio,auto);position:relative}.project-slideshow-frame:not([style]){width:100%;height:100%}.news-carousel-track,.recommendations-track{display:grid}.news-slide,.recommendation{opacity:0;visibility:hidden;grid-area:1/1;transition:opacity .8s,visibility 0s linear .8s}.news-slide.is-active,.recommendation.is-active{opacity:1;visibility:visible;transition:opacity .8s,visibility}@media (prefers-reduced-motion:reduce){.news-slide,.recommendation,.news-slide.is-active,.recommendation.is-active{transition:none}}.news-carousel{column-gap:var(--space-md);row-gap:var(--space-sm);width:min(100% - (var(--page-padding) * 2), var(--max-width));margin-inline:auto;margin-top:var(--space-lg);grid-template-rows:auto auto;grid-template-columns:minmax(0,1fr) auto;display:grid}@media (width>=900px){.news-carousel{width:var(--inset-column);margin-top:var(--space-lg);container-type:inline-size}}.news-carousel-track,.news-slide{grid-area:1/1/-1/-1;grid-template-columns:subgrid;grid-template-rows:subgrid;display:grid}.news-slide{margin:0}.news-slide-image{aspect-ratio:4/3;object-fit:cover;object-position:center;grid-area:1/1/auto/-1;width:100%}.news-slide-caption{letter-spacing:.02em;color:var(--color-muted);grid-area:2/1;font-size:.85rem;line-height:1.5}.news-carousel-dots{grid-area:2/2;align-self:start;align-items:center;gap:8px;height:1.275rem;display:flex}@media (width<=899.98px){.news-slide-image{aspect-ratio:1;object-position:var(--focus-x,50%) var(--focus-y,50%)}}@media (width>=900px){.news-slide-image{aspect-ratio:auto;width:100%;height:max(320px, min(56.25cqi, calc(100svh - var(--header-h,130px) - var(--space-lg) - 4rem)));object-fit:cover;object-position:center}}@media (width>=900px) and (height<=720px){.news-slide-image{height:max(320px, calc(100cqi / 2.4), min(56.25cqi, calc(100svh - var(--header-h,130px) - var(--space-lg) - 4rem)))}.portfolio-page{--card-gap:15cqi;padding-top:var(--space-md)}.portfolio-page .projects-grid{row-gap:6cqi}}.recommendations{background:var(--color-stone);width:100%;padding-block:var(--space-lg);padding-inline:var(--page-padding)}.recommendations-inner{max-width:720px;margin-inline:auto}.recommendations h2{text-align:center}.recommendation{margin:0}.recommendation-quote{margin:0;font-size:clamp(1.15rem,1.8vw,1.4rem);font-style:italic;line-height:1.65}.recommendation-quote p+p{margin-top:1em}.recommendation-author{align-items:center;gap:var(--space-sm);margin-top:var(--space-md);display:flex}.recommendation-image{object-fit:contain;background:#fff;border-radius:50%;flex-shrink:0;width:56px;height:56px;padding:6px}.recommendation-person{flex-direction:column;display:flex}.recommendation-name{font-weight:600}.recommendation-role{color:var(--color-muted);font-size:.9rem}.recommendations-controls{justify-content:center;align-items:center;gap:var(--space-sm);margin-top:var(--space-lg);display:flex}.recommendations-prev,.recommendations-next,.related-prev,.related-next{width:44px;height:44px;color:var(--color-muted);cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;padding:0;transition:color .2s;display:inline-flex}.recommendations-prev svg,.recommendations-next svg,.related-prev svg,.related-next svg{width:28px;height:12px;transition:transform .2s}.recommendations-prev:hover,.recommendations-next:hover,.related-prev:hover,.related-next:hover{color:var(--color-text)}.recommendations-prev:hover svg,.related-prev:hover svg{transform:translate(-3px)}.recommendations-next:hover svg,.related-next:hover svg{transform:translate(3px)}.recommendations-dots{align-items:center;display:flex}.recommendations-dot,.project-row-dot,.project-slideshow-dot{cursor:pointer;background:0 0;border:0;border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;padding:0;display:inline-flex}.recommendations-dot:before,.project-row-dot:before,.project-slideshow-dot:before{content:""}.news-carousel-dot,.recommendations-dot:before,.project-row-dot:before,.project-slideshow-dot:before{background:var(--dot-idle);border-radius:50%;width:7px;height:7px;transition:background-color .3s,transform .3s}.news-carousel-dot.is-active,.recommendations-dot[aria-current=true]:before,.project-row-dot[aria-current=true]:before,.project-slideshow-dot[aria-current=true]:before{background:var(--dot-active);transform:scale(1.3)}.recommendations-prev:focus-visible,.recommendations-next:focus-visible,.recommendations-dot:focus-visible,.project-row-dot:focus-visible,.project-slideshow-dot:focus-visible,.related-prev:focus-visible,.related-next:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px;border-radius:50%}@media (width>=900px){.recommendations{flex-direction:column;flex-shrink:0;justify-content:center;min-height:100svh;display:flex}.recommendations-inner{width:100%}.recommendations{--recommendations-gap:var(--space-lg)}.recommendations h2{margin-bottom:var(--recommendations-gap)}.recommendation{align-self:center}.recommendations-controls{margin-top:var(--recommendations-gap)}}@media (width>=900px) and (height<=799.98px){.recommendations{--recommendations-gap:clamp(1.5rem, 8svh, 4rem);padding-block:clamp(1.5rem,8svh,4rem)}.recommendation-quote{font-size:min(clamp(1.15rem,1.8vw,1.4rem),clamp(1rem,2.8svh,1.4rem))}.recommendation-author{margin-top:clamp(1rem,4svh,2rem)}}.site-footer{background:var(--color-background);border-top:1px solid var(--color-line);padding-block:var(--space-md);color:var(--color-muted);font-size:.85rem}.site-footer-inner{width:min(100% - (var(--page-padding) * 2), var(--max-width));justify-content:space-between;align-items:center;gap:var(--space-sm) var(--space-md);margin-inline:auto;display:flex}.site-footer a{color:inherit;text-underline-offset:3px;text-decoration:none}.site-footer a:hover{text-decoration:underline}.site-footer-brand{align-items:center;gap:var(--space-xs);display:inline-flex}.site-footer-seal{object-fit:contain;width:28px;height:28px}.site-footer-meta{gap:var(--space-xs) var(--space-md);flex-wrap:wrap;display:flex}@media (width<=700px){.site-footer-inner,.site-footer-meta{align-items:center;gap:var(--space-sm);text-align:center;flex-direction:column}}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (width>=900px) and (width<=1099.98px){.services-stage{top:calc(var(--header-h,130px) + 3rem)}.services-section{scroll-margin-top:calc(var(--header-h,130px) + 3rem)}}@media (width<=899.98px){:root{--text-body:1.0625rem;--text-lead:1.125rem}.services-section-body p,.project-detail-body p,.about-bio p{font-size:var(--text-body);line-height:1.7}.services-section-body{gap:var(--text-body)}.project-detail-body p:not(:last-child),.about-bio p{margin-bottom:1em}.services-section-intro,.contact-intro{font-size:var(--text-lead);line-height:1.6}.recommendation-quote{font-size:var(--text-body);line-height:1.6}.recommendations h2{margin-bottom:var(--space-sm)}.recommendations-controls{margin-top:var(--space-md)}.contact-page{text-align:start;padding-block:var(--space-lg);justify-content:flex-start;align-items:flex-start}.contact-details{justify-content:flex-start;align-items:flex-start;gap:var(--space-lg)}.contact-block p:not(.contact-label){color:var(--color-text);line-height:1.5}}.astro-route-announcer{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;top:0;left:0;overflow:hidden}
