@font-face{font-family:Cabin;src:url(/fonts/Cabin-Regular.ttf)format("truetype");font-display:swap}@font-face{font-family:Noto Sans Lepcha Local;src:url(/fonts/NotoSansLepcha-Regular.ttf)format("truetype");font-display:swap}:root{--color-light:#458ea1;--color-accent:#019aab;--color-dark:#243d51;--color-deep:#162635;--color-text:#d9dbea;--color-white:#fff;--color-muted:#d9dbeab8;--color-border:#d9dbea2e;--shadow-soft:0 24px 80px #16263547;--radius-lg:32px;--radius-md:20px;--max-width:1180px}*{box-sizing:border-box}html{scroll-behavior:smooth;color:var(--color-text);background:var(--color-light)}html,body,#app{height:100%}body{background:var(--color-light);overscroll-behavior:none;min-width:320px;margin:0;font-family:Cabin,Noto Sans Lepcha Local,system-ui,sans-serif;line-height:1.6;overflow:hidden}#app{scroll-behavior:smooth;scroll-snap-type:y proximity;overscroll-behavior-y:none;background:var(--color-light);overflow:hidden auto}body::selection{background:var(--color-accent);color:var(--color-white)}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}button,input,textarea{font:inherit}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.site-header{z-index:50;width:min(calc(100% - 32px), var(--max-width));-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#162635b8;border:1px solid #ffffff2e;border-radius:999px;justify-content:space-between;align-items:center;gap:24px;padding:12px 14px 12px 18px;display:flex;position:fixed;top:18px;left:50%;transform:translate(-50%);box-shadow:0 18px 60px #0000002e}.brand,.footer-brand{letter-spacing:.04em;align-items:center;gap:10px;font-weight:800;display:inline-flex}.brand-mark{background:var(--color-white);border-radius:50%;width:28px;height:28px;-webkit-mask:url(/img/icons/woody-the-dev.svg) 50%/contain no-repeat;mask:url(/img/icons/woody-the-dev.svg) 50%/contain no-repeat}.main-nav{align-items:center;gap:8px;display:flex}.main-nav a{color:#ffffffd1;border-radius:999px;padding:10px 14px;transition:background .2s,color .2s,transform .2s}.language-switch{--switch-padding:5px;--switch-option-width:32px;grid-template-columns:repeat(2, var(--switch-option-width));min-height:38px;padding:var(--switch-padding);color:#ffffffc2;cursor:pointer;letter-spacing:.08em;background:#ffffff14;border:1px solid #ffffff29;border-radius:999px;align-items:center;font-size:.82rem;font-weight:800;line-height:1;transition:background .2s,border-color .2s,transform .2s,box-shadow .2s;display:inline-grid;position:relative;overflow:hidden;box-shadow:inset 0 1px #ffffff1a}.language-switch:hover{color:var(--color-white);background:#ffffff1f;border-color:#ffffff4d;transform:translateY(-1px);box-shadow:0 12px 28px #00000029,inset 0 1px #ffffff24}.language-indicator{top:var(--switch-padding);bottom:var(--switch-padding);left:var(--switch-padding);width:var(--switch-option-width);background:var(--color-white);border-radius:999px;transition:transform .24s cubic-bezier(.2,.8,.2,1);position:absolute;box-shadow:0 8px 18px #00000029}.language-switch.active-en .language-indicator{transform:translateX(var(--switch-option-width))}.language-option{z-index:1;color:#ffffffb8;place-items:center;min-height:28px;transition:color .2s;display:inline-grid;position:relative}.language-switch.active-de .language-de,.language-switch.active-en .language-en{color:var(--color-deep)}.language-switch:hover .language-option{color:var(--color-white)}.language-switch.active-de:hover .language-de,.language-switch.active-en:hover .language-en{color:var(--color-deep)}.main-nav a:hover{color:var(--color-white);background:#ffffff1f;transform:translateY(-1px)}.nav-icon{justify-content:center;align-items:center;width:46px;height:46px;display:inline-flex}.nav-icon img{filter:brightness(0)invert();width:24px;height:24px}.nav-toggle{cursor:pointer;background:0 0;border:0;width:44px;height:44px;display:none}.nav-toggle span:not(.sr-only){background:#fff;width:22px;height:2px;margin:5px auto;transition:transform .2s;display:block}main{background:var(--color-deep)}.section,.hero{scroll-snap-align:start;scroll-snap-stop:always;min-height:100vh;padding:120px 24px;position:relative;overflow:hidden}.section{z-index:1;align-items:center;display:grid}.hero{z-index:0;isolation:isolate;background-color:var(--color-light);background-image:linear-gradient(90deg,#162635d1 0%,#16263594 38%,#1626352e 72%,#16263557 100%),url(/img/Startsite/Startsite-desktop-1920.webp);background-position:50%;background-repeat:no-repeat;background-size:cover;place-items:center;display:grid;position:sticky;top:0}.hero:after{content:"";z-index:-1;background:radial-gradient(circle at 20% 35%,#019aab47,#0000 30%),linear-gradient(#16263533,#162635ad);position:absolute;inset:0}.hero-shell{width:min(100%, var(--max-width));z-index:2;position:relative}.hero-kicker,.eyebrow,.project-type{color:#ffffffc7;text-transform:uppercase;letter-spacing:.18em;font-size:clamp(.76rem,1vw,.9rem);font-weight:800}.hero h1{letter-spacing:-.08em;text-transform:uppercase;text-wrap:balance;text-shadow:0 18px 70px #0000006b;gap:0;max-width:980px;margin:14px 0 20px;font-size:clamp(4.2rem,13vw,10.5rem);line-height:.86;display:grid}.hero h1 span:nth-child(2){color:#ffffffe0;margin-left:clamp(1rem,11vw,10rem)}.hero h1 span:nth-child(3){letter-spacing:.02em;color:#ffffffeb;margin-top:.18em;font-size:.42em}.hero-copy{color:#ffffffdb;text-shadow:0 8px 26px #0000005c;max-width:620px;font-size:clamp(1.1rem,2vw,1.35rem)}.hero-actions,.contact-actions{flex-wrap:wrap;gap:14px;margin-top:28px;display:flex}.button{border:1px solid #ffffff42;border-radius:999px;justify-content:center;align-items:center;gap:10px;min-height:48px;padding:13px 20px;font-weight:800;transition:transform .2s,box-shadow .2s,background .2s;display:inline-flex}.button:hover{transform:translateY(-2px);box-shadow:0 16px 40px #0000002e}.button.primary{background:var(--color-accent);color:var(--color-white);border-color:var(--color-accent)}.button.secondary{color:var(--color-white);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#16263557}.hero-highlights{grid-template-columns:repeat(3,1fr);gap:14px;margin:46px 0 0;padding:0;list-style:none;display:grid}.hero-highlights li{border-radius:var(--radius-md);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#16263561;border:1px solid #ffffff2e;min-height:120px;padding:18px}.hero-orbit{opacity:.42;border-radius:50%;width:360px;height:360px;position:absolute;inset:auto 8% 10% auto}.hero-orbit span{border:1px solid #ffffff59;border-radius:48% 52% 45% 55%;animation:16s linear infinite orbit;position:absolute;inset:0}.hero-orbit span:nth-child(2){animation-duration:22s;animation-direction:reverse;inset:42px}.hero-orbit span:nth-child(3){animation-duration:12s;inset:88px}@keyframes orbit{to{transform:rotate(360deg)}}.light-section{background:var(--color-light)}.dark-section{background:linear-gradient(135deg, var(--color-dark), var(--color-deep))}.section-grid,.section-heading,.skills-grid,.project-showcase,.contact-card{width:min(100%, var(--max-width));margin:0 auto}.section-grid{grid-template-columns:.88fr 1.12fr;align-items:center;gap:clamp(32px,6vw,80px);display:grid}.about-grid{grid-template-columns:minmax(320px,484px) minmax(0,1fr)}.section-copy h2,.section-heading h2,.contact-card h2{letter-spacing:-.05em;text-wrap:balance;margin:8px 0 18px;font-size:clamp(2.4rem,5vw,5rem);line-height:.98}.section-copy p,.section-heading p,.contact-card p{color:#ffffffd6;max-width:760px;font-size:1.08rem}.portrait-card{border-radius:var(--radius-lg);box-shadow:var(--shadow-soft);background:var(--color-dark);border:1px solid #fff3;margin:0;position:relative;overflow:hidden}.portrait-card img{aspect-ratio:4/5;object-fit:cover;width:100%}.strength-grid{gap:14px;margin-top:32px;display:grid}.strength-card,.skill-card,.project-panel,.contact-card{border-radius:var(--radius-md);box-shadow:var(--shadow-soft);background:#ffffff14;border:1px solid #ffffff2e}.strength-card{padding:20px}.strength-card h3,.skill-card h3,.project-content h3{margin:0 0 8px;font-size:1.35rem}.strength-card p,.skill-card p{color:#ffffffc7;margin:0}.centered{text-align:center}.centered p{margin-left:auto;margin-right:auto}.skills-grid{grid-template-columns:repeat(3,1fr);gap:20px;margin-top:44px;display:grid}.skill-card{background:#458ea11f;padding:28px}.skill-icon{background:var(--color-accent);border-radius:18px;place-items:center;width:58px;height:58px;margin-bottom:22px;display:grid}.skill-icon img{filter:brightness(0)invert();width:28px;height:28px}.pill-list{flex-wrap:wrap;gap:10px;margin-top:22px;display:flex}.pill-list span{color:#ffffffe0;background:#ffffff1c;border-radius:999px;padding:8px 11px;font-size:.92rem}.pill-list.compact{margin:18px 0 24px}.projects-section .section-heading{margin-bottom:36px}.project-showcase{--project-panel-height:clamp(500px, 52vh, 620px);min-height:var(--project-panel-height);grid-template-columns:300px 1fr;align-items:stretch;gap:22px;display:grid}.project-tabs{min-height:var(--project-panel-height);grid-template-rows:repeat(3,1fr);gap:12px;display:grid}.project-tabs button{text-align:left;color:#fffc;cursor:pointer;background:#243d5138;border:1px solid #ffffff2e;border-radius:18px;padding:18px;transition:background .2s,transform .2s,border-color .2s}.project-tabs button span{color:#ffffff9e;text-transform:uppercase;letter-spacing:.12em;margin-bottom:5px;font-size:.82rem;display:block}.project-tabs button:hover,.project-tabs button.active{background:var(--color-dark);border-color:#ffffff57;transform:translate(4px)}.project-panel{height:var(--project-panel-height);min-height:var(--project-panel-height);background:#243d518a;grid-template-columns:1.05fr .95fr;display:grid;overflow:hidden}.project-image{background:radial-gradient(circle at 30% 20%, #019aab38, transparent 36%), var(--color-dark);height:100%;min-height:0;padding:clamp(18px,2vw,30px)}.project-image picture{height:100%;display:block}.project-image img{object-fit:contain;filter:drop-shadow(0 18px 34px #00000047);border-radius:18px;width:100%;height:100%;min-height:0}.project-content{flex-direction:column;justify-content:center;min-height:0;padding:clamp(26px,5vw,46px);display:flex;overflow:auto}.project-type{color:var(--color-muted)}.project-content h3{letter-spacing:-.05em;margin-top:8px;font-size:clamp(2rem,4vw,3.4rem);line-height:1}.project-content p{color:#ffffffd6;font-size:1.08rem}.contact-section{min-height:100vh}.contact-card{background:#458ea126;grid-template-columns:1fr auto;align-items:center;gap:30px;padding:clamp(28px,6vw,68px);display:grid}.contact-meta{color:var(--color-muted);flex-wrap:wrap;gap:12px 18px;margin-top:22px;font-size:.95rem;display:flex}.contact-meta a{text-underline-offset:4px;text-decoration:underline}.contact-meta a:hover{color:var(--color-white)}.site-footer{background:var(--color-deep);color:var(--color-muted);z-index:1;scroll-snap-align:end;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:18px;padding:34px min(6vw,64px);display:flex;position:relative}.footer-links{flex-wrap:wrap;gap:18px;display:flex}.footer-links a:hover,.footer-brand:hover{color:#fff}.site-footer p{margin:0}@media (width<=900px){.site-header{width:calc(100% - 20px);top:10px}.nav-toggle{display:block}.main-nav{background:#162635f0;border:1px solid #ffffff29;border-radius:28px;padding:12px;display:none;position:absolute;top:calc(100% + 10px);left:0;right:0}.main-nav.open{display:grid}.main-nav a{text-align:left;padding:14px 16px}.language-switch{justify-content:center;width:fit-content;margin:4px 0}.hero{background-image:linear-gradient(#16263547 0%,#16263594 45%,#162635e0 100%),url(/img/Startsite/Startsite-portrait-768.webp);background-position:50%;place-items:end start}.section-grid,.project-showcase,.project-panel,.contact-card,.skills-grid,.hero-highlights{grid-template-columns:1fr}.hero h1{font-size:clamp(4rem,17vw,7rem)}.hero h1 span:nth-child(2){margin-left:0}.hero h1 span:nth-child(3){color:#ffffffeb}.project-showcase{gap:12px}.project-tabs{grid-template-rows:none;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;min-height:auto}.project-tabs button{text-align:center;border-radius:14px;min-height:56px;padding:10px 8px;font-size:.9rem;line-height:1.1}.project-tabs button span{display:none}.project-tabs button:hover,.project-tabs button.active{transform:translateY(-2px)}.project-panel{height:auto;min-height:560px}.project-image{background:var(--color-dark);padding:0}.project-image img{object-fit:cover;filter:none;border-radius:0}.project-image,.project-image img{min-height:280px}}@media (width<=560px){.section,.hero{padding:104px 18px 72px}.hero-highlights li{min-height:auto}.button,.contact-actions{width:100%}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
