@charset "UTF-8";:root{--surface-a: #0b1220;--surface-b: #0f172a;--surface-c: #111b2c;--surface-d: #132033;--surface-e: #1e293b;--surface-f: #233246;--surface-g: #334155;--surface-highlight: #0d2033;--surface-frame: #1f2a3a;--surface-overlay: rgba(255,255,255,.03);--surface-overlay-hover: rgba(255,255,255,.07);--text-color: #f1f5f9;--text-color-soft: #e2e8f0;--text-color-secondary: #94a3b8;--text-color-muted: #cbd5e1;--text-color-inverse: #0b1220;--accent-a: #38bdf8;--accent-b: #6366f1;--accent-c: #8b5cf6;--accent-strong: #3b82f6;--accent-primary: #1d4ed8;--accent-primary-hover: #2563eb;--accent-warn: #f59e0b;--brand-gradient: linear-gradient(90deg,#38bdf8,#6366f1 55%,#8b5cf6);--status-archived-bg: var(--surface-g);--status-alpha-bg: #92400e;--error-color: #f87171;--warn-color: #facc15;--success-color: #4ade80;--info-color: #60a5fa;--border-color: var(--surface-e);--border-color-alt: var(--surface-f);--border-color-strong: var(--surface-g);--border-radius: 6px;--card-radius: 20px;--shadow-elevated: 0 4px 26px -12px rgba(0,0,0,.65);--shadow-elevated-hover: 0 10px 38px -14px rgba(0,0,0,.75);--shadow-media-hover: 0 10px 34px -16px rgba(0,0,0,.8);--focus-ring: var(--accent-strong)}.dashboard-host{display:block;width:100vw;height:100dvh;--seam-top: 55%;--seam-bottom: 45%;--media-blur-base: 2.2px;--media-blur-active: 0px;--seam-glow-width: 1.4%;--mini-panels-height: 22dvh;--heading-offset: 1.6rem;position:relative;min-height:100dvh;overflow:hidden;background:var(--surface-a);color:var(--text-color);-webkit-font-smoothing:antialiased;isolation:isolate;font-family:system-ui,Segoe UI,Roboto,Ubuntu,sans-serif}.dashboard-host.left-hover{--seam-top: 65%;--seam-bottom: 55%}.dashboard-host.right-hover{--seam-top: 45%;--seam-bottom: 35%}.hero-split{position:absolute;top:0;left:0;right:0;height:calc(100dvh - var(--mini-panels-height));perspective:1400px;z-index:1}.hero-split:before{content:"";position:absolute;inset:0;pointer-events:none;background:none;opacity:.35;transition:opacity .6s ease}.dashboard-host.left-hover .hero-split:before,.dashboard-host.right-hover .hero-split:before{opacity:.55}.hero-split{position:absolute}.hero-split:after{background:repeating-linear-gradient(-64deg,rgba(255,255,255,.065) 0 14px,transparent 14px 28px),repeating-linear-gradient(0deg,rgba(255,255,255,.02) 0 2px,transparent 2px 4px),radial-gradient(circle at 30% 70%,rgba(255,255,255,.05),transparent 70%);background-blend-mode:overlay,normal,overlay;animation:stripesFlow 26s linear infinite;background-size:auto,auto,140% 140%;opacity:.38}.panel{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:flex-end;padding:clamp(1.2rem,3vw,3rem) clamp(1.2rem,4vw,4rem);cursor:pointer;transition:clip-path .7s cubic-bezier(.25,.8,.25,1),filter .7s cubic-bezier(.25,.8,.25,1),transform .7s cubic-bezier(.25,.8,.25,1);contain:layout paint style;will-change:clip-path;overflow:hidden}.panel--coding{clip-path:polygon(0 0,var(--seam-top) 0,var(--seam-bottom) 100%,0 100%);z-index:1;background-color:var(--surface-highlight)}.panel--photo{clip-path:polygon(var(--seam-top) 0,100% 0,100% 100%,var(--seam-bottom) 100%);z-index:2}.panel__heading{position:absolute;bottom:calc(var(--mini-panels-height) + var(--heading-offset));z-index:10}.panel__heading h1{margin:0;font:700 clamp(3rem,7vw,5.4rem)/.95 system-ui,sans-serif;letter-spacing:1px;color:var(--text-color);text-shadow:0 4px 26px rgba(0,0,0,.55),0 0 2px rgba(0,0,0,.6)}.heading-left{left:clamp(2rem,6vw,5rem)}.heading-right{right:clamp(2rem,6vw,5rem);text-align:right}.panel__media,.panel__media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.panel__media{filter:brightness(.65) saturate(1) blur(var(--media-blur-base));will-change:filter}.dashboard-host.left-hover .panel--coding .panel__media,.dashboard-host.right-hover .panel--photo .panel__media,.panel:hover .panel__media,.panel:focus-visible .panel__media{filter:brightness(.96) saturate(1.2) blur(var(--media-blur-active))}.dashboard-host.left-hover .panel--coding .panel__media:after,.dashboard-host.right-hover .panel--photo .panel__media:after,.panel:hover .panel__media:after,.panel:focus-visible .panel__media:after{opacity:.5;animation-duration:20s}.panel__media:after{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at 22% 28%,rgba(255,255,255,.12),transparent 62%),radial-gradient(circle at 78% 72%,rgba(255,255,255,.08),transparent 68%),repeating-radial-gradient(circle at 50% 50%,rgba(255,255,255,.04) 0px,rgba(255,255,255,.04) 8px,transparent 8px,transparent 16px);mix-blend-mode:overlay;opacity:.22;animation:ripple-drift 28s ease-in-out infinite;transition:opacity .6s ease}.dashboard-host.left-hover .panel--coding .panel__media:after,.dashboard-host.right-hover .panel--photo .panel__media:after{opacity:.35;animation-duration:20s}@keyframes ripple-drift{0%{transform:translateZ(0) scale(1);filter:blur(0)}25%{transform:translate3d(-1.2%,-.8%,0) scale(1.012);filter:blur(.3px)}50%{transform:translate3d(.8%,1.1%,0) scale(1.018);filter:blur(.5px)}75%{transform:translate3d(-.6%,.4%,0) scale(1.01);filter:blur(.25px)}to{transform:translateZ(0) scale(1);filter:blur(0)}}@keyframes stripesFlow{0%{background-position:0 0,0 0,0 0}to{background-position:800px 0,0 4px,0 0}}@media (max-height: 560px){.brand-hero{top:.6rem}.brand-title{font-size:clamp(2rem,8vw,4.2rem)}}@media (max-width: 860px){.dashboard-host{--mini-panels-height:33.333dvh;height:100dvh;min-height:100dvh;overflow:hidden}.hero-split{position:absolute;top:0;left:0;right:0;height:calc(100dvh - var(--mini-panels-height));display:flex;flex-direction:column}.panel{position:relative;inset:auto;flex:1 1 0;clip-path:none!important;width:100%;padding:0}.panel--coding,.panel--photo{z-index:auto}.panel__heading{position:absolute;inset:50% auto auto 50%;transform:translate(-50%,-50%);text-align:center;margin:0;width:100%;max-width:100%;padding:0 1rem;display:flex;align-items:center;justify-content:center}.panel__heading h1{font-size:clamp(2.2rem,10vw,3.4rem);line-height:.95;margin:0 auto;text-align:center;width:100%}.heading-right,.heading-left{text-align:center!important;left:50%!important;right:auto!important}.mini-panels{position:absolute;inset:auto 0 0;height:var(--mini-panels-height);pointer-events:none}.mini-panels:before{display:block}.mini-panel{position:absolute;inset:0;pointer-events:auto}.mini-panel__content{top:50%;transform:translate(-50%,-50%)}}@media (prefers-reduced-motion: reduce){.panel,.panel__content{transition:none!important}.panel__content{animation:none!important}.panel__overlay{-webkit-backdrop-filter:none!important;backdrop-filter:none!important}.panel__media{filter:brightness(.8) saturate(1.05)!important}.panel__media:after{animation:none}.panel--coding:hover,.panel--photo:hover{transform:none}.hero-split:before{opacity:.3}}.hero-split:before,.hero-split:after{content:none!important;background:none!important;animation:none!important}.brand-hero{width:80%;position:fixed;top:clamp(.8rem,2.5vh,1.6rem);left:50%;transform:translate(-50%);z-index:30;pointer-events:none;text-align:center}.brand-title{margin:0;font:700 clamp(2.2rem,6.5vw,4.6rem)/.9 system-ui,sans-serif;background:var(--brand-gradient);-webkit-background-clip:text;color:transparent;filter:drop-shadow(0 4px 20px rgba(0,0,0,.55))}.brand-sub{margin:.25rem 0 0;font-size:clamp(.7rem,1.1vw,.95rem);letter-spacing:.4px;color:var(--text-color-soft);opacity:.85;text-shadow:0 2px 10px rgba(0,0,0,.5)}.brand-hero{pointer-events:auto}.social-links{margin:.55rem 0 0;display:flex;justify-content:center;gap:.55rem}.social-btn{--size:38px;width:var(--size);height:var(--size);display:inline-flex;align-items:center;justify-content:center;border:1px solid rgba(255,255,255,.18);border-radius:11px;background:var(--surface-overlay);color:var(--text-color-soft);text-decoration:none;transition:background .35s ease,border-color .35s ease,color .35s ease,box-shadow .35s ease;-webkit-backdrop-filter:blur(6px) saturate(1.2);backdrop-filter:blur(6px) saturate(1.2);position:relative}.social-btn svg{width:19px;height:19px}.social-btn:hover{background:linear-gradient(135deg,var(--surface-e),var(--surface-g));border-color:var(--border-color-strong);color:var(--text-color)}.social-btn:focus-visible{outline:2px solid var(--focus-ring);outline-offset:3px}@media (max-width: 860px){.social-links{gap:.65rem}.social-btn{--size:42px}}.mini-panels{position:absolute;inset:auto 0 0;height:var(--mini-panels-height);min-height:200px;pointer-events:none}.mini-panels:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#0b122000,#0b12208c 40%,#0b1220f2);-webkit-backdrop-filter:blur(10px) saturate(1.15);backdrop-filter:blur(10px) saturate(1.15);border-top:1px solid rgba(255,255,255,.07);pointer-events:none;z-index:2}.mini-panel{position:absolute;inset:0;cursor:pointer;padding:0;margin:0;overflow:hidden;pointer-events:auto;transition:clip-path .62s cubic-bezier(.25,.8,.25,1),filter .62s cubic-bezier(.25,.8,.25,1);background:var(--surface-b)}.mini-panel:before{content:"";position:absolute;left:0;right:0;bottom:0;height:55%;pointer-events:none;background:linear-gradient(180deg,#0a101c00,#0a101c8c 45%,#0a101ceb);opacity:.88;transition:opacity .6s ease;z-index:3}.mini-panel.mini-active:before,.mini-panel:hover:before,.mini-panel:focus-visible:before{opacity:1}.mini-panel .mini-panel__media img{filter:blur(var(--media-blur-base)) brightness(.78) saturate(1.05);transform:scale(1.04);transition:filter .6s ease,transform .7s ease}.mini-panel .mini-panel__media:after{content:"";position:absolute;inset:0;pointer-events:none;background:repeating-linear-gradient(115deg,#ffffff14 0 14px,#fff0 14px 32px),radial-gradient(circle at 28% 68%,rgba(255,255,255,.14),transparent 62%);mix-blend-mode:overlay;opacity:.22;animation:dashStripes 50s linear infinite;transition:opacity .6s ease}.mini-panel.mini-active .mini-panel__media img,.mini-panel:hover .mini-panel__media img,.mini-panel:focus-visible .mini-panel__media img{filter:blur(0) brightness(.97) saturate(1.2)}.mini-panel.mini-active .mini-panel__media:after,.mini-panel:hover .mini-panel__media:after,.mini-panel:focus-visible .mini-panel__media:after{opacity:.4;animation-duration:30s}.mini-panel__content{position:absolute;top:50%;transform:translate(-50%,-50%);display:flex;align-items:center;justify-content:center;z-index:4;pointer-events:none;padding:0 .75rem;width:auto;height:auto;transition:left .62s cubic-bezier(.25,.8,.25,1),top .62s cubic-bezier(.25,.8,.25,1)}.mini-panel__title{position:relative;margin:0;text-align:center;padding:.55rem 1.05rem .6rem;border-radius:14px;-webkit-backdrop-filter:blur(6px) saturate(1.15);backdrop-filter:blur(6px) saturate(1.15);background:linear-gradient(135deg,#1420329e,#14203238);box-shadow:0 4px 18px -6px #0000008c;font:600 clamp(1rem,1.6vw,1.25rem)/1 system-ui,sans-serif;letter-spacing:.85px;color:var(--text-color);text-shadow:0 2px 14px rgba(0,0,0,.6)}.mini-panel:focus-visible{outline:2px solid var(--focus-ring);outline-offset:3px}@media (max-width: 860px){.mini-panels{position:absolute;inset:auto 0 0;height:var(--mini-panels-height);pointer-events:none}.mini-panels:before{display:block}.mini-panel{position:absolute;inset:0;pointer-events:auto}.mini-panel__content{top:50%;transform:translate(-50%,-50%)}}.about-host h1,.contact-host h1,.imprint-host h1,.photo-header .section-title,.coding-hero .section-title,.coding-hero h2,.coding-hero h1{margin:0;font:700 clamp(2.2rem,5vw,3.6rem)/1.1 system-ui,sans-serif;letter-spacing:1.15px;display:inline-block;padding-bottom:.15em}.hero-intro{margin:0;max-width:70ch;font-size:clamp(.9rem,1.08vw,1.05rem);line-height:1.45;color:var(--text-color-secondary)}.section-block,.contact-host .page-intro,.media-card,.project-card,.experience-card{position:relative;display:flex;flex-direction:column;gap:.75rem;padding:1rem 1rem 1.15rem;background:linear-gradient(145deg,#111b2ceb,#111b2c99);border:1px solid var(--border-color);border-radius:20px;box-shadow:0 4px 26px -12px #000000a6;-webkit-backdrop-filter:blur(6px) saturate(1.12);backdrop-filter:blur(6px) saturate(1.12);transition:border-color .45s cubic-bezier(.25,.8,.25,1),transform .45s cubic-bezier(.25,.8,.25,1),box-shadow .45s cubic-bezier(.25,.8,.25,1),background .45s cubic-bezier(.25,.8,.25,1);overflow:hidden}.section-block:before,.contact-host .page-intro:before,.media-card:before,.project-card:before,.experience-card:before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at 30% 25%,rgba(255,255,255,.08),transparent 60%),linear-gradient(120deg,#3b82f61f,#6366f11f);mix-blend-mode:overlay;opacity:.9;transition:opacity .45s cubic-bezier(.25,.8,.25,1)}.section-block:hover,.contact-host .page-intro:hover,.media-card:hover,.project-card:hover,.experience-card:hover{transform:translateY(-4px);border-color:var(--border-color-strong);box-shadow:var(--shadow-elevated-hover)}.back-link{font-size:.7rem;letter-spacing:.6px;text-decoration:none;color:var(--text-color-secondary);padding:.45rem .75rem .4rem;border:1px solid var(--border-color);border-radius:10px;background:#ffffff08;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);transition:background .3s ease,border-color .3s ease,color .3s ease;display:inline-flex;align-items:center;gap:.35rem}.back-link:hover{background:var(--surface-overlay-hover);color:var(--text-color);border-color:var(--border-color-strong)}.back-link:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}.u-dim{color:var(--text-color-secondary)}@media (prefers-reduced-motion: reduce){.back-link{transition:none!important}}.coding-host{display:block;background:var(--surface-b);color:var(--text-color);min-height:100dvh}.coding-layout{max-width:1500px;margin:0 auto;padding:clamp(1.2rem,2vw,2.4rem) clamp(1rem,3vw,3rem) 4rem}.coding-hero{display:grid;gap:.9rem;margin:0 0 1.8rem}.project-grid{display:grid;gap:1.25rem;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));align-items:stretch}.empty{grid-column:1/-1;text-align:center;padding:3rem 1rem;border:2px dashed var(--border-color);border-radius:18px;font-size:.9rem;letter-spacing:.5px;color:var(--text-color-secondary)}.card-meta{display:flex;gap:.5rem;font-size:.6rem;letter-spacing:.8px;text-transform:uppercase;font-weight:600;color:var(--text-color-secondary)}.year,.status{background:var(--surface-e);padding:.25rem .5rem;border-radius:6px}.status.archived{background:var(--status-archived-bg);color:var(--text-color-muted);text-decoration:line-through}.status.alpha{background:var(--status-alpha-bg);color:var(--text-color)}.card-title{margin:0;font-size:1.05rem;font-weight:600;letter-spacing:.6px}.card-desc{margin:0;font-size:.78rem;line-height:1.35;letter-spacing:.3px;color:var(--text-color-secondary)}.links{display:flex;gap:.6rem;margin-top:auto}.btn{--btn-bg:var(--surface-e);--btn-border:var(--border-color-strong);--btn-color:var(--text-color-soft);display:inline-flex;align-items:center;justify-content:center;text-decoration:none;font-size:.68rem;letter-spacing:.7px;padding:.55rem .85rem .5rem;border:1px solid var(--btn-border);border-radius:9px;background:var(--btn-bg);color:var(--btn-color);font-weight:500;transition:background .3s ease,border-color .3s ease,color .3s ease,box-shadow .3s ease}.btn.primary{--btn-bg:var(--accent-primary);--btn-border:var(--accent-primary);--btn-color:var(--text-color)}.btn.secondary:hover{background:var(--surface-f)}.btn.primary:hover{background:var(--accent-primary-hover);box-shadow:0 0 0 3px #2563eb40}.btn:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}.back-bar{display:flex;align-items:center;margin:0 0 1.2rem}.experience-section{margin:2.4rem 0 3rem}.section-title.small{font-size:clamp(1.4rem,3.2vw,2.2rem);letter-spacing:.9px}.experience-list{display:grid;gap:1.1rem;grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}.experience-card{padding:1rem 1.1rem 1.15rem}.exp-head{display:flex;flex-wrap:wrap;gap:.45rem .75rem;align-items:baseline}.exp-company{margin:0;font-size:1rem;font-weight:600;letter-spacing:.6px}.exp-role{font-size:.65rem;letter-spacing:.55px;text-transform:uppercase;background:var(--surface-e);padding:.3rem .55rem .28rem;border-radius:6px;border:1px solid var(--border-color-alt)}.exp-period{font-size:.6rem;letter-spacing:.55px;color:var(--text-color-secondary);padding:.25rem .45rem .2rem;border:1px solid var(--border-color-alt);border-radius:6px;background:var(--surface-d)}.exp-summary{margin:.35rem 0 .55rem;font-size:.78rem;line-height:1.4;letter-spacing:.3px;color:var(--text-color-secondary)}.exp-stack,.exp-highlights{margin:0 0 .55rem;padding-left:1.05rem}.exp-stack{list-style:disc;display:flex;flex-wrap:wrap;gap:.45rem .85rem;padding-left:0;list-style:none}.exp-stack li{font-size:.55rem;letter-spacing:.55px;text-transform:uppercase;padding:.34rem .55rem .3rem;border:1px solid var(--border-color-alt);background:var(--surface-d);border-radius:7px;color:var(--text-color-muted)}.exp-highlights{list-style:disc}.exp-highlights li{font-size:.68rem;line-height:1.35;margin:0 0 .35rem;color:var(--text-color-secondary)}@media (max-width: 780px){.back-bar{margin-bottom:.9rem}.project-card{padding:1rem .95rem 1.1rem}.experience-list{grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}}@media (prefers-reduced-motion: reduce){.project-card,.btn{transition:none!important}}.photography-host{display:block;background:var(--surface-b);color:var(--text-color);min-height:100dvh}.photography-layout{max-width:1500px;margin:0 auto;padding:clamp(1.2rem,2vw,2.4rem) clamp(1rem,3vw,3rem) 4rem}.back-bar{display:flex;margin:0 0 1.1rem}.back-link{font-size:.7rem;letter-spacing:.6px;text-decoration:none;color:var(--text-color-secondary);padding:.45rem .75rem .4rem;border:1px solid var(--border-color);border-radius:10px;background:#ffffff08;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);transition:.3s}.back-link:hover{background:var(--surface-overlay-hover);color:var(--text-color)}.back-link:focus-visible{outline:2px solid var(--focus-ring)}.photo-header{display:grid;gap:.9rem;margin:0 0 1.9rem}.media-card{border-radius:20px}.gallery-section{margin-top:2.4rem}.section-sub{margin:0 0 1.1rem;font-size:clamp(1.3rem,2.4vw,2rem);letter-spacing:.75px;font-weight:600;background:var(--brand-gradient);-webkit-background-clip:text;color:transparent}.gallery{column-width:440px;column-gap:.75rem;width:100%}@media (max-width: 900px){.gallery{column-width:300px}}@media (max-width: 640px){.gallery{column-width:220px;column-gap:.6rem}}.empty{column-span:all;text-align:center;padding:3rem 1rem;border:2px dashed var(--border-color);border-radius:24px;font-size:.9rem;color:var(--text-color-secondary);letter-spacing:.5px}.media-card{break-inside:avoid;margin:0 0 .75rem;width:100%}.media-card.image{padding:0;border:1px solid var(--border-color);background:var(--surface-c);position:relative;box-shadow:var(--shadow-elevated)}.media-card.image:hover{box-shadow:var(--shadow-media-hover)}.media-card.image .media-thumb{width:100%;overflow:hidden;border-radius:18px}.media-card.image .media-thumb img{display:block;width:100%;height:auto;object-fit:cover;transition:transform .7s cubic-bezier(.25,.8,.25,1),filter .7s}.media-card.image:hover .media-thumb img{transform:scale(1.04);filter:brightness(1.06) saturate(1.08)}.orientation-portrait .media-thumb img{object-fit:contain}.media-card.image .meta{position:absolute;inset:auto 0 0;padding:.55rem .65rem;background:linear-gradient(180deg,#0000,#0b1220e6 85%);display:flex;flex-direction:column;gap:.4rem;opacity:0;transition:opacity .4s ease}.media-card.image:hover .meta,.media-card.image:focus-within .meta{opacity:1}.media-card.image .taglist{margin:0}.video-embed{width:100%;height:100%;border:none;border-radius:18px;display:block;object-fit:cover}.media-card.video{padding:0;border:1px solid var(--border-color);background:var(--surface-c);position:relative;box-shadow:var(--shadow-elevated)}.media-card.video:hover{box-shadow:var(--shadow-media-hover)}.media-card.video .video-frame{aspect-ratio:16/9;width:100%}.media-card.video .media-thumb{border-radius:18px;overflow:hidden}.media-card.video .meta{position:absolute;inset:auto 0 0;padding:.55rem .65rem;background:linear-gradient(180deg,#0000,#0b1220e6 85%);display:flex;flex-direction:column;gap:.4rem;opacity:0;transition:opacity .4s ease}.media-card.video:hover .meta,.media-card.video:focus-within .meta{opacity:1}.media-card.video .taglist{margin:0}.media-actions{display:flex;gap:.45rem;align-items:center;flex-wrap:wrap}.download-btn{position:relative;font-size:.55rem;letter-spacing:.55px;text-transform:uppercase;padding:.42rem .75rem .38rem;border:1px solid transparent;background:var(--brand-gradient);color:#fff;border-radius:999px;text-decoration:none;display:inline-flex;align-items:center;gap:.4rem;line-height:1;font-weight:600;box-shadow:0 4px 14px -6px #0000008c;transition:background .4s ease,box-shadow .4s ease,transform .35s ease}.download-btn:hover{box-shadow:0 6px 20px -6px #000000a6;transform:translateY(-2px)}.download-btn:active{transform:translateY(0)}.download-btn:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}.download-btn .icon{width:.8rem;height:.8rem;display:inline-flex;align-items:center;justify-content:center;position:relative}.download-btn .icon:before{content:"\2193";font-size:.7rem;line-height:1}.download-btn .label{line-height:1}.media-caption,.type-pill{display:none!important}.lightbox-backdrop{position:fixed;inset:0;background:#000000d1;-webkit-backdrop-filter:blur(10px) saturate(1.25);backdrop-filter:blur(10px) saturate(1.25);display:flex;align-items:center;justify-content:center;z-index:9999;padding:2rem clamp(1rem,3vw,2rem);animation:lbFade .35s ease}.lb-close-global{position:fixed;top:.9rem;right:.9rem;z-index:10000;width:48px;height:48px;border-radius:14px;border:1px solid rgba(255,255,255,.25);background:#141c2ab3;color:#fff;font-size:1.55rem;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;-webkit-backdrop-filter:blur(8px) saturate(1.3);backdrop-filter:blur(8px) saturate(1.3);transition:.35s;box-shadow:0 6px 26px -8px #000000a6}.lb-close-global:hover{background:#243046d9}.lb-close-global:focus-visible{outline:2px solid var(--focus-ring);outline-offset:3px}.media-card.image .meta,.media-card.video .meta{will-change:opacity}.lightbox-shell{max-width:min(90vw,1400px);width:100%;max-height:85dvh;display:flex;flex-direction:column;gap:1rem;position:relative;padding:1rem clamp(.8rem,2vw,1.4rem)}.lb-media{margin:0;display:flex;flex-direction:column;gap:.75rem;align-items:center}.lb-media img,.lb-media video{max-width:100%;max-height:70dvh;width:auto;height:auto;object-fit:contain;border-radius:16px;background:#000;box-shadow:0 8px 34px -10px #000000bf}.lb-media.is-video video{background:#000}.lb-caption{width:100%;text-align:left;gap:.4rem;display:flex;flex-direction:column}.lb-caption h3{font-size:clamp(.95rem,1.8vw,1.25rem)}.lb-nav{padding:.5rem;position:fixed;inset:0;pointer-events:none;display:flex;align-items:center;justify-content:space-between}.lb-nav-btn{pointer-events:auto;width:54px;height:54px;border-radius:50%;border:1px solid rgba(255,255,255,.3);background:#0f16248c;-webkit-backdrop-filter:blur(6px) saturate(1.2);backdrop-filter:blur(6px) saturate(1.2);color:#fff;font-size:2rem;line-height:1;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:.3s;box-shadow:0 4px 18px -6px #000000a6}.lb-nav-btn:hover:not(:disabled){background:#1e2c42bf}.lb-nav-btn:disabled{opacity:.25;cursor:default}.lb-nav-btn:focus-visible{outline:2px solid var(--focus-ring);outline-offset:3px}.lb-nav-btn.prev{margin-left:.4rem}.lb-nav-btn.next{margin-right:.4rem}@media (max-width: 820px){.lb-nav{padding:.5rem 0;align-items:end}.gallery{grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}}@media (max-width: 600px){.media-card{padding:.8rem .8rem 1rem}.photo-header .section-title{font-size:clamp(2rem,9vw,3rem)}}@media (max-width: 780px){.lb-nav-btn{width:44px;height:44px;font-size:1.6rem}.lb-media img,.lb-media video{max-height:60dvh}}@media (prefers-reduced-motion: reduce){.media-card{transition:none!important}}.media-card{position:relative}.media-kind{position:absolute;top:.55rem;right:.55rem;z-index:5;padding:.34rem .6rem .3rem;font-size:.55rem;letter-spacing:.55px;font-weight:600;border-radius:8px;background:var(--surface-d);border:1px solid var(--border-color-alt);color:var(--text-color-muted);text-transform:uppercase;line-height:1;display:inline-flex;align-items:center;box-shadow:none}.media-kind.kind-video{border-color:var(--accent-warn);color:var(--text-color)}.media-kind.kind-image{border-color:var(--border-color-alt)}.video-poster{width:100%;height:100%;object-fit:cover;display:block;border-radius:18px}.about-host,.contact-host,.imprint-host{display:block;background:var(--surface-b);color:var(--text-color);min-height:100dvh;padding:clamp(1.2rem,2vw,2.6rem) clamp(1rem,3vw,3rem) 4rem;max-width:1200px;margin:0 auto;font-size:.9rem;line-height:1.5}.about-host h1,.contact-host h1,.imprint-host h1{font-size:clamp(2.2rem,5.2vw,3.4rem)}.about-host h2,.contact-host h2,.imprint-host h2{margin:2.2rem 0 .85rem;font:600 clamp(1.1rem,2.2vw,1.5rem)/1.15 system-ui,sans-serif;letter-spacing:.8px}.about-host h1+p,.contact-host h1+p,.imprint-host h1+p{margin-top:.6rem}.about-host p,.contact-host p,.imprint-host p{margin:0 0 1.05rem}.about-host ul,.contact-host ul,.imprint-host ul{margin:.3rem 0 1.2rem;padding-left:1.1rem}.about-host li,.contact-host li,.imprint-host li{margin:0 0 .4rem}.imprint-host ol{counter-reset:sec;list-style:none;margin:.6rem 0 1.6rem;padding:0}.imprint-host ol>li{counter-increment:sec;margin:0 0 1.1rem;padding-left:2.2rem;position:relative}.imprint-host ol>li:before{content:counter(sec) ".";position:absolute;left:0;top:0;font-weight:600;color:var(--text-color-muted)}.imprint-host ol strong{font-weight:600}.imprint-host .u-dim{color:var(--text-color-secondary)}.page-intro{max-width:880px;margin:2rem 0 2.4rem}.page-intro .lead{margin:.65rem 0 0;font-size:clamp(.92rem,1.08vw,1.05rem);line-height:1.5;color:var(--text-color-secondary)}.section-grid{display:grid;gap:1.7rem;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));align-items:start}.section-block{padding:1.15rem 1.1rem 1.25rem;position:relative}.section-block h2{margin:.1rem 0 .75rem;font:600 1rem/1.15 system-ui,sans-serif;letter-spacing:.8px}.key-points{list-style:disc;margin:.4rem 0 1rem;padding-left:1.1rem}.key-points li{font-size:.72rem;line-height:1.35;margin:0 0 .4rem;color:var(--text-color-secondary)}.flat-list{list-style:none;margin:.2rem 0 .9rem;padding:0;font-size:.72rem;letter-spacing:.4px}.flat-list li{margin:0 0 .35rem;color:var(--text-color-secondary)}.compact-ol{counter-reset:item;list-style:none;margin:.4rem 0 1.1rem;padding:0}.compact-ol>li{counter-increment:item;position:relative;padding-left:1.6rem;margin:0 0 .6rem;font-size:.7rem;line-height:1.35;color:var(--text-color-secondary)}.compact-ol>li:before{content:counter(item) ".";position:absolute;left:0;top:0;font-weight:600;color:var(--text-color-muted)}.mini-tags{display:flex;flex-wrap:wrap;gap:.45rem;margin:.75rem 0 0}.mini-tags span{font-size:.55rem;letter-spacing:.55px;text-transform:uppercase;padding:.38rem .6rem .34rem;border:1px solid var(--border-color-alt);background:var(--surface-d);border-radius:8px;color:var(--text-color-muted)}.inline-link{color:var(--accent-primary);text-decoration:none;position:relative}.inline-link:after{content:"";position:absolute;left:0;right:0;bottom:-2px;height:1px;background:currentColor;opacity:.4;transition:opacity .3s ease}.inline-link:hover:after{opacity:1}.inline-link:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}.cta-row{display:flex;gap:.75rem;flex-wrap:wrap;margin:1rem 0 .5rem}.cta-btn{--btn-bg:var(--accent-primary);--btn-border:var(--accent-primary);--btn-color:var(--text-color);display:inline-flex;align-items:center;justify-content:center;text-decoration:none;font-size:.68rem;letter-spacing:.7px;padding:.7rem 1rem .64rem;border:1px solid var(--btn-border);border-radius:10px;background:var(--btn-bg);color:var(--btn-color);font-weight:600;transition:background .3s ease,border-color .3s ease,color .3s ease,box-shadow .3s ease,transform .3s ease}.cta-btn:hover{background:var(--accent-primary-hover);transform:translateY(-2px);box-shadow:0 4px 20px -6px #00000073}.cta-btn.alt{--btn-bg:var(--surface-e);--btn-border:var(--border-color);--btn-color:var(--text-color-soft);font-weight:500}.cta-btn.alt:hover{background:var(--surface-f);color:var(--text-color)}.cta-btn:focus-visible{outline:2px solid var(--focus-ring);outline-offset:3px}.note{font-size:.6rem;letter-spacing:.55px;color:var(--text-color-secondary);margin:.65rem 0 0}.small{font-size:.6rem;letter-spacing:.55px}.last-updated{font-size:.6rem;letter-spacing:.6px;margin:2.4rem 0 0!important}@media (max-width: 960px){.section-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}}@media (max-width: 640px){.section-grid{grid-template-columns:1fr}}@media (max-width: 760px){.about-host,.contact-host,.imprint-host{padding:1.2rem 1.1rem 3rem;font-size:.88rem}.about-host h1,.contact-host h1,.imprint-host h1{font-size:clamp(2rem,8vw,2.8rem)}.about-host h2,.contact-host h2,.imprint-host h2{margin-top:1.8rem}}@media (prefers-reduced-motion: reduce){.about-host a.back-link,.contact-host a.back-link,.imprint-host a.back-link{transition:none!important}}.contact-host .page-intro{padding:1.25rem 1.35rem 1.45rem;margin-bottom:2.2rem;position:relative}.contact-host .page-intro h1{margin-top:.15rem}.contact-host .page-intro .contact-buttons{margin-top:1.15rem}.contact-host .contact-btn{display:inline-flex;align-items:center;gap:.6rem;font-size:.7rem;letter-spacing:.55px;font-weight:500;line-height:1}.contact-host .contact-btn .ic{width:20px;height:20px;display:flex;align-items:center;justify-content:center;flex:0 0 20px;border-radius:6px;background:#ffffff0d;box-shadow:inset 0 0 0 1px #ffffff0f}.contact-host .contact-btn .ic svg{width:14px;height:14px;display:block}.contact-host .contact-btn .lbl{line-height:1;position:relative;top:1px}.contact-host .contact-btn:hover{background:linear-gradient(135deg,var(--surface-f),var(--surface-e));color:var(--text-color);border-color:var(--border-color-strong);transform:translateY(-2px)}.contact-host .contact-btn:hover:after{opacity:.8}.contact-host .contact-btn:active{transform:translateY(0)}.contact-host .contact-btn:focus-visible{outline:2px solid var(--focus-ring);outline-offset:3px}.contact-host .contact-btn span{position:relative;z-index:1}.contact-host .section-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}@media (max-width: 640px){.contact-host .section-grid{grid-template-columns:1fr}}.filter-bar{display:flex;flex-direction:column;gap:.9rem;margin:0 0 2.2rem}.fb-row{display:flex;flex-wrap:wrap;gap:.9rem 1.6rem;align-items:flex-start}.fb-group{display:flex;flex-wrap:wrap;gap:.55rem}.fb-options{display:flex;flex-wrap:wrap;align-items:center;gap:.7rem}.chip{position:relative;border:1px solid var(--border-color);background:var(--surface-overlay);color:var(--text-color-soft);font:500 .7rem/1.05 system-ui,sans-serif;letter-spacing:.55px;padding:.52rem .85rem .48rem;border-radius:1000px;cursor:pointer;transition:border-color .3s ease,background .3s ease,color .3s ease;text-transform:uppercase}.chip:hover{background:var(--surface-overlay-hover);border-color:var(--border-color-strong)}.chip.active{background:#3b82f62e;border-color:var(--focus-ring);color:var(--text-color)}.chip:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}.toggle{border:1px solid var(--border-color);background:#111b2c8c;color:var(--text-color-soft);font:500 .65rem/1 system-ui;padding:.5rem .75rem .45rem;border-radius:10px;letter-spacing:.55px;cursor:pointer;transition:background .3s ease,border-color .3s ease,color .3s ease}.toggle.on{background:#f59e0b26;border-color:var(--accent-warn);color:var(--text-color)}.toggle:hover{background:var(--surface-overlay-hover)}.count{font-size:.65rem;letter-spacing:.55px;color:var(--text-color-secondary);padding:.4rem .6rem;background:var(--surface-overlay);border:1px solid var(--border-color);border-radius:8px}.taglist,.card-tags{--tag-gap:.45rem;display:flex;flex-wrap:wrap;gap:var(--tag-gap);margin:.45rem 0 0;padding:0;list-style:none}.taglist li,.card-tags li{font-size:.55rem;letter-spacing:.55px;text-transform:uppercase;padding:.34rem .6rem .3rem;border:1px solid var(--border-color-alt);background:var(--surface-d);border-radius:8px;color:var(--text-color-muted);line-height:1}.year-pill,.year{display:inline-flex;align-items:center;justify-content:center;font-size:.58rem;letter-spacing:.6px;padding:.32rem .55rem .28rem;border:1px solid var(--border-color-alt);background:var(--surface-e);border-radius:8px;font-weight:600}@media (max-width: 780px){.filter-bar{gap:1rem}.fb-row{gap:.9rem 1.1rem}}@media (prefers-reduced-motion: reduce){.chip,.toggle{transition:none!important}}.profile-banner{position:relative;display:grid;gap:1rem 1.4rem;margin:0 0 2.4rem;padding:clamp(1.2rem,2vw,2rem) clamp(1rem,2.2vw,2.4rem);background:linear-gradient(145deg,#111b2ce6,#111b2c8c);border:1px solid var(--border-color);border-radius:24px;overflow:hidden}.profile-banner:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 18% 22%,rgba(56,189,248,.25),transparent 60%),radial-gradient(circle at 80% 70%,rgba(139,92,246,.22),transparent 65%);mix-blend-mode:overlay;opacity:.72;pointer-events:none}.profile-banner.variant-hobby:before{background:radial-gradient(circle at 22% 24%,rgba(56,189,248,.2),transparent 60%),radial-gradient(circle at 78% 72%,rgba(99,102,241,.18),transparent 65%)}.profile-banner.variant-pro:before{background:radial-gradient(circle at 24% 26%,rgba(99,102,241,.28),transparent 60%),radial-gradient(circle at 70% 68%,rgba(56,189,248,.22),transparent 65%)}.pb-main{position:relative;z-index:2;display:grid;gap:.85rem}.pb-name{margin:0;font-size:clamp(2.6rem,6.8vw,4.6rem);line-height:.9;font-weight:700;letter-spacing:1.4px;background:var(--brand-gradient);-webkit-background-clip:text;color:transparent}.profile-banner.variant-hobby .pb-name{font-size:clamp(2.4rem,6.4vw,4.2rem)}.pb-role{margin:0;font-size:clamp(.8rem,1vw,.92rem);letter-spacing:.6px;text-transform:uppercase;color:var(--accent-a);font-weight:600}.pb-desc{margin:0;max-width:80ch;font-size:.85rem;line-height:1.5;letter-spacing:.3px;color:var(--text-color-secondary)}.pb-focus{margin:.4rem 0 0;padding:0;list-style:none;display:flex;flex-wrap:wrap;gap:.5rem}.pb-focus li{font-size:.55rem;letter-spacing:.55px;text-transform:uppercase;padding:.38rem .6rem .34rem;background:var(--surface-d);border:1px solid var(--border-color-alt);border-radius:8px;color:var(--text-color-muted)}@media (max-width: 900px){.profile-banner{gap:.9rem 1rem}.pb-name{font-size:clamp(2.2rem,9vw,3.4rem)}}@media (max-width: 600px){.profile-banner{padding:1.1rem 1rem 1.4rem}.pb-focus{gap:.4rem}}body{margin:0;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;background:var(--surface-c);color:var(--text-color)}html.no-scroll,body.no-scroll{overflow:hidden;height:100%}.has-lightbox .gallery,.has-lightbox .filter-bar,.has-lightbox .back-bar{pointer-events:none}
