@import "https://fonts.googleapis.com/css2?family=Geist:wght@300;400;500;600&family=Geist+Mono:wght@400;500;600&display=swap";@layer components;@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial}}}@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;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::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]){appearance:button}::file-selector-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 utilities{.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.underline{text-decoration-line:underline}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}}:root{color:#1d1a17;font-family:var(--font-body);font-synthesis:none;letter-spacing:0;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;--font-body:"Geist", "Helvetica Neue", Helvetica, Arial, sans-serif;--font-display:"Geist", "Helvetica Neue", Helvetica, Arial, sans-serif;--font-mono:"Geist Mono", "SFMono-Regular", Consolas, monospace;--ink:#1d1a17;--headline:#171411;--lead:#302c27;--body:#554f48;--muted:#77716a;--quiet:#989188;--paper:#fbfaf7;--paper-warm:#f7f5ef;--white:#fff;--panel:#fffefb;--soft:#ece9e1;--line:#1d1a171f;--line-strong:#1d1a1747;--focus:#5f594f;--nav-surface:#f8f7f2;--hero-scrim:17, 16, 14;--shadow-ink:29, 26, 23;--motion-fast:.16s;--motion-base:.24s;--motion-slow:.36s;--ease-standard:cubic-bezier(.2, 0, 0, 1);--ease-enter:cubic-bezier(.16, 1, .3, 1);--page-gutter:38px;--section-space-y:clamp(96px, 9vw, 160px);--section-space-y-compact:clamp(56px, 5vw, 96px);--section-heading-gap:clamp(16px, 1.4vw, 24px);--section-content-gap:clamp(48px, 4.5vw, 64px);--sticky-header-height:76px;background:#fbfaf7}*{box-sizing:border-box}html{scroll-behavior:smooth;overflow-x:hidden}body{background:var(--nav-surface);min-width:320px;color:var(--ink);margin:0;line-height:1.45;overflow-x:hidden}body::selection{color:var(--paper);background:var(--ink)}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}a:focus-visible{outline:1px solid var(--focus);outline-offset:5px}a[x-apple-data-detectors]{color:inherit!important;text-decoration:none!important}section{scroll-margin-top:var(--sticky-header-height)}main{padding-top:var(--sticky-header-height)}.site-header{z-index:100;background:var(--nav-surface);grid-template-columns:minmax(160px,300px) 1fr auto;align-items:center;min-height:72px;display:grid;position:fixed;top:0;left:0;right:0}.brand{align-items:center;min-height:72px;padding:16px 38px;display:flex}.brand img{transform-origin:0;width:150px;height:auto;max-height:44px;transform:scale(1.1)}.desktop-nav{grid-column:2}.nav-links{justify-content:flex-end;gap:38px;min-width:0;padding:0 38px;display:flex}.nav-links a{min-height:72px;color:var(--quiet);font-family:var(--font-mono);transition:color var(--motion-base) var(--ease-standard);align-items:center;font-size:.82rem;font-weight:400;display:flex;position:relative}.nav-links a:after{content:"";opacity:0;transform-origin:0;height:1px;transition:opacity var(--motion-fast) var(--ease-standard), transform var(--motion-base) var(--ease-enter);background:currentColor;position:absolute;bottom:23px;left:0;right:0;transform:scaleX(0)}.nav-links a:hover,.nav-links a:focus-visible{color:var(--ink)}main:has(#leistungen:target) .nav-links a[href=\#leistungen]{color:var(--ink)}main:has(#team:target) .nav-links a[href=\#team]{color:var(--ink)}main:has(#kontakt:target) .nav-links a[href=\#kontakt]{color:var(--ink)}.nav-links a:hover:after,.nav-links a:focus-visible:after{opacity:1;transform:scaleX(1)}main:has(#leistungen:target) .nav-links a[href=\#leistungen]:after{opacity:1;transform:scaleX(1)}main:has(#team:target) .nav-links a[href=\#team]:after{opacity:1;transform:scaleX(1)}main:has(#kontakt:target) .nav-links a[href=\#kontakt]:after{opacity:1;transform:scaleX(1)}.menu-toggle{width:44px;height:44px;color:var(--ink);cursor:pointer;background:0 0;border:0;border-radius:50%;justify-content:center;align-items:center;margin-right:18px;display:none}.menu-toggle:focus-visible{outline:1px solid var(--focus);outline-offset:4px}.menu-toggle-inner{width:24px;height:16px;display:block;position:relative}.menu-toggle-line{transform-origin:50%;background:currentColor;width:100%;height:1px;display:block;position:absolute;left:0}.menu-toggle-line.is-first{top:3px}.menu-toggle-line.is-middle{top:7.5px}.menu-toggle-line.is-last{top:12px}.mobile-nav-panel{display:none}.hero{min-height:calc(100svh + 2px);margin-top:calc(var(--sticky-header-height) * -1);padding:calc(var(--sticky-header-height) + clamp(104px, 12vw, 188px)) 38px clamp(94px, 10vw, 156px);border-bottom:1px solid var(--line);background:var(--paper);align-items:center;display:grid;position:relative;overflow:hidden}.hero:before{content:"";z-index:1;background:linear-gradient(90deg, rgba(var(--hero-scrim), .78) 0%, rgba(var(--hero-scrim), .62) 36%, rgba(var(--hero-scrim), .26) 66%, rgba(var(--hero-scrim), .06) 100%), linear-gradient(180deg, rgba(var(--hero-scrim), .2) 0%, rgba(var(--hero-scrim), .06) 46%, rgba(var(--hero-scrim), .28) 100%);pointer-events:none;position:absolute;inset:0}.hero-copy{z-index:2;max-width:860px;position:relative}.hero-image{z-index:0;margin:0;position:absolute;inset:0}.hero-image img{filter:saturate(1.08)contrast(1.06);object-fit:cover;object-position:62% 50%;width:100%;height:100%}.kicker{color:var(--quiet);font-family:var(--font-mono);margin:0 0 34px;font-size:.72rem;font-weight:400;line-height:1.35}.hero .kicker{color:#ffffffc2;font-size:clamp(1.04rem,1.28vw,1.28rem)}.hero h1,.section h2,.contact-section h2{max-width:13ch;color:var(--headline);font-family:var(--font-display);-webkit-hyphens:manual;hyphens:manual;text-wrap:balance;overflow-wrap:normal;margin:0;font-size:clamp(3.7rem,7.1vw,8.25rem);font-weight:300;line-height:.94}.hero h1{color:var(--white);font-size:clamp(2.8rem,5.4vw,6.2rem)}.hero-lead{max-width:560px;color:var(--lead);margin:36px 0 0;font-size:clamp(.68rem,.84vw,.84rem);font-weight:400;line-height:1.5}.hero .hero-lead{color:#ffffffd6}.hero-actions{flex-wrap:wrap;gap:12px;margin-top:52px;display:flex}.primary-link,.secondary-link{border-bottom:1px solid var(--line-strong);min-height:32px;font-family:var(--font-mono);align-items:center;padding:0 0 4px;font-size:.9rem;font-weight:400;display:inline-flex}.primary-link{isolate:isolate;background:var(--ink);min-height:56px;color:var(--paper);letter-spacing:.06em;text-transform:uppercase;box-shadow:inset 0 0 0 1px var(--ink);transition:background-color var(--motion-base) var(--ease-standard), box-shadow var(--motion-base) var(--ease-standard), color var(--motion-base) var(--ease-standard), transform var(--motion-base) var(--ease-enter);border:0;padding:0 68px 0 24px;font-size:.82rem;font-weight:600;position:relative;overflow:hidden}.primary-link:after{content:"→";width:48px;transition:background-color var(--motion-base) var(--ease-standard), border-color var(--motion-base) var(--ease-standard), transform var(--motion-base) var(--ease-enter);background:#ffffff14;border-left:1px solid #ffffff2e;place-items:center;margin-left:0;font-size:1.05rem;line-height:1;display:grid;position:absolute;top:1px;bottom:1px;right:1px;transform:translate(0)}.primary-link:hover,.primary-link:focus-visible{box-shadow:inset 0 0 0 1px var(--ink), 0 12px 28px rgba(var(--shadow-ink), .16);transform:translateY(-1px)}.hero .primary-link{background:var(--white);color:var(--ink);box-shadow:inset 0 0 0 1px var(--white)}.hero .primary-link:after{border-left-color:rgba(var(--shadow-ink), .14);background:rgba(var(--shadow-ink), .06)}.hero .primary-link:hover,.hero .primary-link:focus-visible{background:var(--white);color:var(--ink);box-shadow:inset 0 0 0 1px var(--white), 0 16px 34px #00000047}.primary-link:hover:after,.primary-link:focus-visible:after{background:#ffffff24;transform:translate(3px)}.hero .primary-link:hover:after,.hero .primary-link:focus-visible:after{background:rgba(var(--shadow-ink), .1)}.secondary-link{transition:border-color var(--motion-base) var(--ease-standard), color var(--motion-base) var(--ease-standard)}.secondary-link:hover,.secondary-link:focus-visible{border-color:var(--ink);color:var(--ink)}.statement{padding:var(--section-space-y-compact) var(--page-gutter);border-bottom:1px solid var(--line);background:var(--paper)}.statement p{max-width:780px;color:var(--lead);margin:0;font-size:clamp(1.08rem,1.62vw,1.45rem);font-weight:400;line-height:1.3}.section{padding:var(--section-space-y) var(--page-gutter);border-bottom:1px solid var(--line);background:var(--paper)}.section-heading{gap:var(--section-heading-gap);margin-bottom:var(--section-content-gap);grid-template-columns:1fr;align-items:start;display:grid}.section-heading .kicker{margin:0}.section-heading h2,.contact-section h2{max-width:14ch;font-size:clamp(2.35rem,3.7vw,4.45rem);line-height:.98}.service-grid{grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.section-services{background:var(--paper)}.service-card{border-right:1px solid var(--line);min-height:360px;transition:background-color var(--motion-slow) var(--ease-standard), border-color var(--motion-slow) var(--ease-standard);background:0 0;flex-direction:column;padding:28px 34px 36px;display:flex;position:relative}.service-card:last-child{border-right:0}.service-card-header{min-height:82px;margin-bottom:58px;display:block}.service-card-header svg{width:56px;height:56px;color:var(--quiet);stroke:currentColor;stroke-width:1.08px;stroke-linecap:round;stroke-linejoin:round;opacity:.78;transition:color var(--motion-base) var(--ease-standard), opacity var(--motion-base) var(--ease-standard), transform var(--motion-slow) var(--ease-enter);transform:translate(0)}.service-card h3,.project-card h3,.team-member h3{color:var(--headline);font-family:var(--font-display);-webkit-hyphens:auto;hyphens:auto;overflow-wrap:break-word;margin:0;font-size:clamp(1.36rem,1.88vw,2.18rem);font-weight:300;line-height:1.02}.service-card p{color:var(--body);margin:24px 0 0;font-size:1rem;line-height:1.56}.service-card ul{gap:0;margin:auto 0 0;padding:34px 0 0;list-style:none;display:grid}.service-card li{min-height:34px;color:var(--muted);font-family:var(--font-mono);transition:color var(--motion-base) var(--ease-standard);align-items:center;padding:8px 0 8px 18px;font-size:.82rem;font-weight:500;line-height:1.25;display:flex;position:relative}.service-card li:before{content:"";background:var(--quiet);opacity:.7;transform-origin:0;width:8px;height:1px;transition:background-color var(--motion-base) var(--ease-standard), opacity var(--motion-base) var(--ease-standard), transform var(--motion-base) var(--ease-enter);position:absolute;left:0;transform:scaleX(1)}@media (hover:hover) and (pointer:fine){.service-card:hover{background:var(--panel);border-color:var(--line-strong)}.service-card:hover .service-card-header svg{color:var(--ink);opacity:.96;transform:translateY(-3px)}.service-card:hover li:before{background:var(--ink);opacity:1;transform:scaleX(1.32)}.service-card:hover li{color:var(--ink)}}.project-section{background:var(--paper)}.project-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:54px;display:grid}.project-card{background:0 0}.project-card figure{aspect-ratio:1;background:var(--panel);margin:0;overflow:hidden}.project-card img{object-fit:cover;filter:grayscale()contrast(1.02);width:100%;height:100%;transition:transform .42s var(--ease-enter);transform:scale(1)}.project-card:hover img{transform:scale(1.025)}.project-copy{min-height:210px;padding:22px 0 0}.project-meta{color:var(--quiet);font-family:var(--font-mono);margin:0 0 16px;font-size:.82rem;font-weight:400}.project-copy p:last-child{color:var(--body);margin:18px 0 0;line-height:1.56}.method-section{background:var(--paper-warm)}.method-panel{gap:var(--section-content-gap);grid-template-columns:1fr;align-items:start;display:grid}.method-panel>div{padding:0}.method-panel .kicker{margin-bottom:var(--section-heading-gap)}.method-panel h2{max-width:18ch;font-size:clamp(2.35rem,3.7vw,4.4rem)}.method-list{grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;margin:0;padding:0;list-style:none;display:grid}.method-list li{background:var(--panel);min-height:196px;color:var(--ink);border:1px solid #0000;grid-template-rows:auto 1fr;padding:28px;line-height:1.12;display:grid;position:relative}.method-number{color:var(--quiet);font-family:var(--font-display);transition:color var(--motion-base) var(--ease-standard);font-size:clamp(2.35rem,4.8vw,6rem);font-weight:300;line-height:.9}.method-step-heading{gap:34px;display:grid}.method-list h3{max-width:12ch;color:var(--headline);font-family:var(--font-display);margin:0;font-size:clamp(1.16rem,1.52vw,1.78rem);font-weight:300;line-height:1.02}.method-list p{max-width:30ch;color:var(--body);margin:18px 0 0;font-size:.94rem;line-height:1.5}.method-emphasis{color:inherit;transition:color var(--motion-base) var(--ease-standard)}.method-emphasis.is-underlined{display:inline-block;position:relative}.method-emphasis.is-underlined:after{content:"";opacity:0;transform-origin:0;height:1px;transition:opacity var(--motion-fast) var(--ease-standard), transform var(--motion-base) var(--ease-enter);background:currentColor;position:absolute;bottom:.03em;left:0;right:0;transform:scaleX(0)}@media (hover:hover) and (pointer:fine){.method-list li:hover .method-number{color:var(--ink)}.method-list li:hover .method-emphasis.is-underlined:after{opacity:1;transform:scaleX(1)}.method-list li:hover .method-emphasis{color:var(--ink)}}.team-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:54px;display:grid}.team-section{background:var(--paper)}.team-member{background:var(--panel);grid-template-columns:minmax(220px,.78fr) minmax(0,1fr);min-height:400px;display:grid}.team-member img{object-fit:cover;filter:grayscale()contrast(1.02);width:100%;height:100%;min-height:400px}.team-member:first-child img{object-position:42% 70%}.team-member:nth-child(2) img{object-position:50% 52%}.team-copy{border:1px solid var(--line);border-left:0;flex-direction:column;justify-content:flex-end;padding:32px;display:flex}.team-member p{color:var(--body);margin:24px 0 0;font-size:1rem;line-height:1.56}.team-facts{border-top:1px solid var(--line);color:var(--quiet);font-family:var(--font-mono);gap:9px;margin:28px 0 0;padding:20px 0 0;font-size:.8rem;line-height:1.45;list-style:none;display:grid}.team-facts li{display:block}.contact-section{gap:var(--section-content-gap);padding:var(--section-space-y) var(--page-gutter);border-bottom:1px solid var(--line);background:var(--paper);grid-template-columns:minmax(0,1fr) minmax(320px,.44fr);display:grid}.contact-section .kicker{margin-bottom:var(--section-heading-gap)}.contact-section h2{max-width:12ch}.contact-actions{margin-top:var(--section-content-gap);flex-wrap:wrap;gap:12px;display:flex}.contact-action{isolate:isolate;background:var(--ink);min-height:56px;color:var(--paper);font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;box-shadow:inset 0 0 0 1px var(--ink);transition:background-color var(--motion-base) var(--ease-standard), box-shadow var(--motion-base) var(--ease-standard), color var(--motion-base) var(--ease-standard), transform var(--motion-base) var(--ease-enter);border:0;justify-content:center;align-items:center;padding:0 68px 0 24px;font-size:.82rem;font-weight:600;display:inline-flex;position:relative;overflow:hidden}.contact-action:after{content:"→";width:48px;transition:background-color var(--motion-base) var(--ease-standard), border-color var(--motion-base) var(--ease-standard), transform var(--motion-base) var(--ease-enter);background:#ffffff14;border-left:1px solid #ffffff2e;place-items:center;margin-left:0;font-size:1.05rem;line-height:1;display:grid;position:absolute;top:1px;bottom:1px;right:1px;transform:translate(0)}.contact-action:hover,.contact-action.primary{box-shadow:inset 0 0 0 1px var(--ink)}.contact-action.primary:hover,.contact-action.primary:focus-visible,.contact-action:hover,.contact-action:focus-visible{box-shadow:inset 0 0 0 1px var(--ink), 0 12px 28px rgba(var(--shadow-ink), .16);transform:translateY(-1px)}.contact-action.primary:hover:after,.contact-action.primary:focus-visible:after,.contact-action:hover:after,.contact-action:focus-visible:after{background:#ffffff24;transform:translate(3px)}address{color:var(--body);align-self:end;gap:9px;margin:0;font-size:1.08rem;font-style:normal;line-height:1.38;display:grid}address strong{color:var(--headline);font-family:var(--font-display);margin-bottom:18px;font-size:clamp(1.42rem,1.86vw,2.2rem);font-weight:300;line-height:1}address a{color:var(--ink);text-underline-offset:5px;text-decoration:underline;text-decoration-thickness:1px}.legal-hero{border-bottom:1px solid var(--line);background:var(--paper);padding:clamp(96px,10vw,154px) 38px clamp(58px,6vw,92px)}.legal-hero h1{max-width:12ch;color:var(--headline);-webkit-hyphens:auto;hyphens:auto;overflow-wrap:break-word;margin:0;font-size:clamp(3.1rem,6.2vw,7rem);font-weight:300;line-height:1}.legal-lead{max-width:620px;color:var(--lead);margin:32px 0 0;font-size:clamp(1.04rem,1.28vw,1.26rem);line-height:1.56}.legal-content{border-bottom:1px solid var(--line);background:var(--panel);grid-template-columns:minmax(210px,.28fr) minmax(0,1fr);gap:clamp(48px,7vw,94px);padding:clamp(70px,8vw,126px) 38px;display:grid}.legal-aside{color:var(--body);align-self:start;gap:26px;font-size:.92rem;line-height:1.45;display:grid;position:sticky;top:104px}.legal-aside div{gap:7px;display:grid}.legal-aside span,.legal-definition dt{color:var(--quiet);font-family:var(--font-mono);font-size:.74rem;line-height:1.35}.legal-aside strong{color:var(--headline);font-weight:400}.legal-aside a,.legal-prose a{color:var(--ink);text-underline-offset:5px;text-decoration:underline;text-decoration-thickness:1px}.legal-prose{max-width:880px}.legal-prose section{border-bottom:1px solid var(--line);margin-bottom:42px;padding-bottom:42px}.legal-prose section:last-child{border-bottom:0;margin-bottom:0;padding-bottom:0}.legal-prose h2{color:var(--headline);margin:0 0 18px;font-size:clamp(1.28rem,1.72vw,2rem);font-weight:300;line-height:1.16}.legal-prose p,.legal-prose li,.legal-definition dd{color:var(--body);font-size:1rem;line-height:1.68}.legal-prose p{margin:0}.legal-prose p+p{margin-top:16px}.legal-prose ul{gap:10px;margin:0;padding:0;list-style:none;display:grid}.legal-prose li{padding-left:20px;position:relative}.legal-prose li:before{content:"";background:var(--quiet);width:8px;height:1px;position:absolute;top:.78em;left:0}.legal-definition{grid-template-columns:minmax(120px,.22fr) minmax(0,1fr);gap:12px 28px;margin:0;display:grid}.legal-definition dd{margin:0}.site-footer{color:var(--quiet);font-family:var(--font-mono);grid-template-columns:minmax(0,1fr) minmax(320px,.44fr);align-items:start;gap:52px;padding:22px 38px 30px;font-size:.82rem;font-weight:400;display:grid}.footer-meta{flex-wrap:wrap;justify-content:flex-start;align-items:center;gap:12px 28px;display:flex}.footer-legal{justify-content:flex-start;gap:18px;display:flex}.footer-legal a:hover{color:var(--ink)}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.primary-link:hover:after,.primary-link:focus-visible:after,.contact-action.primary:hover:after,.contact-action.primary:focus-visible:after,.contact-action:hover:after,.contact-action:focus-visible:after,.service-card:hover .service-card-header svg{transform:none}}@media (width<=1180px){.service-grid,.project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.service-card:nth-child(2n){border-right:0}.service-card:nth-child(odd){border-right:1px solid var(--line)}.section-heading,.method-panel,.contact-section,.legal-content,.site-footer{grid-template-columns:1fr}.method-panel{gap:var(--section-content-gap)}.method-panel>div{padding:0}.method-panel h2{max-width:100%}.method-list{grid-template-columns:repeat(2,minmax(0,1fr));padding:0}.team-grid{grid-template-columns:1fr;gap:38px}.team-member{grid-template-columns:minmax(260px,.46fr) minmax(0,1fr);min-height:360px}.team-member img{min-height:360px}.team-copy{justify-content:center}.legal-aside{border-bottom:1px solid var(--line);grid-template-columns:repeat(2,minmax(0,1fr));padding-bottom:36px;position:static}}@media (width>=781px) and (width<=1180px){.service-grid{row-gap:clamp(28px,4vw,44px)}.contact-section{grid-template-columns:minmax(0,1fr) minmax(280px,.44fr);gap:clamp(42px,5vw,52px)}}@media (width<=780px){:root{--page-gutter:18px;--section-space-y:64px;--section-space-y-compact:36px;--section-heading-gap:18px;--section-content-gap:42px;--sticky-header-height:72px}section{scroll-margin-top:var(--sticky-header-height)}.site-header{min-height:var(--sticky-header-height);grid-template-columns:minmax(0,1fr) auto;position:fixed;top:0}.brand{min-height:var(--sticky-header-height);padding:14px 18px}.brand img{width:148px}.desktop-nav{display:none}.menu-toggle{display:inline-flex}.mobile-nav-panel{background:var(--nav-surface);width:100vw;box-shadow:0 18px 46px rgba(var(--shadow-ink), .12);border-radius:0;padding:0;display:block;position:absolute;top:100%;left:0;right:0}.mobile-nav-links{background:var(--nav-surface);display:grid}.mobile-nav-links a{background:var(--nav-surface);min-height:64px;color:var(--ink);font-family:var(--font-mono);align-items:center;padding:0 18px;font-size:.98rem;font-weight:400;display:flex}.mobile-nav-links a+a{border-top:1px solid var(--line)}.mobile-nav-links a:hover,.mobile-nav-links a:focus-visible{color:var(--muted)}.hero,.section,.legal-hero,.legal-content,.contact-section{padding:var(--section-space-y) var(--page-gutter)}.hero{min-height:100svh;padding-top:calc(var(--sticky-header-height) + var(--section-space-y))}.hero:before{background:linear-gradient(180deg, rgba(var(--hero-scrim), .78) 0%, rgba(var(--hero-scrim), .56) 44%, rgba(var(--hero-scrim), .32) 76%, rgba(var(--hero-scrim), .18) 100%), linear-gradient(90deg, rgba(var(--hero-scrim), .58) 0%, rgba(var(--hero-scrim), .28) 62%, rgba(var(--hero-scrim), .1) 100%)}.hero-image img{object-position:58% 50%}.hero h1{-webkit-hyphens:auto;hyphens:auto;overflow-wrap:break-word;max-width:100%;font-size:3.85rem;line-height:.94}.section h2,.contact-section h2,.legal-hero h1,.method-panel h2{-webkit-hyphens:auto;hyphens:auto;overflow-wrap:break-word;max-width:100%;font-size:clamp(2.35rem,10.5vw,3.75rem);line-height:1.04}.hero-lead{margin-top:30px;font-size:1.08rem}.hero-actions{flex-direction:column;align-items:flex-start;margin-top:34px}.contact-section{gap:var(--section-content-gap)}.primary-link,.secondary-link{justify-content:flex-start;width:auto}.statement{padding:var(--section-space-y-compact) var(--page-gutter)}.statement p{font-size:1.18rem}.section-heading{gap:var(--section-heading-gap);margin-bottom:var(--section-content-gap)}.service-grid,.project-grid,.method-list{grid-template-columns:1fr}.service-card,.service-card+.service-card,.service-card:nth-child(2n),.service-card:nth-child(odd){border-right:0;border-bottom:1px solid var(--line);min-height:0;padding:22px 0 24px}.service-card:last-child{border-bottom:0}.service-card-header{min-height:42px;margin-bottom:22px}.service-card-header svg{width:42px;height:42px}.service-card p{margin-top:18px}.service-card ul{padding-top:22px}.service-card li{min-height:29px;padding-top:6px;padding-bottom:6px}.project-grid{gap:36px}.project-copy{min-height:0}.method-panel>div,.method-list{padding:0}.method-list li{min-height:0;padding:22px}.method-step-heading{align-items:center;gap:18px;display:flex}.method-number{align-items:center;font-size:1.08rem;line-height:1.15;display:inline-flex}.method-list h3{max-width:none;font-size:1.08rem;line-height:1.15}.method-list p{max-width:none;margin-top:16px}.team-member{grid-template-columns:1fr;min-height:0}.team-member img{aspect-ratio:1;height:auto;min-height:0}.team-copy{border:1px solid var(--line);border-top:0;justify-content:flex-start}address{font-size:1.02rem}.site-footer{flex-direction:column;align-items:flex-start;padding:20px 18px 28px}.legal-aside{grid-template-columns:1fr;gap:18px}.legal-definition{grid-template-columns:1fr;gap:5px 0}.legal-definition dd+dt{margin-top:13px}}@media (width<=420px){.hero h1{font-size:3.05rem}.section h2,.contact-section h2,.legal-hero h1,.method-panel h2{font-size:clamp(1.95rem,9.2vw,2.12rem);line-height:1.1}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}
