:root{--ink:oklch(0.185 0.014 55);--ink-soft:oklch(0.36 0.016 55);--ink-mute:oklch(0.50 0.014 60);--paper:oklch(0.975 0.012 85);--paper-2:oklch(0.945 0.016 82);--paper-3:oklch(0.905 0.018 80);--line:oklch(0.86 0.014 78);--clay:oklch(0.545 0.135 42);--clay-deep:oklch(0.45 0.125 40);--ochre:oklch(0.80 0.115 82);--sage:oklch(0.58 0.065 158);--blue:oklch(0.42 0.115 245);--bg:var(--paper);--bg-alt:var(--paper-2);--surface:oklch(1 0 0);--fg:var(--ink);--fg-soft:var(--ink-soft);--fg-mute:var(--ink-mute);--edge:var(--line);--accent:var(--clay);--accent-ink:oklch(0.99 0.005 80);--font-display:"Fraunces","Iowan Old Style","Palatino Linotype",Georgia,serif;--font-body:-apple-system,BlinkMacSystemFont,"Segoe UI","Helvetica Neue",Arial,sans-serif;--font-mono:ui-monospace,"SF Mono",Menlo,Consolas,monospace;--step--1:clamp(0.82rem,0.78rem + 0.18vw,0.92rem);--step-0:clamp(1rem,0.95rem + 0.25vw,1.125rem);--step-1:clamp(1.2rem,1.08rem + 0.6vw,1.55rem);--step-2:clamp(1.5rem,1.25rem + 1.25vw,2.3rem);--step-3:clamp(2rem,1.4rem + 2.9vw,3.6rem);--step-4:clamp(2.6rem,1.5rem + 5.2vw,5.5rem);--sp-1:0.25rem;--sp-2:0.5rem;--sp-3:0.75rem;--sp-4:1rem;--sp-5:1.5rem;--sp-6:2rem;--sp-7:3rem;--sp-8:4.5rem;--sp-9:7rem;--r-sm:4px;--r-md:10px;--r-lg:18px;--r-xl:28px;--maxw:1240px;--gut:clamp(1.25rem,4vw,3.5rem);--head-h:72px;--shadow-1:0 1px 2px oklch(0.2 0.02 50 / 0.06),0 6px 20px -8px oklch(0.2 0.02 50 / 0.14);--shadow-2:0 2px 6px oklch(0.2 0.02 50 / 0.08),0 22px 48px -18px oklch(0.2 0.02 50 / 0.28);--ease:cubic-bezier(0.22,0.68,0.24,1)}html[data-theme="dark"]{--bg:oklch(0.175 0.014 55);--bg-alt:oklch(0.215 0.015 55);--surface:oklch(0.245 0.016 55);--fg:oklch(0.95 0.012 85);--fg-soft:oklch(0.79 0.014 82);--fg-mute:oklch(0.68 0.014 75);--edge:oklch(0.34 0.016 60);--clay:oklch(0.72 0.135 45);--clay-deep:oklch(0.80 0.12 50);--accent-ink:oklch(0.16 0.02 45);--shadow-1:0 1px 2px oklch(0 0 0 / 0.4),0 6px 20px -8px oklch(0 0 0 / 0.5);--shadow-2:0 2px 6px oklch(0 0 0 / 0.45),0 22px 48px -18px oklch(0 0 0 / 0.6)}*,*::before,*::after{box-sizing:border-box}*{margin:0}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:calc(var(--head-h) + 1rem)}body{background:var(--bg);color:var(--fg);font-family:var(--font-body);font-size:var(--step-0);line-height:1.6;font-synthesis-weight:none;-webkit-font-smoothing:antialiased;overflow-x:hidden}img,svg,video{display:block;max-width:100%;height:auto}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--clay);outline-offset:3px;border-radius:2px}::selection{background:var(--clay);color:var(--accent-ink)}h1,h2,h3,.display{font-family:var(--font-display);font-weight:500;line-height:1.04;letter-spacing:-0.02em;text-wrap:balance}h1{font-size:var(--step-4)}h2{font-size:var(--step-3)}h3{font-size:var(--step-1)}p{text-wrap:pretty}.lede{font-size:var(--step-1);line-height:1.45;color:var(--fg-soft);max-width:58ch}.eyebrow{font-family:var(--font-mono);font-size:var(--step--1);letter-spacing:0.16em;text-transform:uppercase;color:var(--fg-mute);display:flex;align-items:center;gap:0.7rem}.eyebrow::before{content:"";width:2.2rem;height:1px;background:var(--accent);flex:none}.eyebrow--plain::before{display:none}.mono{font-family:var(--font-mono);font-size:var(--step--1);letter-spacing:0.04em}.wrap{width:100%;max-width:var(--maxw);margin-inline:auto;padding-inline:var(--gut)}.section{padding-block:clamp(3.5rem,9vw,var(--sp-9))}.section--tight{padding-block:clamp(2.5rem,5vw,4.5rem)}.section--alt{background:var(--bg-alt)}.grid{display:grid;gap:var(--sp-5)}.mt-4{margin-top:var(--sp-4)}.mt-5{margin-top:var(--sp-5)}.mt-6{margin-top:var(--sp-6)}.mt-7{margin-top:var(--sp-7)}.mb-4{margin-bottom:var(--sp-4)}.center{text-align:center}.center .eyebrow{justify-content:center}.center .eyebrow::before{display:none}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.skip{position:absolute;left:50%;transform:translate(-50%,-140%);z-index:200;background:var(--clay);color:var(--accent-ink);padding:0.7rem 1.2rem;border-radius:0 0 10px 10px;font-weight:500}.skip:focus{transform:translate(-50%,0)}.site-head{position:sticky;top:0;z-index:60;background:color-mix(in oklab,var(--bg) 88%,transparent);backdrop-filter:saturate(1.4) blur(14px);border-bottom:1px solid transparent;transition:border-color 0.3s var(--ease)}.site-head.is-stuck{border-bottom-color:var(--edge)}.head-inner{display:flex;align-items:center;gap:var(--sp-4);min-height:var(--head-h)}.brand{display:flex;align-items:center;gap:0.7rem;margin-right:auto}.brand img{height:40px;width:auto}.brand img.logo-dark{display:block}.brand img.logo-light{display:none}html[data-theme="dark"] .brand img.logo-dark{display:none}html[data-theme="dark"] .brand img.logo-light{display:block}.brand-txt{display:none;line-height:1.15}.brand-txt b{font-family:var(--font-display);font-weight:500;font-size:1rem;display:block}.brand-txt span{font-family:var(--font-mono);font-size:0.64rem;letter-spacing:0.14em;text-transform:uppercase;color:var(--fg-mute)}@media (min-width:900px){.brand-txt{display:block}}.nav{display:none;gap:clamp(1rem,2.4vw,2rem);align-items:center}@media (min-width:1024px){.nav{display:flex}}.nav a{font-size:0.94rem;position:relative;padding-block:0.35rem;color:var(--fg-soft);transition:color 0.25s var(--ease)}.nav a::after{content:"";position:absolute;left:0;bottom:0;height:1px;width:0;background:var(--accent);transition:width 0.35s var(--ease)}.nav a:hover,.nav a[aria-current="page"]{color:var(--fg)}.nav a:hover::after,.nav a[aria-current="page"]::after{width:100%}.head-actions{display:flex;align-items:center;gap:0.5rem}.icon-btn{width:42px;height:42px;display:grid;place-items:center;cursor:pointer;background:transparent;border:1px solid var(--edge);border-radius:999px;transition:background 0.25s var(--ease),border-color 0.25s var(--ease),transform 0.2s var(--ease)}.icon-btn:hover{background:var(--bg-alt);border-color:var(--fg-mute)}.icon-btn:active{transform:scale(0.94)}.theme-toggle .moon{display:none}html[data-theme="dark"] .theme-toggle .moon{display:block}html[data-theme="dark"] .theme-toggle .sun{display:none}.btn{display:inline-flex;align-items:center;gap:0.55rem;cursor:pointer;padding:0.75rem 1.3rem;border-radius:999px;border:1px solid transparent;font-size:0.94rem;font-weight:500;min-height:44px;transition:transform 0.2s var(--ease),background 0.25s var(--ease),color 0.25s var(--ease),border-color 0.25s var(--ease)}.btn:hover{transform:translateY(-2px)}.btn-primary{background:var(--clay);color:var(--accent-ink)}.btn-primary:hover{background:var(--clay-deep)}.btn-ghost{border-color:var(--edge)}.btn-ghost:hover{border-color:var(--fg);background:var(--bg-alt)}.btn-phone{display:none}@media (min-width:640px){.btn-phone{display:inline-flex}}.burger{display:grid}@media (min-width:1024px){.burger{display:none}}.drawer{position:fixed;inset:0;z-index:90;background:var(--bg);padding:var(--sp-5) var(--gut) var(--sp-7);display:flex;flex-direction:column;gap:var(--sp-4);transform:translateY(-100%);transition:transform 0.45s var(--ease);overflow-y:auto}.drawer[hidden]{display:none}.drawer.is-open{transform:translateY(0)}.drawer a.big{font-family:var(--font-display);font-size:var(--step-2);padding-block:0.3rem;border-bottom:1px solid var(--edge);display:block}.drawer .close{position:absolute;top:1rem;right:var(--gut)}.hero{position:relative;padding-top:clamp(2rem,5vw,4rem);overflow:hidden}.hero-grid{display:grid;gap:clamp(2rem,5vw,3.5rem);align-items:center}@media (min-width:1000px){.hero-grid{grid-template-columns:minmax(0,1.05fr) minmax(0,0.95fr)}}.hero h1{margin-top:1rem}.hero h1 em{font-style:italic;color:var(--clay)}.hero-sub{margin-top:1.2rem;max-width:46ch;color:var(--fg-soft);font-size:var(--step-1);line-height:1.4}.hero-cta{display:flex;flex-wrap:wrap;gap:0.75rem;margin-top:1.8rem}.hero-facts{margin-top:2.5rem;padding-top:1.3rem;border-top:1px solid var(--edge);display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.hero-facts b{display:block;font-family:var(--font-display);font-size:var(--step-2);line-height:1}.hero-facts span{font-size:0.84rem;color:var(--fg-mute)}.hero-art figure{position:relative;border-radius:var(--r-lg);overflow:hidden;box-shadow:var(--shadow-2)}.hero-art img{width:100%;aspect-ratio:4/5;object-fit:cover}.hero-art .badge{position:absolute;right:-8px;bottom:26px;background:var(--surface);border:1px solid var(--edge);border-radius:var(--r-md);padding:0.85rem 1.1rem;box-shadow:var(--shadow-1);max-width:240px}.hero-art .badge b{display:block;font-family:var(--font-display);font-size:1.1rem}.hero-art .badge span{font-size:0.78rem;color:var(--fg-mute)}@media (max-width:999px){.hero-art{margin-top:1.5rem}.hero-art img{aspect-ratio:16/10}.hero-art .badge{right:10px;bottom:14px;max-width:200px;padding:0.6rem 0.8rem}}.marquee{border-block:1px solid var(--edge);background:var(--bg-alt);padding-block:0.9rem;overflow:hidden;margin-top:clamp(2.5rem,6vw,4rem)}.marquee-track{display:flex;gap:3rem;width:max-content;animation:slide 38s linear infinite}.marquee span{font-family:var(--font-mono);font-size:0.78rem;letter-spacing:0.18em;text-transform:uppercase;color:var(--fg-mute);display:flex;align-items:center;gap:3rem}.marquee span::after{content:"◦";color:var(--accent)}@keyframes slide{to{transform:translateX(-50%)}}@media (prefers-reduced-motion:reduce){.marquee-track{animation:none}}.sec-head{display:grid;gap:1rem;margin-bottom:clamp(2rem,4vw,3rem)}@media (min-width:900px){.sec-head{grid-template-columns:minmax(0,1fr) minmax(0,0.85fr);align-items:end;gap:2rem}}.sec-head p{color:var(--fg-soft)}.principles{border-top:1px solid var(--edge)}.principle{display:grid;gap:0.5rem 2rem;padding-block:clamp(1.3rem,3vw,2rem);border-bottom:1px solid var(--edge);align-items:start;transition:background 0.3s var(--ease)}@media (min-width:780px){.principle{grid-template-columns:5rem minmax(0,1fr) minmax(0,1.25fr)}}.principle .num{font-family:var(--font-mono);font-size:0.78rem;color:var(--accent);letter-spacing:0.1em}.principle h3{font-size:var(--step-2)}.principle p{color:var(--fg-soft)}.principle:hover{background:var(--bg-alt)}.principle:hover h3{color:var(--clay)}.techs{display:grid;gap:1px;background:var(--edge);border:1px solid var(--edge)}@media (min-width:760px){.techs{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width:1200px){.techs{grid-template-columns:repeat(4,minmax(0,1fr))}}.tech{background:var(--bg);display:flex;flex-direction:column;transition:background 0.3s var(--ease)}.tech:hover{background:var(--bg-alt)}.tech .shot{aspect-ratio:3/4;overflow:hidden}.tech .shot img{width:100%;height:100%;object-fit:cover;transition:transform 0.8s var(--ease)}.tech:hover .shot img{transform:scale(1.04)}.tech .body{padding:1.1rem 1.2rem 1.4rem}.tech h3{margin-top:0.3rem}.tech p{margin-top:0.45rem;font-size:0.9rem;color:var(--fg-soft)}.tech .more{margin-top:0.9rem;font-family:var(--font-mono);font-size:0.73rem;letter-spacing:0.12em;text-transform:uppercase;color:var(--accent)}.tech:hover .more{text-decoration:underline;text-underline-offset:4px}.gallery{columns:2;column-gap:0.75rem}@media (min-width:760px){.gallery{columns:3}}@media (min-width:1200px){.gallery{columns:4}}.gallery figure{break-inside:avoid;margin-bottom:0.75rem}.gallery button{display:block;width:100%;padding:0;border:0;background:none;cursor:zoom-in;border-radius:var(--r-sm);overflow:hidden}.gallery img{width:100%;transition:transform 0.6s var(--ease),filter 0.4s var(--ease);filter:saturate(0.96)}.gallery button:hover img{transform:scale(1.03);filter:saturate(1.08)}.lightbox{position:fixed;inset:0;z-index:120;background:oklch(0.12 0.01 50 / 0.94);display:grid;place-items:center;padding:clamp(1rem,4vw,3rem)}.lightbox[hidden]{display:none}.lightbox img{max-width:min(1100px,92vw);max-height:80vh;object-fit:contain;border-radius:6px}.lightbox .lb-cap{color:oklch(0.9 0.01 80);margin-top:0.8rem;font-size:0.9rem;text-align:center}.lb-close,.lb-nav{position:absolute;width:46px;height:46px;border-radius:999px;border:1px solid oklch(0.8 0 0 / 0.3);background:oklch(0.12 0.01 50 / 0.5);color:oklch(0.95 0 0);cursor:pointer;display:grid;place-items:center}.lb-close{top:1.2rem;right:1.2rem}.lb-nav{top:50%;transform:translateY(-50%)}.lb-prev{left:1rem}.lb-next{right:1rem}.team{display:grid;gap:clamp(1.5rem,4vw,3rem)}@media (min-width:820px){.team{grid-template-columns:repeat(2,minmax(0,1fr))}}.member figure{border-radius:var(--r-lg);overflow:hidden;background:var(--bg-alt);max-width:400px;aspect-ratio:3/4}.member img{width:100%;height:100%;aspect-ratio:3/4;object-fit:cover}.member--udo img{object-position:50% 50%}.member--dirk img{object-position:50% 50%}.member h3{margin-top:1rem;font-size:var(--step-2)}.member .role{font-family:var(--font-mono);font-size:0.73rem;letter-spacing:0.12em;text-transform:uppercase;color:var(--accent);margin-top:0.35rem}.member p{margin-top:0.6rem;color:var(--fg-soft)}.advisor{background:var(--surface);border:1px solid var(--edge);border-radius:var(--r-xl);overflow:hidden;box-shadow:var(--shadow-1);display:grid}@media (min-width:900px){.advisor{grid-template-columns:minmax(0,1fr) minmax(0,1.05fr)}}.adv-ctrl{padding:clamp(1.3rem,3vw,2.2rem);display:flex;flex-direction:column;gap:1.1rem}.adv-ctrl h3{font-size:var(--step-1)}.adv-swatches{display:grid;grid-template-columns:repeat(auto-fill,minmax(86px,1fr));gap:0.55rem}.sw{border:1px solid var(--edge);background:none;cursor:pointer;border-radius:var(--r-md);padding:0.45rem;text-align:left;transition:border-color 0.2s var(--ease),transform 0.2s var(--ease)}.sw:hover{transform:translateY(-2px)}.sw[aria-pressed="true"]{border-color:var(--clay);box-shadow:0 0 0 2px var(--clay)}.sw .chip{display:block;height:48px;border-radius:7px;margin-bottom:0.4rem}.sw b{font-size:0.8rem;display:block;font-weight:500}.sw span{font-size:0.68rem;color:var(--fg-mute);font-family:var(--font-mono)}.adv-room{position:relative;min-height:320px;display:grid;place-items:center;padding:var(--sp-5)}.adv-room .wall{width:min(300px,78%);aspect-ratio:3/4;border-radius:6px;box-shadow:0 30px 60px -20px oklch(0 0 0 / 0.5);display:grid;place-items:center;text-align:center;padding:1.1rem;position:relative;overflow:hidden;transition:background 0.6s var(--ease),color 0.6s var(--ease)}.adv-room .wall::after{content:"";position:absolute;inset:0;background:radial-gradient(120% 80% at 30% 10%,oklch(1 0 0 / 0.35),transparent 60%);mix-blend-mode:overlay}.adv-room .wall b{font-family:var(--font-display);font-size:1.3rem;line-height:1.15}.adv-room .wall span{font-family:var(--font-mono);font-size:0.66rem;letter-spacing:0.14em;text-transform:uppercase;margin-top:0.5rem;display:block;opacity:0.78}.adv-note{font-size:0.9rem;color:var(--fg-soft)}.contact-grid{display:grid;gap:clamp(2rem,5vw,3.5rem)}@media (min-width:900px){.contact-grid{grid-template-columns:minmax(0,1fr) minmax(0,1.1fr)}}.contact-list{list-style:none;padding:0;display:grid;gap:1.1rem;margin-top:1.6rem}.contact-list li{display:grid;grid-template-columns:8.5rem minmax(0,1fr);gap:1rem;align-items:baseline;padding-bottom:1.1rem;border-bottom:1px solid var(--edge)}.contact-list .k{font-family:var(--font-mono);font-size:0.7rem;letter-spacing:0.13em;text-transform:uppercase;color:var(--fg-mute)}.contact-list a:hover{color:var(--clay)}.form{display:grid;gap:1rem}.field{display:grid;gap:0.35rem}.field label{font-size:0.85rem;color:var(--fg-soft)}.field input,.field textarea,.field select{background:var(--bg);border:1px solid var(--edge);border-radius:var(--r-md);padding:0.8rem 0.95rem;width:100%;min-height:44px;transition:border-color 0.2s var(--ease)}.field input:focus,.field textarea:focus,.field select:focus{border-color:var(--clay);outline:none}.field textarea{min-height:130px;resize:vertical}@media (min-width:640px){.form-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}}.form-status{font-size:0.9rem;color:var(--sage);min-height:1.2em}.form-status.err{color:var(--clay)}.faq{border-top:1px solid var(--edge)}.faq details{border-bottom:1px solid var(--edge)}.faq summary{cursor:pointer;padding-block:1.1rem;list-style:none;display:flex;justify-content:space-between;gap:1rem;align-items:center;font-family:var(--font-display);font-size:var(--step-1)}.faq summary::-webkit-details-marker{display:none}.faq summary::after{content:"+";font-family:var(--font-mono);color:var(--accent);font-size:1.2rem}.faq details[open] summary::after{content:"–"}.faq details p{padding-bottom:1.1rem;color:var(--fg-soft);max-width:70ch}.cta-band{background:var(--ink);color:var(--paper);border-radius:var(--r-xl);padding:clamp(2rem,5vw,3.5rem);overflow:hidden}html[data-theme="dark"] .cta-band{background:var(--surface)}.cta-band h2{max-width:20ch}.cta-band p{color:oklch(0.86 0.01 80);margin-top:0.8rem;max-width:52ch}.cta-band .btn{margin-top:1.6rem}.site-foot{background:var(--ink);color:oklch(0.86 0.01 82);padding-block:clamp(2.5rem,6vw,4rem) 2rem;margin-top:clamp(3rem,8vw,6rem)}html[data-theme="dark"] .site-foot{background:oklch(0.13 0.01 50)}.foot-grid{display:grid;gap:2rem}@media (min-width:800px){.foot-grid{grid-template-columns:1.4fr 1fr 1fr}}.foot-grid h4{font-family:var(--font-mono);font-size:0.7rem;letter-spacing:0.15em;text-transform:uppercase;color:oklch(0.62 0.01 82);margin-bottom:0.9rem}.foot-grid ul{list-style:none;padding:0;display:grid;gap:0.45rem;font-size:0.92rem}.foot-grid a:hover{color:var(--ochre)}.foot-bottom{margin-top:2.5rem;padding-top:1.3rem;border-top:1px solid oklch(1 0 0 / 0.12);display:flex;flex-wrap:wrap;gap:0.6rem 1.5rem;font-size:0.8rem;color:oklch(0.6 0.01 82)}.foot-bottom a:hover{color:var(--ochre)}.prose{max-width:72ch}.prose h2{font-size:var(--step-2);margin-top:2.4rem}.prose h3{font-size:var(--step-1);margin-top:1.8rem}.prose p,.prose li{color:var(--fg-soft)}.prose ul{padding-left:1.2rem}.prose a{color:var(--clay);text-decoration:underline;text-underline-offset:3px}.detail-hero{padding-block:clamp(2.5rem,6vw,5rem) 0}.detail-hero h1{max-width:18ch}.detail-hero .lede{margin-top:1.1rem}.detail-media{margin-top:clamp(2rem,4vw,3rem);border-radius:var(--r-lg);overflow:hidden}.detail-media img{width:100%;aspect-ratio:16/9;object-fit:cover}.spec-list{border-top:1px solid var(--edge);margin-top:2rem}.spec-list div{display:grid;grid-template-columns:10rem minmax(0,1fr);gap:1rem;padding-block:0.85rem;border-bottom:1px solid var(--edge)}.spec-list dt{font-family:var(--font-mono);font-size:0.7rem;letter-spacing:0.12em;text-transform:uppercase;color:var(--fg-mute)}.spec-list dd{color:var(--fg-soft)}.reveal{opacity:0;transform:translateY(16px);transition:opacity 0.7s var(--ease),transform 0.7s var(--ease)}.reveal.is-in{opacity:1;transform:none}@media (prefers-reduced-motion:reduce){.reveal{opacity:1 !important;transform:none !important;transition:none}html{scroll-behavior:auto}*,*::before,*::after{animation-duration:0.01ms !important;transition-duration:0.01ms !important}}