@font-face{font-family:"Source Sans 3";font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/source-sans-400.woff2) format("woff2")}@font-face{font-family:"Source Sans 3";font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/source-sans-600.woff2) format("woff2")}@font-face{font-family:"Source Sans 3";font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/source-sans-700.woff2) format("woff2")}@font-face{font-family:Source Code Pro;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/source-code-400.woff2) format("woff2")}@font-face{font-family:Source Code Pro;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/source-code-600.woff2) format("woff2")}:root{--bg-primary: #FCFAF7;--bg-secondary: #F2EFE9;--bg-glass: rgba(255, 255, 255, .45);--bg-glass-border: rgba(255, 255, 255, .4);--accent-primary: #E68A1D;--accent-secondary: #CC7A1A;--accent-tertiary: #F5B05F;--accent-light: rgba(230, 138, 29, .08);--accent-gradient: linear-gradient(135deg, #E68A1D, #F5B05F);--text-primary: #1F1D1B;--text-secondary: rgba(31, 29, 27, .65);--text-tertiary: rgba(31, 29, 27, .65);--border-light: rgba(0, 0, 0, .03);--shadow-sm: 0 1px 2px rgba(0, 0, 0, .02), 0 2px 4px rgba(0, 0, 0, .02), 0 4px 8px rgba(0, 0, 0, .02);--shadow-md: 0 2px 4px rgba(0, 0, 0, .02), 0 6px 12px rgba(0, 0, 0, .03), 0 12px 24px rgba(0, 0, 0, .03);--shadow-lg: 0 4px 8px rgba(0, 0, 0, .02), 0 12px 24px rgba(0, 0, 0, .04), 0 32px 64px rgba(0, 0, 0, .05);--shadow-pin: 0 4px 8px rgba(0, 0, 0, .15);--card-shadow: 0 2px 4px rgba(180, 160, 140, .08), 0 4px 8px rgba(180, 160, 140, .06), 0 8px 16px rgba(180, 160, 140, .04);--card-hover-shadow: 0 20px 40px rgba(180, 160, 140, .2), 0 0 0 1px rgba(255, 255, 255, .5), 0 0 25px rgba(230, 180, 120, .1);--font-sans: -apple-system, BlinkMacSystemFont, "SF Pro Text", "Source Sans 3", sans-serif;--font-mono: "SF Mono", "Source Code Pro", monospace;--radius: 20px;--ease-out-expo: cubic-bezier(.16, 1, .3, 1);--transition: .4s var(--ease-out-expo);--transition-fast: .3s var(--ease-out-expo);--glass-blur: blur(12px);--glass-blur-strong: blur(16px);--glass-effect: var(--glass-blur) saturate(140%);--glass-effect-strong: var(--glass-blur-strong) saturate(150%) }@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.box{animation:none!important;opacity:1!important}.bg-orbs,.particles,.cursor-glow{display:none!important}}*:focus-visible{outline:3px solid var(--accent-primary);outline-offset:2px}.box:focus-visible{box-shadow:var(--shadow-lg),0 0 0 4px var(--accent-primary)}.skip-to-content{position:fixed;top:-100%;left:50%;transform:translate(-50%);padding:12px 24px;background:var(--accent-primary);color:#fff;font-weight:600;text-decoration:none;border-radius:0 0 var(--radius) var(--radius);z-index:10000;transition:top .3s ease}.skip-to-content:focus{top:0;outline:3px solid var(--text-primary);outline-offset:2px}.box-project:focus-visible,.box-insight:focus-visible,.dark-mode-toggle:focus-visible,button:focus-visible,a:focus-visible{outline:3px solid var(--accent-primary);outline-offset:4px;box-shadow:0 0 0 6px #e68a1d33}.box-project:focus:not(:focus-visible),.box-insight:focus:not(:focus-visible),button:focus:not(:focus-visible){outline:none}.box-project.blur-tier-0:focus-visible,.box-project.blur-tier-1:focus-visible,.box-project.blur-tier-2:focus-visible{outline:none;box-shadow:none}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-sans);color:var(--text-primary);line-height:1.6;background-color:var(--bg-primary);@media(pointer:fine){&:not(.prefers-reduced-motion){cursor:none}}background-image:linear-gradient(rgba(200,180,160,.15) 1px,transparent 1px),linear-gradient(90deg,rgba(200,180,160,.15) 1px,transparent 1px),linear-gradient(rgba(200,180,160,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(200,180,160,.08) 1px,transparent 1px);background-size:50px 50px,50px 50px,10px 10px,10px 10px;background-position:-1px -1px,-1px -1px,-1px -1px,-1px -1px}::selection{background:var(--accent-primary);color:#fff}.box-header{padding:16px 20px 10px}.box-tag{font-family:var(--font-mono);font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.15em;color:var(--accent-primary);opacity:.9}.dashboard{position:relative;width:100vw;height:100vh;overflow:hidden}.bento-grid{position:absolute;inset:0;width:100%;height:100%}.mobile-project-wheel{position:absolute;inset:0;pointer-events:none;z-index:20}.mobile-project-wheel>*{pointer-events:auto}.branding{position:fixed;top:20px;left:24px;font-weight:700;font-size:1.1rem;color:var(--text-primary);letter-spacing:-.02em;display:flex;align-items:center;gap:4px;z-index:1000;opacity:0;animation:fadeSlideIn .8s ease forwards;animation-delay:.2s}.branding-dot{width:6px;height:6px;background:var(--accent-primary);border-radius:50%;animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{transform:scale(1);opacity:.7}50%{transform:scale(1.3);opacity:1}}.dark-mode-toggle{position:fixed;top:20px;right:24px;width:44px;height:44px;border-radius:50%;border:none;background:var(--bg-glass);backdrop-filter:var(--glass-effect);-webkit-backdrop-filter:var(--glass-effect);box-shadow:var(--shadow-sm);z-index:1000;display:flex;align-items:center;justify-content:center;cursor:none;@media(pointer:fine){&:not(.prefers-reduced-motion){cursor:none}}transition:var(--transition-fast);opacity:0;animation:fadeSlideIn .8s ease forwards;animation-delay:.3s}.dark-mode-toggle:hover{transform:scale(1.1);box-shadow:var(--shadow-md)}.dark-mode-toggle svg{width:20px;height:20px;stroke:var(--accent-primary);transition:all .4s var(--ease-out-expo)}.dark-mode-toggle .icon-sun{position:absolute;opacity:1;transform:rotate(0) scale(1)}.dark-mode-toggle .icon-moon{position:absolute;opacity:0;transform:rotate(-90deg) scale(.5)}.dark-mode .dark-mode-toggle .icon-sun{opacity:0;transform:rotate(90deg) scale(.5)}.dark-mode .dark-mode-toggle .icon-moon{opacity:1;transform:rotate(0) scale(1)}.bg-orbs{position:fixed;inset:0;pointer-events:none;z-index:0;overflow:hidden}.bg-orb{position:absolute;border-radius:50%;filter:blur(60px);opacity:.4;animation:orbFloat 20s ease-in-out infinite;will-change:transform;contain:layout style}.bg-orb-1{width:600px;height:600px;background:radial-gradient(circle,rgba(231,156,60,.3) 0%,transparent 70%);top:-10%;left:-10%;animation-delay:0s;animation-duration:25s}.bg-orb-2{width:500px;height:500px;background:radial-gradient(circle,rgba(240,176,92,.25) 0%,transparent 70%);bottom:-15%;right:-10%;animation-delay:-5s;animation-duration:30s}.bg-orb-3{width:400px;height:400px;background:radial-gradient(circle,rgba(212,138,42,.2) 0%,transparent 70%);top:40%;left:50%;animation-delay:-10s;animation-duration:22s}@keyframes orbFloat{0%,to{transform:translate(0) scale(1)}25%{transform:translate(30px,-40px) scale(1.05)}50%{transform:translate(-20px,20px) scale(.95)}75%{transform:translate(40px,30px) scale(1.02)}}.particles{position:fixed;inset:0;pointer-events:none;z-index:1;overflow:hidden}.particle{position:absolute;width:4px;height:4px;background:var(--accent-primary);border-radius:50%;opacity:0;animation:particleFloat 15s linear infinite}@keyframes particleFloat{0%{opacity:0;transform:translateY(100vh) scale(0)}10%{opacity:.6}90%{opacity:.6}to{opacity:0;transform:translateY(-100vh) scale(1)}}.cursor-glow{position:fixed;width:500px;height:500px;border-radius:50%;background:radial-gradient(circle,rgba(231,156,60,.5) 0%,rgba(231,156,60,.35) 20%,rgba(231,156,60,.15) 40%,transparent 60%);pointer-events:none;z-index:2;transform:translate(-50%,-50%);transition:opacity .5s ease;opacity:0;mix-blend-mode:overlay;will-change:transform}.cursor-glow.active{opacity:1}.custom-cursor{position:fixed;pointer-events:none;z-index:99999;transform:translate3d(-50%,-50%,0) rotate(45deg);transition:width .4s cubic-bezier(.16,1,.3,1),height .4s cubic-bezier(.16,1,.3,1);width:20px;height:20px;mix-blend-mode:difference;will-change:transform}.custom-cursor:before{content:"";position:absolute;width:8px;height:1px;background:#fff;top:50%;left:0;transform:translateY(-50%);box-shadow:12px 0 #fff;transition:width .4s cubic-bezier(.16,1,.3,1),height .4s cubic-bezier(.16,1,.3,1),box-shadow .4s cubic-bezier(.16,1,.3,1),background-color .4s ease}.custom-cursor:after{content:"";position:absolute;width:1px;height:8px;background:#fff;left:50%;top:0;transform:translate(-50%);box-shadow:0 12px #fff;transition:width .4s cubic-bezier(.16,1,.3,1),height .4s cubic-bezier(.16,1,.3,1),box-shadow .4s cubic-bezier(.16,1,.3,1),background-color .4s ease}.custom-cursor.hover{transform:translate(-50%,-50%) rotate(270deg)}.custom-cursor.hover:before{height:1px;background:#fff;box-shadow:12px 0 #fff}.custom-cursor.hover:after{width:1px;background:#fff;box-shadow:0 12px #fff}html,body,a,img,button,input,textarea,select,.box,.project-card,.service-item,.about-tags span,.insight-cta,.project-fullscreen,.project-view-pin,[data-cursor-hover]{cursor:none!important;@media(pointer:fine){&:not(.prefers-reduced-motion){cursor:none!important}}}@keyframes cardEntrance{0%{opacity:0;transform:translateY(40px) rotate(var(--initial-rotation, 0deg)) scale(.95);filter:blur(10px)}to{opacity:1;transform:translateY(0) rotate(var(--initial-rotation, 0deg)) scale(1);filter:blur(0px)}}@keyframes float{0%,to{transform:translateY(0) rotate(var(--initial-rotation, 0deg))}50%{transform:translateY(var(--float-distance, -8px)) rotate(calc(var(--initial-rotation, 0deg) + var(--float-rotate, .5deg)))}}@keyframes fadeSlideIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:.7;transform:translateY(0)}}@keyframes fadeIn{to{opacity:1}}@keyframes blink{0%,50%{opacity:1}51%,to{opacity:0}}.animations-paused .bg-orb,.animations-paused .particle,body.project-view-active .bg-orb,body.project-view-active .particle,body.project-view-active .cursor-dynamic,body.project-view-active .typewriter-cursor{animation-play-state:paused!important}.skeleton{position:relative;overflow:hidden;background:linear-gradient(90deg,#c8beb41a,#c8beb433,#c8beb41a);border-radius:var(--radius)}.skeleton:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.4) 50%,transparent 100%);transform:translate(-100%);animation:shimmer 1.5s infinite ease-in-out}@keyframes shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}.skeleton-image{width:100%;min-height:150px;background:linear-gradient(135deg,#c8beb426,#c8beb440,#c8beb426);border-radius:var(--radius) var(--radius) 0 0}.skeleton-text{height:1em;background:#c8beb433;border-radius:4px;margin-bottom:8px}.skeleton-text--title{width:70%;height:1.2em}.skeleton-text--subtitle{width:50%;height:.8em}.skeleton-text--short{width:30%}.skeleton-avatar{width:95px;height:120px;border-radius:50px 15px 50px 50px;background:#c8beb433}.skeleton-card{display:flex;flex-direction:column;gap:12px;padding:16px}.skeleton-icon{width:42px;height:42px;border-radius:12px;background:#c8beb433}.lazy-image-container{position:relative;overflow:hidden;width:100%;flex:1}.lazy-image-container .skeleton-image{position:absolute;inset:0;z-index:2;transition:opacity .5s ease;pointer-events:none}.lazy-image{width:100%;height:auto;object-fit:cover;display:block}.lazy-image-container.loaded .skeleton-image,.lazy-image.loaded+.skeleton-image,.lazy-image.loaded~.skeleton-image{opacity:0}.skeleton-overlay{position:absolute;inset:0;display:flex;flex-direction:column;gap:8px;padding:16px 18px;z-index:2;transition:opacity .4s ease}.box-project.loaded .project-category,.box-project.loaded .project-title{opacity:1;transition:opacity .4s ease}.box-project.loaded .skeleton-overlay{opacity:0;pointer-events:none}@keyframes contentReveal{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.stagger-load>*{opacity:0;transform:translateY(20px)}.stagger-load.loaded>*{animation:staggerReveal .6s cubic-bezier(.16,1,.3,1) forwards}.stagger-load.loaded>*:nth-child(1){animation-delay:0ms}.stagger-load.loaded>*:nth-child(2){animation-delay:50ms}.stagger-load.loaded>*:nth-child(3){animation-delay:.1s}.stagger-load.loaded>*:nth-child(4){animation-delay:.15s}.stagger-load.loaded>*:nth-child(5){animation-delay:.2s}.stagger-load.loaded>*:nth-child(6){animation-delay:.25s}@keyframes staggerReveal{to{opacity:1;transform:translateY(0)}}.project-view-pin.loading{min-height:150px}.project-view-pin.loading .project-view-pin-inner{background:var(--bg-glass);min-height:150px}.project-view-pin.loading img{opacity:0}.project-view-pin.loading .project-view-pin-inner:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,#c8beb426,#c8beb440,#c8beb426);border-radius:var(--radius);z-index:1}.project-view-pin.loading .project-view-pin-inner:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.4) 50%,transparent 100%);transform:translate(-100%);animation:shimmer 1.5s infinite ease-in-out;border-radius:var(--radius);z-index:2}.project-view-pin.loaded img{animation:imageReveal .6s cubic-bezier(.16,1,.3,1) forwards}@keyframes imageReveal{0%{opacity:0;transform:scale(.98)}to{opacity:1;transform:scale(1)}}.dark-mode .skeleton{background:linear-gradient(90deg,#5050504d,#64646466,#5050504d)}.dark-mode .skeleton:after{background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.1) 50%,transparent 100%)}.dark-mode .skeleton-image,.dark-mode .skeleton-text,.dark-mode .skeleton-avatar,.dark-mode .skeleton-icon{background:#6464644d}.skeleton-pulse{animation:skeletonPulse 1.5s ease-in-out infinite}@keyframes skeletonPulse{0%,to{opacity:.4}50%{opacity:.8}}.blur-load{filter:blur(8px);transform:scale(1.02);transition:filter .6s cubic-bezier(.16,1,.3,1),transform .6s cubic-bezier(.16,1,.3,1)}.blur-load.loaded{filter:blur(0);transform:scale(1)}.blur-load[complete=true],img.blur-load:not([loading]){filter:blur(0);transform:scale(1)}.animations-paused .skeleton:after,.animations-paused .skeleton-pulse{animation-play-state:paused!important}.box{position:absolute;background:var(--bg-glass);backdrop-filter:var(--glass-effect-strong);-webkit-backdrop-filter:var(--glass-effect-strong);border-radius:var(--radius);border:1px solid var(--bg-glass-border);box-shadow:var(--card-shadow);opacity:0;visibility:hidden;transform-style:preserve-3d;transition:transform .4s var(--ease-out-expo),opacity .4s ease;will-change:transform,opacity;contain:layout style}.box.animate-entrance,.project-label.animate-entrance{visibility:visible;animation:cardEntrance 1s cubic-bezier(.16,1,.3,1) forwards}.box.entered,.project-label.entered{opacity:1;visibility:visible;transform:rotate(var(--initial-rotation, 0deg));animation:none}.box-project.box-project-featured{background:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;border:none!important;box-shadow:none!important}.box:after{content:"";position:absolute;inset:0;border-radius:inherit;box-shadow:var(--card-hover-shadow);opacity:0;transition:opacity .4s cubic-bezier(.25,.1,.25,1);pointer-events:none;z-index:-1}.box.entered:hover{z-index:700}.box.entered:hover:after{opacity:1}.dark-mode .box.entered:hover:after{opacity:1}.dark-mode .box-project:hover:after{opacity:1}.box.box-project.entered:hover{z-index:9999}.box:before{content:"";position:absolute;top:-2px;width:32px;height:2px;border-radius:5px;left:var(--laser-x, 50%);top:var(--laser-y, 0%);transform:translate(-50%,-50%) rotate(var(--laser-angle, 0deg)) translateZ(110px);transform-origin:center center;z-index:100;width:18px;height:3px;transition:width 1s cubic-bezier(.25,.46,.45,.94),height 5s cubic-bezier(.25,.46,.45,.94),box-shadow 5s ease,border-radius 1s ease;animation:laserBreathe 2.5s ease-in-out infinite}.box-project[data-project="2"]:before,.box-project[data-project="3"]:before,.box-project[data-project="4"]:before,.box-project[data-project="5"]:before{width:6px;height:6px;border-radius:50%;left:var(--laser-x, 50%);top:0;transform:translate(-50%,-50%) translateZ(110px);box-shadow:0 0 8px 2px rgba(from var(--laser-color) r g b / .4);background:var(--laser-color);animation:none;transition:none}.box-project[data-project="2"] .box-inner:after,.box-project[data-project="3"] .box-inner:after,.box-project[data-project="4"] .box-inner:after,.box-project[data-project="5"] .box-inner:after,.box-hero .box-inner:after{content:"";position:absolute;left:var(--spotlight-x, 50%);top:0;width:160px;height:150%;pointer-events:none;background:radial-gradient(ellipse at center top,rgba(255,255,255,.3) 0%,rgba(255,255,255,.08) 40%,transparent 85%);transform:translate(-50%) translateZ(160px);opacity:0;transition:opacity .5s ease,left .15s ease-out;z-index:1000;mix-blend-mode:screen}.box-project[data-project="2"] .box-inner:after{background:radial-gradient(ellipse at center top,rgba(42,111,151,.4) 0%,rgba(42,111,151,.08) 50%,transparent 90%)}.box-project[data-project="3"] .box-inner:after,.box-project[data-project="4"] .box-inner:after{background:radial-gradient(ellipse at center top,rgba(255,204,128,.5) 0%,rgba(255,204,128,.1) 50%,transparent 90%)}.box-project[data-project="5"] .box-inner:after{background:radial-gradient(ellipse at center top,rgba(204,51,95,.4) 0%,rgba(204,51,95,.08) 50%,transparent 90%)}.box-hero .box-inner:after{width:160px;background:radial-gradient(ellipse at center top,rgba(204,51,95,.4) 0%,rgba(204,51,95,.08) 50%,transparent 90%);z-index:-1;transform:translate(-50%) translateZ(-20px)}.box-project[data-project="2"]:hover .box-inner:after,.box-project[data-project="3"]:hover .box-inner:after,.box-project[data-project="4"]:hover .box-inner:after,.box-project[data-project="5"]:hover .box-inner:after,.box-hero:hover .box-inner:after{opacity:1}.box-project[data-project="1"]:before{width:6px;height:6px;border-radius:50%;left:var(--laser-x, 50%);top:0;transform:translate(-50%,-50%) translateZ(110px);box-shadow:-115px 0 0 0 var(--laser-color),-115px 0 8px 2px rgba(from var(--laser-color) r g b / .4),115px 0 0 0 var(--laser-color),115px 0 8px 2px rgba(from var(--laser-color) r g b / .4),0 0 8px 2px rgba(from var(--laser-color) r g b / .4);background:var(--laser-color);animation:none;transition:none}.box-hero:before{width:6px;height:6px;border-radius:50%;left:var(--laser-x, 50%);top:0;transform:translate(-50%,-50%) translateZ(110px);box-shadow:0 0 8px 2px rgba(from var(--laser-color) r g b / .4);background:var(--laser-color);animation:none;transition:none}.box-project[data-project="2"]:hover:before,.box-project[data-project="3"]:hover:before,.box-project[data-project="4"]:hover:before,.box-project[data-project="5"]:hover:before{animation:singleLaserGlow 2s ease-in-out infinite}.box-project[data-project="1"]:hover:before{animation:tripleLaserGlow 2s ease-in-out infinite}.box-hero:hover:before,.box-hero.force-hover:before{animation:singleLaserGlow 2s ease-in-out infinite}@keyframes singleLaserGlow{0%,to{box-shadow:0 0 8px 2px rgba(from var(--laser-color) r g b / .3)}50%{box-shadow:0 0 15px 4px rgba(from var(--laser-color) r g b / .5)}}@keyframes tripleLaserGlow{0%,to{box-shadow:-115px 0 0 0 var(--laser-color),-115px 0 8px 2px rgba(from var(--laser-color) r g b / .3),115px 0 0 0 var(--laser-color),115px 0 8px 2px rgba(from var(--laser-color) r g b / .3),0 0 8px 2px rgba(from var(--laser-color) r g b / .3)}50%{box-shadow:-115px 0 0 0 var(--laser-color),-115px 0 15px 4px rgba(from var(--laser-color) r g b / .5),115px 0 0 0 var(--laser-color),115px 0 15px 4px rgba(from var(--laser-color) r g b / .5),0 0 15px 4px rgba(from var(--laser-color) r g b / .5)}}.box-project:after,.box-hero:after,.box-services:after,.box-about:after,.box-contact:after,.box-insight:after{content:"";position:absolute;inset:0;border-radius:inherit;box-shadow:var(--card-hover-shadow);opacity:0;transition:opacity .4s cubic-bezier(.25,.1,.25,1);pointer-events:none;z-index:-1}.box-services:hover:after,.box-about:hover:after,.box-contact:hover:after,.box-insight:hover:after,.box-project:hover:after,.box-hero:hover:after,.box-services.force-hover:after,.box-about.force-hover:after,.box-contact.force-hover:after,.box-insight.force-hover:after,.box-project.force-hover:after,.box-hero.force-hover:after{opacity:1}@keyframes spotlightBlink{0%{opacity:1;transform:translate(-50%,-50%) translateZ(-10px) scale(1.3)}23.6%{opacity:.1;transform:translate(-50%,-50%) translateZ(-10px) scale(.9)}38.2%{opacity:.6;transform:translate(-50%,-50%) translateZ(-10px) scale(.95)}61.8%{opacity:.8;transform:translate(-50%,-50%) translateZ(-10px) scale(.98)}to{opacity:1;transform:translate(-50%,-50%) translateZ(-10px) scale(1)}}@keyframes spotlightFade{0%{opacity:.5;transform:translate(-50%,-50%) translateZ(-10px) scale(1.3)}30%{opacity:0;transform:translate(-50%,-50%) translateZ(-10px) scale(1)}to{opacity:0;transform:translate(-50%,-50%) translateZ(-10px) scale(1)}}.box .box-inner{display:flex;flex-direction:column;width:100%;height:100%}.box .lazy-image-container{width:100%;flex:1 1 auto;min-width:0}.box-hero{--initial-rotation: .1deg;--entrance-delay: .3s;--float-duration: 7s;--float-distance: -10px;--float-rotate: 1deg;--laser-color: #cc335f;z-index:25}.box-hero .box-content{padding:24px}.box-hero:hover,.box-hero.force-hover{mix-blend-mode:normal!important;z-index:100}.box-hero:after{z-index:-1!important}.box-hero .box-tag{color:#cc335f;opacity:1}@media(min-width:768px){.box-hero{width:25vw;min-width:330px;top:42%;left:9%;right:auto}}.box-hero:before{left:var(--laser-x, 50%);top:var(--laser-y, 0%);background:linear-gradient(135deg,#e65c8a,#cc335f)}.hero-title{font-size:2.1rem;font-weight:700;line-height:1.05;letter-spacing:-.02em;margin-bottom:16px;min-height:2.15em}.hero-title .accent{color:var(--text-primary);display:inline}.cursor-dynamic{display:inline-block;width:3px;height:1em;background:#cc335f;margin-left:2px;animation:blink 1s step-end infinite;vertical-align:text-bottom}.typewriter-cursor{display:inline;width:3px;height:1.1em;background:#cc335f;margin-left:2px;animation:blink 1s step-end infinite;vertical-align:baseline;border-left:3px solid #cc335f}.hero-subtitle{font-size:.95rem;color:var(--text-secondary);opacity:0;animation:fadeIn .8s ease forwards;animation-delay:2s}.box-services{--initial-rotation: -.1deg;--entrance-delay: .5s;--float-duration: 8s;--float-distance: -6px;--float-rotate: -.5deg;--laser-color: #ffcc80;z-index:5}@media(min-width:768px){.box-services{width:16vw;min-width:220px;top:4%;right:35%;left:auto}}.box-services:before{left:var(--laser-x, 0px);top:var(--laser-y, 22%);--laser-angle: -90deg;background:linear-gradient(135deg,#ffcc80,#ffb74d)}.box-services.service-active{z-index:250;box-shadow:var(--card-hover-shadow);pointer-events:auto}.services-list{padding:0 16px 16px;display:flex;flex-direction:column;gap:8px}.service-item{display:flex;align-items:center;gap:10px;font-size:.85rem;color:var(--text-primary);padding:6px 8px;border-radius:8px;transition:all .3s ease;cursor:default}.service-item:hover{background:var(--accent-light)}.service-item svg{width:18px;height:18px;stroke:var(--accent-primary);transition:transform .3s ease}.box-about{--initial-rotation: .1deg;--entrance-delay: .4s;--float-duration: 6.5s;--float-distance: -7px;--float-rotate: .8deg;--laser-color: #ff9800;z-index:8}@media(min-width:768px){.box-about{width:18vw;min-width:240px;top:8%;right:20.4%;left:auto}}.box-about:before{left:var(--laser-x, calc(100% - 30px) );top:var(--laser-y, 0%);background:linear-gradient(135deg,#ffcc80,#ffb74d)}.about-content{padding:0 24px 20px;text-align:right}.about-avatar{width:95px;height:120px;margin:-99px 0 10px auto!important;border-radius:50px 15px 50px 50px;overflow:hidden;border:3px solid white;box-shadow:0 4px 15px #00000026;background:#fff;transition:transform .4s ease,box-shadow .4s ease}.about-avatar:hover{box-shadow:0 8px 25px #e79c3c40}.about-avatar img{width:100%;height:100%;object-fit:cover;transform:scale(1.25) translateY(11px);transform-origin:center;object-position:center;transition:transform .4s cubic-bezier(.16,1,.3,1)}.about-content>strong{display:block;font-size:1.1rem;color:var(--accent-primary);margin-bottom:8px;font-family:var(--font-sans)}.about-content p{font-size:.95rem;color:var(--text-secondary);margin-bottom:12px;line-height:1.6;font-weight:400}.about-tags{display:flex;flex-wrap:wrap;gap:6px;justify-content:flex-end}.about-tags span{font-family:var(--font-mono);font-size:.7rem;padding:4px 8px;background:var(--bg-secondary);border-radius:6px;transition:all .3s ease;cursor:default}.about-tags span:hover{background:var(--accent-primary);color:#fff}.about-achievement{display:inline-flex;align-items:center;gap:6px;margin-top:12px;padding:6px 12px;background:linear-gradient(135deg,#ffd70026,#ffb4001a);border:1px solid rgba(255,215,0,.3);border-radius:8px;font-size:.75rem;font-weight:600;color:#b8860b;text-decoration:none;transition:all .3s ease}.about-achievement:hover{background:linear-gradient(135deg,#ffd70040,#ffb40033);border-color:#ffd70080;transform:translateY(-1px)}.about-achievement svg{width:16px;height:16px;stroke:#daa520}.box-project-featured{--initial-rotation: 1.5deg;--entrance-delay: .2s;--float-duration: 9s;--float-distance: -12px;--float-rotate: .3deg;position:absolute;z-index:25;padding:0;margin:0;transform:none}@media(min-width:768px){.box-project-featured{top:-3%;left:-3%;width:100%;max-width:991px;height:auto}}.box-project-featured{--laser-color: #cc335f }.box-project-featured:before{left:50%;background:linear-gradient(135deg,#e65c8a,#cc335f)}.box-project-featured:after{display:none!important}.box-project-featured .project-overlay{background:transparent!important;border:none!important;box-shadow:none!important;display:none!important}.box-project.box-project-featured{background:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;border:none!important;box-shadow:none!important;overflow:visible;clip-path:polygon(0 0,100% 0,100% 55%,55% 100%,0 100%)}.box-project-featured .box-inner{background:transparent;overflow:hidden;border-radius:var(--radius) var(--radius) 0 var(--radius)}.box-project-featured .lazy-image-container{background:transparent!important;padding:0!important}.box-project-featured img{border-radius:var(--radius) var(--radius) 0 var(--radius);width:100%;height:auto;object-fit:cover;box-shadow:none!important}.box-project.box-project-featured,.box-project.box-project-featured:hover{z-index:0!important;background:none!important;box-shadow:none!important;backdrop-filter:none!important}.box-project-featured:hover img{box-shadow:none!important}.box-project-featured:before,.box-project-featured:after{display:none}.box-project[data-project="2"]{--initial-rotation: 0deg;--entrance-delay: .6s;--float-duration: 7.5s;--float-distance: -9px;--float-rotate: -.6deg;--laser-color: #2a6f97;z-index:26}@media(min-width:768px){.box-project[data-project="2"]{width:14vw;min-width:195px;bottom:12%;left:5%}}.box-project[data-project="2"]:before{background:linear-gradient(135deg,#3a7ca5,#2a6f97)}.box-project[data-project="2"] .project-category{color:#2a6f97}.box-project[data-project="3"]{--initial-rotation: -1deg;--entrance-delay: .8s;--float-duration: 8.5s;--float-distance: -6px;--float-rotate: -.4deg;--laser-color: #ffcc80;z-index:20}@media(min-width:768px){.box-project[data-project="3"]{width:14vw;min-width:195px;bottom:9%;left:15%;right:auto}}.box-project[data-project="3"]:before{background:linear-gradient(135deg,#ffcc80,#ffb74d)}.box-project[data-project="3"] .project-category{color:#ffb74d}.box-project[data-project="5"]{--initial-rotation: -1.5deg;--entrance-delay: .7s;--float-duration: 6s;--float-distance: -8px;--float-rotate: .7deg;--laser-color: #cc335f;z-index:15}@media(min-width:768px){.box-project[data-project="5"]{width:14vw;min-width:195px;bottom:10%;left:36%;right:auto}}.box-project[data-project="5"]:before{background:linear-gradient(135deg,#e65c8a,#cc335f)}.box-project[data-project="5"] .project-category{color:#cc335f}.box-project[data-project="4"]{--initial-rotation: 1deg;--entrance-delay: .9s;--float-duration: 7s;--float-distance: -5px;--float-rotate: .3deg;--laser-color: #ffcc80;z-index:17}@media(min-width:768px){.box-project[data-project="4"]{width:14vw;min-width:195px;bottom:13%;left:25%;right:auto}}.box-project[data-project="4"]:before{background:linear-gradient(135deg,#ffcc80,#ffb74d)}.box-project[data-project="4"] .project-category{color:#ffb74d}.box-contact{--initial-rotation: -.5deg;--entrance-delay: .55s;--float-duration: 7s;--float-distance: -7px;--float-rotate: .4deg;--laser-color: #ffcc80;z-index:7}@media(min-width:768px){.box-contact{width:18vw;min-width:220px;bottom:7%;right:16%}}.box-contact:before{left:var(--laser-x, 50%);top:var(--laser-y, 100%);background:linear-gradient(135deg,#ffcc80,#ffb74d)}.contact-header{display:flex;justify-content:space-between;align-items:center}.availability-badge{display:inline-flex;align-items:center;gap:6px;font-size:.65rem;font-weight:600;color:#22c55e;letter-spacing:.03em;white-space:nowrap}.contact-availability{display:flex;align-items:center;gap:6px;font-size:.7rem;font-weight:500;color:#22c55e;text-transform:uppercase;letter-spacing:.05em}.availability-dot{width:7px;height:7px;background:#22c55e;border-radius:50%;animation:availabilityPulse 2s ease-in-out infinite;box-shadow:0 0 8px #22c55e80;flex-shrink:0}@keyframes availabilityPulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.3);opacity:.7}}.contact-content{padding:0 16px 16px;display:flex;flex-direction:column;gap:10px}.contact-item{display:flex;align-items:center;gap:10px;font-size:.85rem;color:var(--text-secondary);text-decoration:none;padding:10px 12px;background:var(--bg-secondary);border-radius:10px;transition:var(--transition-fast);border:1px solid transparent}.contact-item:hover{background:var(--accent-light);color:var(--accent-primary);border-color:#e68a1d33}.contact-item:hover svg{transform:scale(1.15)}.contact-item svg{width:18px;height:18px;stroke:var(--accent-primary);transition:transform .3s var(--ease-out-expo);flex-shrink:0}.contact-item--email:hover{box-shadow:0 4px 12px #e68a1d26}.contact-cta{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:6px;padding:12px 20px;background:var(--accent-gradient);color:#fff;font-size:.85rem;font-weight:600;text-decoration:none;border-radius:10px;transition:var(--transition-fast);box-shadow:0 4px 12px #e68a1d40}.contact-cta:hover{transform:translateY(-2px);box-shadow:0 8px 20px #e68a1d59}.contact-cta .cta-arrow{width:18px;height:18px;stroke:#fff;transition:transform .3s var(--ease-out-expo)}.contact-cta:hover .cta-arrow{transform:translate(4px)}.box-project{cursor:pointer;padding:0;overflow:visible!important;background:var(--bg-glass);backdrop-filter:var(--glass-effect-strong);-webkit-backdrop-filter:var(--glass-effect-strong);border:1px solid var(--bg-glass-border);box-shadow:var(--card-shadow);transition:box-shadow .3s ease,width .5s cubic-bezier(.4,0,.2,1),height .5s cubic-bezier(.4,0,.2,1)}@media(min-width:769px){.box-project{will-change:width,height}}.box-inner{position:relative;width:100%;height:100%;overflow:visible;transform-style:preserve-3d;border-radius:var(--radius);display:flex;flex-direction:row;flex-wrap:wrap}.box-project .lazy-image-container{width:100%;flex:0 0 100%;position:relative;margin-bottom:0;z-index:10;padding:5px;border-radius:15px;overflow:hidden;transition:padding .4s var(--ease-out-expo),transform .4s var(--ease-out-expo);transform:translateZ(60px)}.box-project:hover .lazy-image-container{transform:translateZ(90px)}.box-project img{width:100%;flex:0 0 100%;height:auto;object-fit:cover;max-width:100%;display:block;transition:transform .6s cubic-bezier(.4,0,.2,1),filter 1.2s ease-out;border-radius:11px;filter:blur(8px) grayscale(80%) brightness(.9);will-change:filter}.box-project:hover img{filter:blur(0) grayscale(0) brightness(1);transform:scale(1.02)}.project-overlay{position:relative;background:#ffffffe6!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;padding:12px 10px 10px;display:flex!important;flex-direction:column!important;justify-content:flex-start;gap:0;width:calc(100% - 10px);margin:2px 5px 5px;z-index:5;pointer-events:auto;border-radius:12px;transform:translateZ(30px)}.box-project[data-project="2"] .project-overlay,.box-project[data-project="3"] .project-overlay,.box-project[data-project="4"] .project-overlay,.box-project[data-project="5"] .project-overlay{display:none!important}.project-category{order:2;font-family:var(--font-mono);font-size:.65rem;font-weight:600;text-transform:uppercase;letter-spacing:.1em;color:var(--accent-primary);margin-top:4px;margin-bottom:0;margin-left:5px;text-align:left}.project-title{order:1;font-family:var(--font-sans);font-size:.85rem;font-weight:700;color:var(--text-primary);line-height:1.1;margin:0 0 2px 5px;padding-top:0;text-align:left}.box-project-featured .project-title{font-size:1.1rem}.project-cta{font-size:.7rem;font-weight:600}.box-insight{--initial-rotation: -.1deg;--entrance-delay: .9s;--float-duration: 8s;--float-distance: -8px;--float-rotate: .6deg;--laser-color: #66bb6a;width:16vw;min-width:200px;min-height:250px;bottom:11%;right:5%;left:auto;z-index:14;background:linear-gradient(135deg,var(--bg-card) 0%,rgba(231,140,45,.12) 50%,rgba(255,160,50,.18) 100%);border:2px solid rgba(231,140,45,.15);background-clip:padding-box;position:absolute;box-shadow:var(--shadow-md);padding:0 0 0 5px;display:flex;flex-direction:column;overflow:hidden;opacity:0;visibility:hidden;height:240px;transform-origin:bottom right;transition:width .5s cubic-bezier(.16,1,.3,1),height .5s cubic-bezier(.16,1,.3,1),transform .5s cubic-bezier(.16,1,.3,1),background-color .5s ease,border-color .5s ease,backdrop-filter .5s ease,box-shadow .5s ease;will-change:width,height,transform}.box-insight.animate-entrance{visibility:visible;animation-name:cardEntrance!important;animation-duration:1s!important;animation-timing-function:cubic-bezier(.16,1,.3,1)!important;animation-fill-mode:forwards!important;opacity:0}@media(min-width:769px){.box-insight.chat-active{width:550px!important;height:590px!important;z-index:900!important;right:5%!important;backdrop-filter:blur(10px)!important;-webkit-backdrop-filter:blur(10px)!important;border-color:var(--accent-primary)!important;box-shadow:0 8px 32px #e78c2d40,0 20px 60px #ffa05033,0 32px 80px #ffb4641f,0 0 0 1px #e78c2d1a!important;transform:none!important;transition:width .65s cubic-bezier(.16,1,.3,1) .2s,height .65s cubic-bezier(.16,1,.3,1) .2s,transform .5s cubic-bezier(.16,1,.3,1),background-color .5s ease,border-color .5s ease,backdrop-filter .5s ease,box-shadow .65s ease .2s!important}}.box-insight .box-header{padding:20px 20px 10px!important}.box-insight.chat-active .box-header{pointer-events:none}.box-insight.insight-card-back{z-index:1!important}.box-insight:before{left:var(--laser-x, 85%);top:var(--laser-y, 0%);width:10px;height:10px;border-radius:50%;background:#34c759;box-shadow:0 0 10px #34c759cc,0 0 20px #34c75966;animation:statusPulse 2s ease-in-out infinite}.insight-content{padding:8px 20px 20px;text-align:center}.insight-icon{position:relative;width:42px;height:42px;background:linear-gradient(135deg,#ff9800,#e65100);border-radius:12px;display:flex;align-items:center;justify-content:center;margin:0 auto 14px;box-shadow:0 4px 15px #ff980059}.insight-icon svg{width:22px;height:22px;stroke:#fff}.insight-online-dot{position:absolute;top:-3px;right:-3px;width:10px;height:10px;background:#22c55e;border-radius:50%;border:2px solid white;box-shadow:0 0 8px #22c55e80;animation:onlinePulse 2s ease-in-out infinite}@keyframes onlinePulse{0%,to{transform:scale(1);box-shadow:0 0 8px #22c55e80}50%{transform:scale(1.15);box-shadow:0 0 12px #22c55eb3}}.insight-title{font-size:1rem;font-weight:600;color:var(--text-primary);margin-bottom:8px;line-height:1.3;text-align:center}.insight-teaser{font-size:.85rem;color:var(--text-secondary);line-height:1.5;margin-bottom:14px;text-align:center}.insight-cta{font-family:var(--font-mono);font-size:.75rem;color:#e65100;font-weight:600;display:flex;align-items:center;justify-content:center;gap:6px;margin-bottom:16px;transition:gap var(--transition),color var(--transition)}.box-insight:hover .insight-cta{gap:10px;color:#ff9800}.box-footer{position:fixed;inset:auto auto 24px 50%;transform:translate(-50%);width:auto;min-width:0;padding:0;margin:0;background:transparent!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;border:none!important;box-shadow:none!important;display:flex;gap:8px;align-items:center;font-size:.8rem;color:var(--text-secondary);z-index:1000;opacity:1!important;visibility:visible!important}.box-footer:before,.box-footer:after{display:none!important}.box-footer .separator{opacity:.4;user-select:none}.box-footer .copyright{opacity:.6;display:inline-block;padding:2px 4px}.footer-link{background:none;border:none;padding:0;font:inherit;color:var(--text-secondary);cursor:pointer;text-decoration:none;transition:color .3s ease;opacity:.8}.footer-link:hover{color:var(--accent-primary);opacity:1;text-decoration:underline}.typewriter-text{display:inline-block;will-change:transform,opacity}@keyframes slideUpFade{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-15px)}}.typewriter-text.exit{animation:slideUpFade .5s cubic-bezier(.2,.8,.2,1) forwards}.insight-view-teaser{transition:opacity .25s ease .4s,transform .25s ease .4s;opacity:1;transform:translateY(0);transform-origin:center bottom;pointer-events:auto;width:100%;height:100%;position:relative}.insight-view-chat{position:absolute;top:0;left:0;width:100%;height:100%;opacity:0;transform:translateY(20px) scale(.96);pointer-events:none;transition:opacity .2s ease,transform .2s ease;display:flex;flex-direction:column;z-index:10;padding-top:50px;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(1px);border-radius:var(--radius);overflow:hidden;min-height:0}.insight-close-inline{position:absolute;top:12px;right:12px;background:#fff;box-shadow:0 4px 10px #e68a1d26;border:none;border-radius:50%;width:36px;height:36px;display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:9999!important;color:var(--accent-primary);transition:all .2s ease}.insight-close-inline:hover{transform:rotate(90deg);background:var(--accent-primary);color:#fff;box-shadow:0 4px 12px #e68a1d4d}.insight-close-inline:active{transform:rotate(90deg) scale(.92)}.insight-close-inline svg{width:20px;height:20px;stroke-width:2.5}.box-insight.chat-active .insight-view-teaser{opacity:0;pointer-events:none;transition:opacity .25s ease,transform .25s ease}.box-insight.chat-active .insight-view-chat{opacity:1;transform:translateY(0) scale(1);pointer-events:auto}.insight-view-chat .env-chat{flex:1;min-height:0;display:flex;flex-direction:column;background:transparent;padding:0 16px 16px;border-top:none}.insight-view-chat .chat-header{display:none}.insight-view-chat .chat-messages{flex:1 1 auto;min-height:0;max-height:100%;overflow-y:auto;overflow-x:hidden;padding:20px 4px 90px;margin-bottom:0;display:flex;flex-direction:column;justify-content:flex-start;gap:12px;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;touch-action:pan-y;scrollbar-gutter:stable;-webkit-mask-image:none;mask-image:none}.insight-view-chat .chat-messages>:first-child{margin-top:auto!important}.chat-message.bot .chat-bubble .chat-link{display:inline-block!important;margin-top:10px!important;padding:10px 18px!important;background:var(--accent-primary)!important;color:#fff!important;text-decoration:none!important;border-radius:20px!important;font-weight:600!important;font-size:.85rem!important;box-shadow:0 4px 10px #e68a1d33!important;transition:transform .2s ease,box-shadow .2s ease!important;border:none!important}.chat-message.bot .chat-bubble .chat-link:hover{transform:translateY(-2px)!important;box-shadow:0 6px 14px #e68a1d4d!important;background:var(--accent-secondary)!important}.chat-message.bot{align-self:flex-start;display:flex;align-items:flex-end;gap:8px;opacity:0;animation:messagePopIn .4s cubic-bezier(.34,1.56,.64,1) forwards;animation-delay:.1s}.chat-message.bot .chat-avatar{width:28px;height:28px;background:linear-gradient(135deg,#ff9f0a,#ff375f);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;color:#fff;flex-shrink:0;box-shadow:0 2px 4px #0000001a}.chat-message.bot .chat-bubble{background:#fff;color:#000;padding:10px 14px;border-radius:18px 18px 18px 4px;font-size:16px;line-height:1.4;box-shadow:0 1px 2px #0000000d}.chat-message.user{align-self:flex-end;max-width:85%;animation:messagePopIn .4s cubic-bezier(.34,1.56,.64,1) forwards}.chat-message.user .chat-bubble{background:var(--accent-gradient);color:#fff;padding:10px 14px;border-radius:18px 18px 4px;font-size:16px;line-height:1.4;box-shadow:0 1px 2px #0000001a}@keyframes messagePopIn{0%{opacity:0;transform:scale(.9) translateY(10px)}to{opacity:1;transform:scale(1) translateY(0)}}:root.dark-mode .chat-message.bot .chat-bubble{background:#3a3a3c;color:#fff}:root.dark-mode .insight-close-inline{background:#282828e6;color:var(--accent-primary);box-shadow:0 2px 8px #0000004d}:root.dark-mode .insight-close-inline:hover{background:var(--accent-primary);color:#fff}body.chat-mode-active .bento-grid>*:not(.box-insight){pointer-events:none}body.chat-mode-active .box-footer{pointer-events:none}.box-about:before,.box-contact:before,.box-stay-awesome:before,.box-somun:before{display:none!important;animation:none!important;content:none!important}.box-stay-awesome{--initial-rotation: 0deg;--entrance-delay: .6s;--float-duration: 7.5s;--float-distance: -8px;--float-rotate: 0deg;--laser-color: #FF5722;z-index:10;background:linear-gradient(135deg,#ffb75e,#e68a1d)!important;backdrop-filter:blur(12px) saturate(180%);-webkit-backdrop-filter:blur(12px) saturate(180%);border:1px solid rgba(255,255,255,.15);box-shadow:0 12px 40px #cc7a1a33,0 5px 15px #0000000d;color:#fdfade!important}.box-stay-awesome .box-tag{color:#fff!important;border-color:#fff3;background:#ffffff1a}.box-somun{--initial-rotation: 0deg;--entrance-delay: .65s;--float-duration: 8s;--float-distance: -6px;--float-rotate: 0deg;--laser-color: #FFC107;z-index:9;background:linear-gradient(135deg,#90bbac,#7da396)!important;backdrop-filter:blur(12px) saturate(180%);-webkit-backdrop-filter:blur(12px) saturate(180%);border:1px solid rgba(255,255,255,.2);box-shadow:0 4px 16px #00000014}.box-somun .box-tag{color:#ffffffd9!important;border-color:#ffffff4d;background:#ffffff1a}.box-content-wrapper{display:flex;flex-direction:column;height:100%;padding:0}.box-stay-awesome .about-content,.box-somun .about-content{padding:24px 24px 28px;display:flex;flex-direction:column;justify-content:center;height:100%;text-align:left}.box-stay-awesome .card-headline{color:#fdfade!important}.card-headline{font-size:1.4rem;font-weight:700;line-height:1.1;margin-bottom:12px;letter-spacing:-.01em;color:#fff!important}.box-stay-awesome .card-subtext{color:#fdfade!important;opacity:.9}.box-somun .card-subtext{color:#fff!important;opacity:.9}.card-subtext{font-size:.9rem;line-height:1.5;color:#fff!important;margin-bottom:20px;font-weight:400}.card-cta{display:inline-flex;align-items:center;gap:6px;font-size:.85rem;font-weight:600;color:#fff!important;text-decoration:none;margin-top:auto;width:fit-content;padding-bottom:2px;border-bottom:1px solid rgba(255,255,255,.3);transition:all .3s ease}.card-cta:hover{border-bottom-color:#fff;gap:10px}.card-cta .arrow{transition:transform .3s ease}.card-cta:hover .arrow{transform:translate(2px)}.box-somun .card-headline{color:#fff!important}.box-somun .card-cta{color:#fff!important;border-bottom-color:#ffffff4d}.box-somun .card-cta:hover{border-bottom-color:#fff}@media(min-width:768px){.box-group-right{position:absolute;top:8%;right:4%;width:15vw;min-width:260px;display:flex;flex-direction:column;gap:24px;z-index:10;pointer-events:none}.box-group-right>*{pointer-events:auto}.box-stay-awesome,.box-somun{width:100%;position:relative;top:auto;right:auto}}.box-stay-awesome:before{left:var(--laser-x, 10%);top:var(--laser-y, 0%);background:linear-gradient(135deg,#ff5722,#e64a19)}.box-somun:before{left:var(--laser-x, 90%);top:var(--laser-y, 0%);background:linear-gradient(135deg,#ffc107,#ffa000)}.box-stay-awesome .box-tag{color:var(--accent-primary);opacity:.8}.box-somun .box-tag{color:#ffa000}.box-stay-awesome .card-cta{color:#fdfade!important;border-bottom-color:#fdfade4d!important}.box-somun .card-cta{color:#fff!important;border-bottom-color:#ffffff4d!important}.box-stay-awesome .card-cta:hover{border-bottom-color:#fdfade!important}.box-somun .card-cta:hover{border-bottom-color:#fff!important}.project-label{position:absolute;bottom:5%;left:5%;font-family:var(--font-mono);font-size:.77rem;font-weight:500;color:var(--text-secondary);opacity:.85;z-index:5;pointer-events:auto;letter-spacing:.05em;line-height:1;display:flex;align-items:center;gap:8px;cursor:default;transition:opacity .3s ease;opacity:0;visibility:hidden}@keyframes glitch-text{0%{opacity:0;transform:translate3d(0,5px,0);text-shadow:none}20%{opacity:1;transform:translate3d(-2px,-2px,0);text-shadow:2px 0 var(--accent-primary),-2px 0 #fff}40%{transform:translate3d(2px,2px,0);text-shadow:-2px 0 var(--accent-tertiary),2px 0 #fff}60%{transform:translate3d(-1px,0,0);text-shadow:none}80%{transform:translate3d(1px,0,0)}to{opacity:1;transform:translateZ(0);text-shadow:none}}@keyframes glitch-text-1{0%{opacity:0;transform:translate3d(0,5px,0);text-shadow:none}20%{opacity:1;transform:translate3d(-2px,-2px,0);text-shadow:2px 0 var(--accent-primary),-2px 0 #fff}40%{transform:translate3d(2px,2px,0);text-shadow:-2px 0 var(--accent-tertiary),2px 0 #fff}60%{transform:translate3d(-1px,0,0);text-shadow:none}80%{transform:translate3d(1px,0,0)}to{opacity:1;transform:translateZ(0);text-shadow:none}}@keyframes glitch-text-2{0%{opacity:0;transform:translate3d(0,5px,0);text-shadow:none}20%{opacity:1;transform:translate3d(-2px,-2px,0);text-shadow:2px 0 var(--accent-primary),-2px 0 #fff}40%{transform:translate3d(2px,2px,0);text-shadow:-2px 0 var(--accent-tertiary),2px 0 #fff}60%{transform:translate3d(-1px,0,0);text-shadow:none}80%{transform:translate3d(1px,0,0)}to{opacity:1;transform:translateZ(0);text-shadow:none}}@keyframes glitch-text-3{0%{opacity:0;transform:translate3d(0,5px,0);text-shadow:none}20%{opacity:1;transform:translate3d(-2px,-2px,0);text-shadow:2px 0 var(--accent-primary),-2px 0 #fff}40%{transform:translate3d(2px,2px,0);text-shadow:-2px 0 var(--accent-tertiary),2px 0 #fff}60%{transform:translate3d(-1px,0,0);text-shadow:none}80%{transform:translate3d(1px,0,0)}to{opacity:1;transform:translateZ(0);text-shadow:none}}@keyframes glitch-text-4{0%{opacity:0;transform:translate3d(0,5px,0);text-shadow:none}20%{opacity:1;transform:translate3d(-2px,-2px,0);text-shadow:2px 0 var(--accent-primary),-2px 0 #fff}40%{transform:translate3d(2px,2px,0);text-shadow:-2px 0 var(--accent-tertiary),2px 0 #fff}60%{transform:translate3d(-1px,0,0);text-shadow:none}80%{transform:translate3d(1px,0,0)}to{opacity:1;transform:translateZ(0);text-shadow:none}}@keyframes glitch-text-5{0%{opacity:0;transform:translate3d(0,5px,0);text-shadow:none}20%{opacity:1;transform:translate3d(-2px,-2px,0);text-shadow:2px 0 var(--accent-primary),-2px 0 #fff}40%{transform:translate3d(2px,2px,0);text-shadow:-2px 0 var(--accent-tertiary),2px 0 #fff}60%{transform:translate3d(-1px,0,0);text-shadow:none}80%{transform:translate3d(1px,0,0)}to{opacity:1;transform:translateZ(0);text-shadow:none}}.project-label span{transition:color .3s ease,opacity .2s ease;display:inline-block}.label-dynamic{font-family:var(--font-sans);font-style:normal;font-weight:700;font-size:.77rem;text-transform:none;letter-spacing:0;margin-left:4px;opacity:0;transform:translate(-10px);transition:all .3s var(--ease-out-expo)}.project-label:hover{opacity:.85;color:var(--text-primary)}.project-label:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--text-secondary);box-shadow:0 0 #0000;opacity:.9;transition:all .3s cubic-bezier(.25,.46,.45,.94)}.project-label:has(~.mobile-project-wheel .box-project:hover) .label-static,body:has(.box-project:hover) .project-label .label-static,body:has(.box-project-featured:hover) .project-label .label-static{font-size:0!important}.project-label:has(~.mobile-project-wheel .box-project:hover) .label-static:before,body:has(.box-project:hover) .project-label .label-static:before,body:has(.box-project-featured:hover) .project-label .label-static:before{content:attr(data-title);font-size:.75rem;font-weight:700;text-transform:none;display:inline-block;white-space:nowrap}body:has(.box-project-featured:hover) .project-label .label-static{color:#cc335f}body:has(.box-project-featured:hover) .project-label .label-static:before{content:"kKUBIK: Kreativ-kooperative Räume gestalten";color:#cc335f;animation:glitch-text-1 .4s cubic-bezier(.25,.46,.45,.94) both}body:has(.box-project-featured:hover) .project-label:before{background:#cc335f;box-shadow:0 0 10px 2px #cc335f99,0 0 20px 5px #cc335f4d;opacity:1;transform:scale(1.2)}body:has(.box-project-featured:hover) .label-dynamic{opacity:1;transform:translate(0);color:#cc335f}body:has(.box-project-featured:hover) .label-dynamic:after{content:"Urban Design"}body:has(.box-project[data-project="2"]:hover) .project-label .label-static{color:#2a6f97}body:has(.box-project[data-project="2"]:hover) .project-label .label-static:before{content:"Initiativschule als modularer Holz-Hybrid Bau";color:#2a6f97;animation:glitch-text-2 .4s cubic-bezier(.25,.46,.45,.94) both}body:has(.box-project[data-project="2"]:hover) .project-label:before{background:#2a6f97;box-shadow:0 0 10px 2px #2a6f9799,0 0 20px 5px #2a6f974d;opacity:1;transform:scale(1.2)}body:has(.box-project[data-project="2"]:hover) .label-dynamic{opacity:1;transform:translate(0);color:#2a6f97}body:has(.box-project[data-project="2"]:hover) .label-dynamic:after{content:"Bildung"}body:has(.box-project[data-project="3"]:hover) .project-label .label-static{color:#e68a1d}body:has(.box-project[data-project="3"]:hover) .project-label .label-static:before{content:"Gemeinsames Wohnen und Arbeiten in der Stadt";color:#e68a1d;animation:glitch-text-3 .4s cubic-bezier(.25,.46,.45,.94) both}body:has(.box-project[data-project="3"]:hover) .project-label:before{background:#e68a1d;box-shadow:0 0 10px 2px #e68a1d99,0 0 20px 5px #e68a1d4d;opacity:1;transform:scale(1.2)}body:has(.box-project[data-project="3"]:hover) .label-dynamic{opacity:1;transform:translate(0);color:#e68a1d}body:has(.box-project[data-project="3"]:hover) .label-dynamic:after{content:"Co-Kreation"}body:has(.box-project[data-project="4"]:hover) .project-label .label-static{color:#e68a1d}body:has(.box-project[data-project="4"]:hover) .project-label .label-static:before{content:"Aus der Tank – Urbane Potenziale neu gedacht";color:#e68a1d;animation:glitch-text-4 .4s cubic-bezier(.25,.46,.45,.94) both}body:has(.box-project[data-project="4"]:hover) .project-label:before{background:#e68a1d;box-shadow:0 0 10px 2px #e68a1d99,0 0 20px 5px #e68a1d4d;opacity:1;transform:scale(1.2)}body:has(.box-project[data-project="4"]:hover) .label-dynamic{opacity:1;transform:translate(0);color:#e68a1d}body:has(.box-project[data-project="4"]:hover) .label-dynamic:after{content:"Wohnen mit Plaza"}body:has(.box-project[data-project="5"]:hover) .project-label .label-static{color:#cc335f}body:has(.box-project[data-project="5"]:hover) .project-label .label-static:before{content:"Ochsenzoll als lebendiges und vernetztes Quartier";color:#cc335f;animation:glitch-text-5 .4s cubic-bezier(.25,.46,.45,.94) both}body:has(.box-project[data-project="5"]:hover) .project-label:before{background:#cc335f;box-shadow:0 0 10px 2px #cc335f99,0 0 20px 5px #cc335f4d;opacity:1;transform:scale(1.2)}body:has(.box-project[data-project="5"]:hover) .label-dynamic{opacity:1;transform:translate(0);color:#cc335f}body:has(.box-project[data-project="5"]:hover) .label-dynamic:after{content:"Städtebau"}@media(max-width:768px){.project-label{display:none!important}}.modal{position:fixed;inset:0;z-index:2000;display:flex;align-items:center;justify-content:center;opacity:0;visibility:hidden;transition:.4s cubic-bezier(.4,0,.2,1)}.modal.active{opacity:1;visibility:visible}.modal-backdrop{position:absolute;inset:0;background:#2d2a26f2;backdrop-filter:blur(10px)}.modal-content{position:relative;width:90%;max-width:1000px;height:85vh;background:var(--bg-card);border-radius:var(--radius);display:flex;overflow:hidden;box-shadow:var(--card-hover-shadow),0 0 100px #e79c3c1a;transform:scale(.9) translateY(30px);transition:transform .4s cubic-bezier(.34,1.56,.64,1)}.modal.active .modal-content{transform:scale(1) translateY(0)}.modal-gallery{flex:1.5;position:relative;background:#000}.gallery-images{width:100%;height:100%}.gallery-images img{width:100%;height:100%;object-fit:contain}.modal-info{flex:1;padding:40px;display:flex;flex-direction:column;overflow-y:auto}.modal-close{position:absolute;top:20px;right:20px;width:36px;height:36px;border-radius:50%;background:#fff;border:none;cursor:pointer;z-index:10;display:flex;align-items:center;justify-content:center;transition:all .3s ease}.modal-close:hover{transform:rotate(90deg) scale(1.1);box-shadow:0 4px 15px #0003}.gallery-nav{position:absolute;top:50%;transform:translateY(-50%);width:44px;height:44px;border-radius:50%;background:#ffffffe6;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .3s ease;z-index:10}.gallery-nav:hover{background:#fff;transform:translateY(-50%) scale(1.1);box-shadow:0 4px 20px #0003}.gallery-prev{left:15px}.gallery-next{right:15px}.gallery-nav svg{width:20px;height:20px;stroke:var(--text-primary)}.gallery-dots{position:absolute;bottom:20px;left:50%;transform:translate(-50%);display:flex;gap:8px}.gallery-dot{width:8px;height:8px;border-radius:50%;background:#fff6;cursor:pointer;transition:all .3s ease}.gallery-dot.active{background:#fff;transform:scale(1.3)}.modal-category{font-family:var(--font-mono);font-size:.75rem;color:var(--accent-primary);text-transform:uppercase;letter-spacing:.1em;margin-bottom:8px}.modal-title{font-size:1.8rem;font-weight:700;margin-bottom:16px;line-height:1.2}.modal-description{font-size:1rem;color:var(--text-secondary);line-height:1.7;margin-bottom:24px}.modal-meta{display:flex;gap:16px;margin-top:auto;padding-top:20px;border-top:1px solid var(--border-color)}.meta-item{display:flex;align-items:center;gap:8px;font-size:.85rem;color:var(--text-tertiary)}.meta-item svg{width:18px;height:18px;stroke:var(--accent-primary)}.insight-modal{position:fixed;top:0;left:0;width:0;height:0;pointer-events:none;opacity:0;visibility:hidden;transition:opacity .5s cubic-bezier(.16,1,.3,1),visibility .5s cubic-bezier(.16,1,.3,1)}.insight-modal.active{opacity:1;visibility:visible;transition:none}.insight-modal-backdrop{position:absolute;inset:0;background:transparent;pointer-events:auto}.dark-mode .insight-modal-backdrop{background:transparent}.insight-modal-content{position:relative;pointer-events:auto;width:90%;max-width:650px;max-height:65vh;background:var(--bg-glass);backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);filter:blur(10px);opacity:0;will-change:transform,opacity,filter;border-radius:var(--radius);border:1px solid var(--bg-glass-border);box-shadow:var(--card-shadow);overflow:hidden;transform:scale(.9) rotate(-1deg);transition:transform .6s cubic-bezier(.16,1,.3,1),box-shadow .4s cubic-bezier(.25,.1,.25,1);display:flex;flex-direction:column}.insight-modal.active .insight-modal-content{animation:modalEntrance 1s cubic-bezier(.16,1,.3,1) forwards;opacity:1;transform:scale(1) rotate(0);background:var(--bg-glass);backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%)}@keyframes modalEntrance{0%{opacity:0;transform:scale(.95) rotate(0) translateY(40px);filter:blur(10px)}to{opacity:1;transform:scale(1) rotate(0) translateY(0);filter:blur(0px)}}.insight-modal-content:hover,#insightModal .insight-modal-content:hover,#serviceModal .insight-modal-content:hover{box-shadow:var(--card-hover-shadow)}.dark-mode .insight-modal-content{background:var(--bg-glass)}.insight-modal-close{position:absolute;top:20px;right:20px;width:40px;height:40px;border-radius:50%;background:#0000000d;border:none;display:flex;align-items:center;justify-content:center;transition:all .3s ease;z-index:10}.insight-modal-close:hover{background:#0000001a;transform:rotate(90deg)}.insight-modal-close svg{width:20px;height:20px;stroke:var(--text-secondary)}.insight-modal-body{padding:60px 50px 50px;overflow-y:auto;flex:1}.insight-modal-tag{font-family:var(--font-mono);font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.15em;color:var(--accent-primary);margin-bottom:16px;display:block}.insight-modal-body h2{font-size:2rem;font-weight:700;line-height:1.2;letter-spacing:-.02em;margin-bottom:20px;color:var(--text-primary)}.insight-lead{font-size:1.15rem;font-weight:500;color:var(--text-secondary);line-height:1.6;margin-bottom:30px;padding-bottom:30px;border-bottom:1px solid var(--border-light)}.insight-text p{font-size:1rem;color:var(--text-primary);line-height:1.8;margin-bottom:20px}.insight-text p:last-child{margin-bottom:0}.box-insight.insight-active{z-index:150;box-shadow:var(--card-hover-shadow);pointer-events:auto}#insightModal{justify-content:flex-start;align-items:flex-start;pointer-events:none;z-index:150}#insightModal .insight-modal-backdrop{display:none}#insightModal .insight-modal-content{position:fixed;bottom:4%;right:2%;width:29vw;min-width:320px;max-width:440px;min-height:500px;max-height:50vh;z-index:180;transform:scale(.9) rotate(0) translate(20px);transform-style:preserve-3d;overflow:visible;background:linear-gradient(135deg,var(--bg-glass) 0%,rgba(255,152,0,.1) 50%,rgba(230,81,0,.15) 100%);border:2px solid rgba(255,152,0,.2)}#insightModal.active .insight-modal-content{transform:scale(1) rotate(0) translate(0);z-index:500;box-shadow:var(--card-hover-shadow),0 0 50px #ff980026}#insightModal.active,#insightModal:hover{z-index:600}#insightModal .insight-modal-content:hover{z-index:800}body.insight-content-hovered .box.entered:hover,body.insight-content-hovered .box-contact{z-index:100!important}#insightModal .insight-modal-body{padding:0;display:flex;flex-direction:column;height:100%;text-align:center}#insightModal .insight-modal-body h2{font-size:1.3rem;margin-bottom:12px;text-align:center}#insightModal .insight-modal-tag{font-size:.65rem;margin-bottom:10px;text-align:center;color:#e65100}#insightModal .insight-text p,#insightModal .insight-lead{font-size:.85rem;line-height:1.6;margin-bottom:12px;text-align:center}#insightModal .insight-lead{padding-bottom:15px;margin-bottom:15px;border-color:#ff980033}#insightModal .insight-modal-close{top:12px;right:12px;width:32px;height:32px}#insightModal .insight-modal-close svg{width:16px;height:16px}#serviceModal{justify-content:flex-start;align-items:flex-start;pointer-events:none;z-index:790}#serviceModal:hover{z-index:750}#serviceModal .insight-modal-backdrop{display:none}.services-hovering #serviceModal.active{z-index:750}#serviceModal .insight-modal-content{position:fixed;top:15.5%;right:20.5%;width:22vw;min-width:280px;max-width:350px;max-height:55vh;z-index:800;transform:scale(.9) rotate(0) translate(20px);transform-style:preserve-3d;overflow:visible}#serviceModal.active .insight-modal-content{transform:scale(1) rotate(0) translate(0)}#serviceModal .insight-modal-content:hover{z-index:750}#serviceModal .insight-modal-body{padding:19px 25px 25px}#serviceModal .insight-modal-body h2{font-size:1.3rem;margin-bottom:12px;margin-top:9px}#serviceModal .insight-modal-tag{font-size:.65rem;margin-bottom:10px}#serviceModal .insight-text p{font-size:.85rem;line-height:1.6;margin-bottom:12px}#serviceModal .insight-text p.service-intro{font-size:.95rem;font-weight:600;color:var(--text-primary);margin-bottom:16px;line-height:1.4}#serviceModal .insight-text .service-list{list-style:none;padding:0;margin:0}#serviceModal .insight-text .service-list li{font-size:.8rem;color:var(--text-secondary);padding:6px 0 6px 16px;position:relative;border-bottom:1px solid var(--border-light)}#serviceModal .insight-text .service-list li:last-child{border-bottom:none}#serviceModal .insight-text .service-list li:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:6px;height:6px;background:var(--accent-primary);border-radius:50%}#serviceModal .insight-text p strong{color:var(--accent-primary)}#serviceModal .insight-modal-close{top:12px;right:12px;width:32px;height:32px}#serviceModal .insight-modal-close svg{width:16px;height:16px}@media(max-width:768px){.insight-modal-body{padding:50px 30px 30px}.insight-modal-body h2{font-size:1.5rem}.insight-lead{font-size:1rem}}#impressumModal{width:100%;height:100%;display:flex;align-items:flex-end;justify-content:center;padding-bottom:80px;z-index:2000}#impressumModal .insight-modal-backdrop{display:block;background:#ffffffa6;backdrop-filter:blur(2px)}.dark-mode #impressumModal .insight-modal-backdrop{background:#000000b3}.impressum-content{width:90%;max-width:420px;max-height:85vh;transform:scale(.95) translateY(20px)}#impressumModal.active .impressum-content{transform:scale(1) translateY(0)}#impressumModal .impressum-body{padding:40px 36px 32px;text-align:left}.impressum-header{margin-bottom:28px;padding-bottom:20px;border-bottom:1px solid var(--border-light)}.impressum-header .box-tag{margin-bottom:12px}#impressumModal .impressum-header h2{font-size:1.6rem;font-weight:700;margin-bottom:4px;letter-spacing:-.02em}.impressum-subtitle{font-size:.9rem;color:var(--text-secondary);margin:0;font-weight:400}.impressum-sections{display:flex;flex-direction:column;gap:24px}.impressum-section h3{font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.1em;color:var(--accent-primary);margin:0 0 8px}.impressum-section p{font-size:.9rem;color:var(--text-primary);line-height:1.7;margin:0}.impressum-link{color:var(--text-primary);text-decoration:underline;text-decoration-style:dashed;text-decoration-color:var(--accent-primary);text-decoration-thickness:1px;text-underline-offset:3px;transition:all .2s ease}.impressum-link:hover{color:var(--accent-primary)}.impressum-hinweis{background:linear-gradient(to bottom,#00000008,#fff);border-top:1px solid #fff;box-shadow:0 -1px #00000008;margin:-4px -36px -30px;padding:12px 36px}.dark-mode .impressum-hinweis{background:#ffffff0d}.impressum-footer{margin-top:28px;padding-top:16px;border-top:none}.impressum-footer small{font-size:.7rem;color:var(--text-tertiary);letter-spacing:.02em}@media(max-width:768px){.impressum-content{max-width:100%;margin:0 16px;max-height:none}#impressumModal .impressum-body{padding:32px 24px 24px}#impressumModal .impressum-header h2{font-size:1.4rem}.impressum-hinweis{margin:-4px -24px -30px;padding:12px 24px}}#impressumModal{padding-left:28vw}.env-chat{border-top:1px solid var(--border-light);display:flex;flex-direction:column;gap:20px;margin-top:0;padding:40px 7px 0 15px;flex:1;overflow:hidden;position:relative;min-height:0}.env-chat.chat-loading .chat-input-form{opacity:.5;pointer-events:none}.env-chat.chat-loading .chat-input-form input{background:linear-gradient(90deg,#c8c8c84d 25%,#dcdcdc80,#c8c8c84d 75%);background-size:200% 100%;animation:skeletonShimmer 1.5s infinite}@keyframes skeletonShimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.chat-header{margin-top:-30px;display:flex;align-items:center;justify-content:space-between}.chat-status{display:flex;align-items:center;gap:8px;font-size:.8rem;color:var(--text-secondary);font-weight:500}.status-dot{width:8px;height:8px;background:#34c759;border-radius:50%;animation:statusPulse 2s ease-in-out infinite}@keyframes statusPulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.6;transform:scale(1.2)}}.chat-messages{overflow-y:auto;display:flex;flex-direction:column;gap:12px;padding:8px 4px 80px;scroll-behavior:smooth;flex:1;min-height:0;overscroll-behavior:contain;touch-action:pan-y;-webkit-mask-image:linear-gradient(to bottom,transparent 0%,black 15%);mask-image:linear-gradient(to bottom,transparent 0%,black 15%)}.chat-messages::-webkit-scrollbar{width:4px}.chat-messages::-webkit-scrollbar-track{background:transparent}.chat-messages::-webkit-scrollbar-thumb{background:var(--accent-primary);border-radius:4px;opacity:.5}.chat-message{display:flex;gap:10px;align-items:flex-start;animation:messageSlide .4s var(--ease-out-expo)}@keyframes messageSlide{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.chat-message.user{flex-direction:row-reverse}.chat-avatar{width:32px;height:32px;border-radius:50%;background:var(--accent-gradient);color:#fff;display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:700;flex-shrink:0}.chat-message.user .chat-avatar{background:var(--text-secondary)}.chat-bubble{background:#fff9;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid var(--bg-glass-border);border-radius:4px 16px 16px;padding:12px 16px;max-width:80%;font-size:.9rem;line-height:1.5;color:var(--text-primary);text-align:left}.chat-message.user .chat-bubble{background:var(--accent-gradient);color:#fff;border-top-left-radius:16px;border-top-right-radius:4px;border-color:transparent}.chat-bubble p{margin:0;line-height:1.7}.chat-message.bot .chat-bubble strong{color:inherit;font-weight:600}.chat-message.bot .chat-bubble em{font-style:italic;color:var(--text-secondary)}.chat-message.bot .chat-bubble hr{border:none;border-top:1px solid rgba(0,0,0,.08);margin:12px 0}.chat-message.bot .chat-bubble br{display:block;content:"";margin-top:6px}.chat-bubble.typing{display:flex;gap:4px;padding:16px 20px}.typing-dot{width:8px;height:8px;background:var(--accent-primary);border-radius:50%;animation:typingBounce 1.4s ease-in-out infinite}.typing-dot:nth-child(2){animation-delay:.2s}.typing-dot:nth-child(3){animation-delay:.4s}@keyframes typingBounce{0%,60%,to{transform:translateY(0)}30%{transform:translateY(-8px)}}.chat-input-form{display:flex;gap:10px;align-items:center;margin-top:auto;bottom:20px;position:absolute;left:20px;right:20px;width:auto}.chat-input-form input{flex:1;padding:14px 18px;border:1px solid rgba(0,0,0,.1);border-radius:24px;background:var(--bg-glass);backdrop-filter:var(--glass-effect);-webkit-backdrop-filter:var(--glass-effect);font-family:var(--font-sans);font-size:.9rem;color:var(--text-primary);outline:none;transition:all .3s ease}.chat-input-form input::placeholder{color:var(--text-tertiary)}.chat-input-form input:focus{border-color:var(--accent-primary);box-shadow:0 0 0 3px var(--accent-light)}.chat-input-form button{width:48px;height:48px;border:none;border-radius:50%;background:var(--accent-gradient);color:#fff;display:flex;align-items:center;justify-content:center;cursor:none;@media(pointer:fine){&:not(.prefers-reduced-motion){cursor:none}}transition:all .3s var(--ease-out-expo);flex-shrink:0}.chat-input-form button:hover{transform:scale(1.08);box-shadow:0 8px 24px #e68a1d66}.chat-input-form button:active{transform:scale(.95)}.chat-input-form button svg{width:20px;height:20px}.chat-input-form button:disabled{opacity:.5;cursor:not-allowed;transform:none}.dark-mode .chat-bubble{background:#282828cc;border-color:#ffffff1a}.dark-mode .chat-message.user .chat-bubble{background:var(--accent-gradient)}@media(max-width:768px){.chat-messages{max-height:none}.chat-bubble{max-width:90%;font-size:.85rem}.chat-input-form input{padding:12px 14px}.chat-input-form button{width:42px;height:42px}}@media(min-width:1025px){body.project-view-active .dashboard{visibility:visible;content-visibility:auto;opacity:1;pointer-events:none;transition:opacity .8s ease}body.project-view-active .dashboard *,body.project-view-active .bg-orbs,body.project-view-active .cursor-glow{animation:none!important;transition:none!important}body.project-view-active .box{transition:filter .8s ease,opacity .8s ease,transform .8s ease}body.project-view-active .box.blur-tier-0{filter:blur(1.5px) saturate(.85);opacity:.65;transform:scale(.98)}body.project-view-active .box.blur-tier-1{filter:blur(5px) saturate(.6);opacity:.35}body.project-view-active .box.blur-tier-2{filter:blur(8px) saturate(.4);opacity:.25}body.project-view-active .bg-orbs{opacity:.08;visibility:visible;filter:blur(100px)}body.project-view-active .dashboard .box:before,body.project-view-active .dashboard .box:after,body.project-view-active .dashboard .box-content,body.project-view-active .dashboard .project-overlay{opacity:0!important;visibility:hidden!important}body.project-view-active .dashboard .lazy-image-container{opacity:1!important;visibility:visible!important}body.project-view-active .branding,body.project-view-active .dark-mode-toggle{opacity:.15!important;filter:blur(2px)}}@media(max-width:1024px){body.project-view-active .dashboard{pointer-events:none}}@media(max-width:1024px){body.project-view-active .box{transition:filter .6s cubic-bezier(.16,1,.3,1),opacity .6s cubic-bezier(.16,1,.3,1),transform .6s cubic-bezier(.16,1,.3,1)}body.project-view-active .box.blur-tier-0{filter:blur(0px);opacity:.9;transform:scale(.98)}body.project-view-active .box.blur-tier-1{filter:blur(4px);opacity:.5}body.project-view-active .box.blur-tier-2{filter:blur(8px);opacity:.35}body.project-view-active .branding,body.project-view-active .dark-mode-toggle{filter:blur(6px);opacity:.3}body.project-view-active .bg-orbs{opacity:.15}}.project-fullscreen{position:fixed;inset:0;z-index:1500;pointer-events:none;opacity:0;visibility:hidden;transition:opacity .5s cubic-bezier(.16,1,.3,1),visibility .5s cubic-bezier(.16,1,.3,1)}.project-fullscreen.active{opacity:1;visibility:visible;pointer-events:auto}.project-fullscreen-backdrop{position:absolute;inset:0;background:#fffefa8c;backdrop-filter:blur(0px);-webkit-backdrop-filter:blur(2px)}.project-fullscreen-close{position:absolute;top:24px;right:24px;width:48px;height:48px;border-radius:50%;background:var(--bg-glass);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid var(--bg-glass-border);display:flex;align-items:center;justify-content:center;cursor:none;@media(pointer:fine){&:not(.prefers-reduced-motion){cursor:none}}z-index:100;transition:var(--transition-fast);box-shadow:var(--shadow-md)}.project-fullscreen-close:hover{transform:rotate(90deg) scale(1.1);box-shadow:var(--shadow-lg)}.project-fullscreen-close svg{width:24px;height:24px;stroke:var(--text-primary)}.project-fullscreen-content{position:relative;width:100%;height:100%;overflow:hidden}.project-fullscreen-content[data-project="1"]{--laser-color: #cc335f }.project-fullscreen-content[data-project="2"]{--laser-color: #2a6f97 }.project-fullscreen-content[data-project="3"],.project-fullscreen-content[data-project="4"]{--laser-color: #ffcc80 }.project-fullscreen-content[data-project="5"]{--laser-color: #cc335f }.project-view-pin{position:absolute;border-radius:var(--radius);overflow:visible;opacity:0;transform:translateY(40px) scale(.9) rotate(var(--pin-rotation, 0deg));transition:transform .7s cubic-bezier(.34,1.56,.64,1),opacity .5s ease,box-shadow .4s ease;transform-style:preserve-3d;will-change:transform,opacity;contain:layout style}.project-view-pin--card{background:var(--bg-glass);backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);border:1px solid var(--bg-glass-border)}.project-view-pin-inner:before{content:"";position:absolute;top:-2px;left:var(--laser-x, 50%);width:18px;height:3px;border-radius:5px;transform:translate(-50%) translateZ(110px);transform-origin:center center;background:linear-gradient(135deg,var(--laser-color) 0%,var(--laser-color) 100%);box-shadow:0 0 6px var(--laser-color);z-index:1000;transition:width 1s cubic-bezier(.25,.46,.45,.94),height 5s cubic-bezier(.25,.46,.45,.94),box-shadow 5s ease,border-radius 1s ease;animation:laserBreathe 2.5s ease-in-out infinite;pointer-events:none}.project-view-pin:hover .project-view-pin-inner:before{box-shadow:0 0 15px 4px rgba(from var(--laser-color) r g b / .5)}.project-view-pin--featured:hover .project-view-pin-inner:before{width:6px!important}.project-view-pin--image .project-view-pin-inner:before,.project-view-pin--image .project-view-pin-inner:after,.project-view-pin--image:before,.project-view-pin--image:after{display:none!important}.project-view-pin--featured .project-view-pin-inner:before{display:block!important;left:var(--laser-x, 50%);top:0;transform:translate(-50%,-50%) translateZ(110px);width:6px;height:6px;border-radius:50%;background:var(--laser-color);box-shadow:0 0 8px 2px rgba(from var(--laser-color) r g b / .4);animation:none;transition:none}.project-view-pin--featured[data-file=urban_schnitt_stadt] .project-view-pin-inner:before{box-shadow:-115px 0 0 0 var(--laser-color),-115px 0 8px 2px rgba(from var(--laser-color) r g b / .4),115px 0 0 0 var(--laser-color),115px 0 8px 2px rgba(from var(--laser-color) r g b / .4),0 0 8px 2px rgba(from var(--laser-color) r g b / .4)}.project-view-pin--featured .project-view-pin-inner:after{display:block!important;content:"";position:absolute;left:var(--laser-x, 50%);top:0;width:160px;height:150%;pointer-events:none;background:radial-gradient(ellipse at center top,rgba(255,255,255,.3) 0%,rgba(255,255,255,.08) 40%,transparent 85%);transform:translate(-50%) translateZ(160px);opacity:0;transition:opacity .5s ease,left .15s ease-out;z-index:1000;mix-blend-mode:screen}.project-fullscreen-content[data-project="2"] .project-view-pin--featured .project-view-pin-inner:after{background:radial-gradient(ellipse at center top,rgba(42,111,151,.4) 0%,rgba(42,111,151,.08) 50%,transparent 90%)}.project-fullscreen-content[data-project="3"] .project-view-pin--featured .project-view-pin-inner:after,.project-fullscreen-content[data-project="4"] .project-view-pin--featured .project-view-pin-inner:after{background:radial-gradient(ellipse at center top,rgba(255,204,128,.5) 0%,rgba(255,204,128,.1) 50%,transparent 90%)}.project-fullscreen-content[data-project="5"] .project-view-pin--featured .project-view-pin-inner:after{background:radial-gradient(ellipse at center top,rgba(204,51,95,.4) 0%,rgba(204,51,95,.08) 50%,transparent 90%)}.project-view-pin--featured:hover .project-view-pin-inner:after{opacity:1}.project-view-pin--featured:hover .project-view-pin-inner:before{animation:singleLaserGlow 2s ease-in-out infinite}.project-view-pin--featured[data-file=urban_schnitt_stadt]:hover .project-view-pin-inner:before{animation:tripleLaserGlow 2s ease-in-out infinite}.project-fullscreen.active .project-view-pin{opacity:1;transform:translateY(0) scale(1) rotate(var(--pin-rotation, 0deg))}.project-view-pin:hover{box-shadow:none}.project-view-pin--primary{width:28vw;max-width:450px;min-width:200px}.project-view-pin--isometric{width:32vw;max-width:550px;min-width:290px}.project-view-pin--secondary{width:22vw;max-width:320px;min-width:180px}.project-view-pin--image{padding:0;overflow:visible;background:transparent;border:none;box-shadow:none}.project-view-pin-inner{position:relative;width:100%;background:var(--bg-glass);backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);border:1px solid var(--bg-glass-border);border-radius:var(--radius);padding:6px;overflow:visible;box-shadow:0 4px 10px #00000005,0 20px 40px #0000000a,0 1px #fff6 inset;display:flex;flex-direction:column;transform-style:preserve-3d}.project-view-pin--image img{width:100%;height:auto;object-fit:contain;max-height:75vh;background:#fff;display:block;border-radius:12px}.project-view-pin-footer{padding:10px 8px 8px;background:#ffffffd9;margin-top:6px;border-radius:8px;border:none}.project-view-pin-title{font-size:.7rem;font-weight:600;color:var(--text-primary);font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.05em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block;opacity:.85;transition:opacity .3s ease}.project-view-pin:hover .project-view-pin-title{opacity:.8}.project-view-pin--image[data-group=detail]{width:auto}.project-view-pin--image[data-group=detail] img{max-height:420px;width:100%;height:auto}.project-view-pin-label{display:none}.pin-tilt-glare{position:absolute;inset:0;background:radial-gradient(circle at 50% 50%,rgba(255,255,255,.3),transparent 50%);opacity:0;pointer-events:none;mix-blend-mode:overlay;border-radius:inherit;transition:opacity .4s ease;z-index:100}.project-view-pin--text{top:5%;right:4%;bottom:auto;width:360px;max-width:90vw;--pin-rotation: 0deg;z-index:40}.project-view-pin--text .project-view-pin-inner{padding:24px 28px}.project-view-category{font-family:var(--font-mono);font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.12em;color:var(--accent-primary);margin-bottom:8px}.project-view-title{font-size:1.4rem;font-weight:700;line-height:1.2;color:var(--text-primary);margin-bottom:12px}.project-view-description{font-size:.9rem;color:var(--text-secondary);line-height:1.6;margin-bottom:16px;opacity:.8}.project-view-meta{display:flex;flex-wrap:wrap;gap:16px;padding-top:12px;border-top:1px solid var(--border-light)}.project-view-meta-item{font-size:.75rem;color:var(--text-tertiary)}.project-view-meta-item strong{color:var(--text-secondary);font-weight:600}.project-fullscreen-nav{position:absolute;top:50%;transform:translateY(-50%);width:56px;height:56px;border-radius:50%;background:var(--bg-glass);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid var(--bg-glass-border);display:flex;align-items:center;justify-content:center;cursor:none;@media(pointer:fine){&:not(.prefers-reduced-motion){cursor:none}}z-index:100;opacity:0;transition:var(--transition-fast);box-shadow:var(--shadow-md)}.project-fullscreen.active .project-fullscreen-nav{opacity:1}.project-fullscreen-nav:hover{transform:translateY(-50%) scale(1.1);box-shadow:var(--shadow-lg);background:#fff}.project-fullscreen-nav--prev{left:24px}.project-fullscreen-nav--next{right:24px}.project-fullscreen-nav svg{width:24px;height:24px;stroke:var(--text-primary)}.project-fullscreen-counter{position:absolute;bottom:24px;left:50%;transform:translate(-50%);font-family:var(--font-mono);font-size:.8rem;color:var(--text-tertiary);background:var(--bg-glass);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);padding:8px 16px;border-radius:20px;border:1px solid var(--bg-glass-border)}.dark-mode .project-fullscreen-backdrop{background:#ffffff1a}.dark-mode .project-view-pin--image{background:transparent!important}.dark-mode .project-view-pin--text{background:var(--bg-glass)}.dark-mode .project-view-pin-footer{background:transparent}.rotate-hint{position:fixed;bottom:80px;left:50%;transform:translate(-50%);background:#000000bf;color:#fff;padding:8px 16px;border-radius:20px;font-size:.75rem;font-weight:600;display:none;align-items:center;gap:8px;z-index:100;pointer-events:none;backdrop-filter:blur(4px);opacity:0;animation:fadeIn 1s ease 1s forwards}.rotate-icon{width:16px;height:16px;animation:rotatePhone 2s infinite ease-in-out}@keyframes rotatePhone{0%{transform:rotate(0)}30%{transform:rotate(90deg)}70%{transform:rotate(90deg)}to{transform:rotate(0)}}@media(max-width:1024px){.project-fullscreen-backdrop{background:#fcfaf7bf}.dark-mode .project-fullscreen-backdrop{background:#000000bf}.project-fullscreen-content{overflow-y:auto;overflow-x:hidden;padding:80px 20px 100px;display:flex;flex-direction:column;gap:24px;-webkit-overflow-scrolling:touch;height:100%;pointer-events:auto}.project-view-pin,.project-view-pin--text,.project-view-pin--image,.project-view-pin[data-project],.project-view-pin[data-file],.project-view-pin[data-position]{position:relative!important;inset:auto!important;width:100%!important;max-width:100%!important;height:auto!important;margin:0!important;transform:none!important;opacity:1!important;box-shadow:var(--shadow-sm);filter:none!important}.project-view-pin--text{background:var(--bg-glass)!important;backdrop-filter:blur(20px)!important;border-radius:var(--radius);padding:0!important;margin-bottom:24px!important}.project-view-pin--text .project-view-pin-inner{padding:24px!important;background:transparent!important;border:none!important;box-shadow:none!important}.project-view-description{font-size:.95rem}.project-view-pin--image{background:transparent!important;border:none!important;box-shadow:none!important}.project-view-pin-inner{width:100%!important;height:auto!important;aspect-ratio:auto!important;box-shadow:var(--shadow-sm)}.project-view-pin img{height:auto!important;max-height:500px;object-fit:contain;background:#fff;border-radius:var(--radius)}.project-view-pin-inner:before{display:none!important}.project-view-pin:before,.project-view-pin:after{display:none!important}.project-fullscreen-nav{display:none}.project-fullscreen-close{top:16px;right:16px;width:44px;height:44px;background:var(--bg-primary);box-shadow:var(--shadow-md)}.project-fullscreen-counter{bottom:30px;background:var(--bg-primary);box-shadow:var(--shadow-md)}.rotate-hint{display:flex}}@media(min-width:500px)and (max-width:1024px)and (orientation:landscape){.project-fullscreen-content{display:block;transform:scale(.75);transform-origin:center center;overflow:hidden}.project-view-pin{position:absolute!important}.project-view-pin--image.is-zoomed{position:fixed!important;top:50%!important;left:50%!important;width:90vw!important;height:90vh!important;transform:translate(-50%,-50%)!important;z-index:2000!important;cursor:zoom-out}.project-view-pin--image.is-zoomed img{object-fit:contain}}@keyframes laserBreathe{0%,to{box-shadow:0 0 6px var(--laser-color, rgba(255, 255, 255, .3)),0 0 12px var(--laser-color, rgba(255, 255, 255, .1))}50%{box-shadow:0 0 10px var(--laser-color, rgba(255, 255, 255, .5)),0 0 25px var(--laser-color, rgba(255, 255, 255, .2)),0 0 45px var(--laser-color, rgba(255, 255, 255, .1))}}@keyframes cyberBlink{0%{opacity:1;box-shadow:0 0 25px var(--laser-color),0 0 50px var(--laser-color),0 0 80px var(--laser-color)}23.6%{opacity:.1;box-shadow:0 0 3px var(--laser-color)}38.2%{opacity:1;box-shadow:0 0 30px var(--laser-color),0 0 60px var(--laser-color)}61.8%{opacity:.1;box-shadow:0 0 2px var(--laser-color)}to{opacity:1;box-shadow:0 0 15px var(--laser-color),0 0 30px var(--laser-color)}}@media(min-width:1025px){[data-project="1"] .project-view-pin[data-file=urban_master]{inset:5% auto auto 4%!important;width:33vw!important;max-width:580px!important;z-index:45!important;--pin-rotation: 0deg !important}[data-project="1"] .project-view-pin[data-file=urban_grundriss]{inset:auto 7% 20% auto!important;width:37vw!important;max-width:660px!important;z-index:42!important}[data-project="1"] .project-view-pin[data-file=urban-schnitt]{inset:auto 14% 18% auto!important;width:33vw!important;max-width:570px!important;z-index:43!important;display:none}[data-project="1"] .project-view-pin[data-file=urban_schnitt_stadt]{inset:auto auto 5% 3%!important;width:94vw!important;max-width:1800px!important;z-index:55!important;--pin-rotation: 0deg !important}[data-project="1"] .project-view-pin[data-file=urban_organigramm]{inset:auto auto 25% 35%!important;width:30vw!important;max-width:480px!important;z-index:40!important}[data-project="1"] .project-view-pin[data-file=urban_organigramm] .project-view-pin-inner{background:transparent!important;box-shadow:none!important}[data-project="1"] .project-view-pin[data-file=urban_organigramm] img{opacity:.85}[data-project="1"] .project-view-pin[data-file=urban_analyse3_leitbild_main]{inset:4% 26% auto auto!important;width:24vw!important;max-width:380px!important;z-index:48!important;--pin-rotation: 0deg !important}[data-project="1"] .project-view-pin[data-file=urban_analyse1_nutzungen]{inset:6% 46% auto auto!important;width:14vw!important;max-width:220px!important;z-index:46!important}[data-project="1"] .project-view-pin[data-file=urban_analyse2_mobility]{inset:28% 45% auto auto!important;width:14vw!important;max-width:220px!important;z-index:47!important}[data-project="2"] .project-view-pin[data-file=ISL_iso]{inset:auto auto 5% 4%!important;width:36vw!important;max-width:620px!important;z-index:55!important;--pin-rotation: 0deg !important}[data-project="2"] .project-view-pin[data-file=ISL_location],[data-project="2"] .project-view-pin[data-file=ISL_floorPlanAdmin]{--pin-rotation: 0deg !important}[data-project="2"] .project-view-pin[data-file=ISL_viewGarden]{bottom:7%!important;right:4%!important;top:auto!important;max-width:720px!important;width:44vw!important;--pin-rotation: 0deg !important}[data-project="2"] .project-view-pin[data-file=ISL_secFloor]{bottom:29%!important;right:9%!important;top:auto!important;width:24vw!important;max-width:380px!important}[data-project="4"] .project-view-pin[data-file=tank_02]{inset:auto auto 6% 4%!important;width:55vw!important;max-width:1420px!important;z-index:50!important;--pin-rotation: 0deg !important}[data-project="4"] .project-view-pin[data-file=tank_sectionLearnandLiving]{inset:auto 4% 5% auto!important;width:42vw!important;max-width:720px!important;z-index:48!important;--pin-rotation: 0deg !important}[data-project="4"] .project-view-pin[data-file=tank_sectionLivingandCafe]{inset:auto 6% 20% auto!important;width:32vw!important;max-width:500px!important;z-index:45!important}[data-project="4"] .project-view-pin[data-group=conceptGfx]{inset:18% 27% auto auto!important;transform:rotate(var(--pin-rotation, 0deg));width:fit-content!important;min-width:0!important;height:auto!important;max-height:480px!important;z-index:60}[data-project="4"] .project-view-pin[data-group=conceptGfx] img{height:390px!important;width:auto!important;object-fit:contain!important}[data-project="4"] .project-view-pin[data-group=conceptGfx] .project-view-pin-inner{width:auto!important;height:auto!important}[data-project="4"] .project-view-pin[data-file=tank_is]{inset:10% auto auto 6%!important;width:34vw!important;max-width:550px!important;z-index:55!important;--pin-rotation: 0deg !important}[data-project="4"] .project-view-pin[data-file=tank_floorPlanRoof]{inset:4% auto auto 21%!important;width:24vw!important;max-width:380px!important;z-index:40!important}[data-project="4"] .project-view-pin[data-file=tank_19]{inset:5% 30% auto auto!important;z-index:20!important;--pin-rotation: 0deg !important}[data-project="3"] .project-view-pin[data-file=COUPLA_iso]{inset:auto auto 5% 3%!important;width:33vw!important;max-width:520px!important;z-index:80!important;--pin-rotation: 0deg !important}[data-project="3"] .project-view-pin[data-file=COUPLA_photos3]{inset:auto auto 8% 29%!important;width:6vw!important;max-width:80px!important;z-index:90!important;display:none}[data-project="3"] .project-view-pin[data-file=COUPLA_conc]{inset:7% auto auto 4%!important;width:fit-content!important;min-width:0!important;z-index:75!important}[data-project="3"] .project-view-pin[data-file=COUPLA_conc] img{height:590px!important;width:auto!important;object-fit:contain!important}[data-project="3"] .project-view-pin[data-file=COUPLA_conc] .project-view-pin-inner{width:auto!important;height:auto!important}[data-project="3"] .project-view-pin[data-file=COUPLA_conc_app]{inset:auto auto 7% 30%!important;width:fit-content!important;min-width:0!important;z-index:40!important}[data-project="3"] .project-view-pin[data-file=COUPLA_conc_app] img{height:240px!important;width:auto!important;object-fit:contain!important}[data-project="3"] .project-view-pin[data-file=COUPLA_concept_kreis]{inset:5% auto auto 8%!important;width:fit-content!important;min-width:0!important;z-index:44!important}[data-project="3"] .project-view-pin[data-file=COUPLA_concept_kreis] img{height:320px!important;width:auto!important;object-fit:contain!important}[data-project="3"] .project-view-pin[data-file=COUPLA_concept_neighbor]{inset:auto 6% 28% auto!important;width:fit-content!important;min-width:0!important;z-index:43!important}[data-project="3"] .project-view-pin[data-file=COUPLA_concept_neighbor] img{height:170px!important;width:auto!important;object-fit:contain!important}[data-project="3"] .project-view-pin[data-file=COUPLA_floorPlan_Main]{inset:5% 28% auto auto!important;width:26vw!important;max-width:420px!important;z-index:35!important;--pin-rotation: 0deg !important}[data-project="3"] .project-view-pin[data-file=COUPLA_floorPlan1]{inset:11% 36% auto auto!important;width:26vw!important;max-width:420px!important;z-index:33!important}[data-project="3"] .project-view-pin[data-file=COUPLA_section]{inset:auto 3% 5% auto!important;width:55vw!important;max-width:800px!important;z-index:38!important;--pin-rotation: 0deg !important}[data-project="5"] .project-view-pin[data-file=ochsenzoll_1]{inset:7% auto auto 5%!important;width:42vw!important;max-width:670px!important;z-index:52!important;--pin-rotation: 0deg !important}[data-project="5"] .project-view-pin[data-file=ochsenzoll_2]{inset:auto auto 6% 7%!important;width:38vw!important;max-width:600px!important;z-index:55!important;--pin-rotation: 0deg !important}[data-project="5"] .project-view-pin[data-file=ochsenzoll_lesebild]{inset:auto 4% 4% auto!important;width:39vw!important;max-width:620px!important;z-index:65!important;--pin-rotation: 0deg !important}[data-project="5"] .project-view-pin[data-file=ochsenzoll-lesebild_legende]{inset:auto 37% 4% auto!important;width:4vw!important;max-width:100px!important;z-index:50!important}[data-project="5"] .project-view-pin[data-file=ochsenzoll_sequenz]{inset:7% 26% auto auto!important;width:31vw!important;max-width:500px!important;z-index:47!important}[data-project="5"] .project-view-pin[data-file=ochsenzoll_sequenz-legende]{inset:5% 25% auto auto!important;width:12vw!important;max-width:180px!important;z-index:45!important}[data-project] .project-view-pin[data-file]:hover,[data-project] .project-view-pin[data-group]:hover{z-index:999999!important}}:root.dark-mode{--bg-primary: #0D0D0D;--bg-secondary: #161616;--bg-glass: rgba(30, 30, 30, .6);--accent-primary: #F09A35;--accent-light: rgba(240, 154, 53, .15);--text-primary: #F5F5F7;--text-secondary: rgba(245, 245, 247, .7);--text-tertiary: rgba(245, 245, 247, .4);--border-light: rgba(255, 255, 255, .01);--bg-glass-border: rgba(255, 255, 255, .02);--shadow-sm: 0 2px 8px rgba(0, 0, 0, .5);--shadow-md: 0 8px 24px rgba(0, 0, 0, .6);--shadow-lg: 0 24px 64px rgba(0, 0, 0, .7);--card-shadow: 0 4px 12px rgba(0, 0, 0, .8);--card-hover-shadow: 0 20px 40px rgba(0, 0, 0, .9), 0 0 30px rgba(0, 0, 0, .4) }.dark-mode body{background-color:var(--bg-primary);background-image:linear-gradient(rgba(100,90,80,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(100,90,80,.08) 1px,transparent 1px),linear-gradient(rgba(100,90,80,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(100,90,80,.04) 1px,transparent 1px)}.dark-mode .bg-orb{opacity:.2}.dark-mode .modal-backdrop{background:#0a0908f2}.dark-mode .box-project:not(.box-project-featured){background:#1e1e1ee6!important}.dark-mode .project-overlay{background:#1e1e1ee6!important}.dark-mode .project-title{color:var(--text-primary)}.dark-mode .project-category{color:var(--accent-primary)}.dark-mode .about-avatar{border-color:var(--bg-secondary);background:var(--bg-secondary)}.dark-mode .contact-item{background:#ffffff0d}.dark-mode .contact-item:hover{background:var(--accent-light)}.dark-mode .about-tags span{background:#ffffff14;color:var(--text-secondary)}.dark-mode .about-tags span:hover{background:var(--accent-primary);color:#fff}[data-astro-cid-sckkx6r4],[data-astro-cid-sckkx6r4]:before,[data-astro-cid-sckkx6r4]:after{box-sizing:border-box;margin:0;padding:0}html,body{overflow:hidden;height:100%;width:100%}.dashboard[data-astro-cid-sckkx6r4]{position:relative;width:100vw;height:100vh;overflow:hidden}.box[data-astro-cid-sckkx6r4]{position:absolute;background:#ffffff73;opacity:0}.branding[data-astro-cid-sckkx6r4]{position:fixed;top:20px;left:24px;font-weight:700;font-size:1.1rem;opacity:0}@media(max-width:767px){html,body{overflow-y:auto;height:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;position:relative}.dashboard{width:100%;height:auto;overflow-y:auto;-webkit-overflow-scrolling:touch;background-attachment:fixed}.bento-grid{position:relative;height:auto;display:flex;flex-direction:column;gap:24px;padding:42vh 16px 40px;padding-bottom:40px}.bento-grid>:is(.box-hero,.box-services,.box-about,.box-contact,.box-insight,.box-stay-awesome,.box-somun,.box-project-featured),.mobile-project-wheel .box-project,.bento-grid>.project-label{position:relative;inset:auto;width:100%;min-width:0;height:auto;margin:0;transform:none;opacity:1;animation:none}.box-group-right{order:4;width:100%;display:flex;flex-direction:column;gap:24px}.box-group-right>.box-stay-awesome,.box-group-right>.box-somun{position:relative;inset:auto;width:100%;min-width:0;height:auto;margin:0;transform:none;opacity:1;animation:none}.bento-grid>.box-hero{order:1;padding:16px;height:160px;min-height:unset;background:transparent;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none;z-index:2}.box-hero .box-content{padding:16px}.hero-title{font-size:1.8rem;line-height:1.3}.bento-grid>.box-project-featured{order:0;position:absolute;top:0;left:0;width:100%;height:40vh;z-index:0;margin:0;border-radius:0;-webkit-mask-image:linear-gradient(to bottom,black 60%,transparent 100%);mask-image:linear-gradient(to bottom,black 60%,transparent 100%)}.bento-grid>.box-project-featured .box-inner{height:100%;border-radius:0}.bento-grid>.box-project-featured img{height:100%;object-fit:cover;border-radius:0}.bento-grid>.box-about{order:3;margin-bottom:-10px}.about-avatar{margin-top:-60px}.mobile-project-wheel{order:6;position:relative;inset:auto;height:auto;pointer-events:auto;z-index:20;display:flex;flex-direction:row;overflow-x:auto;gap:16px;padding:10px 16px 24px;margin:0 -16px;-webkit-overflow-scrolling:touch;scroll-snap-type:x mandatory;mask-image:linear-gradient(to right,black 90%,transparent 100%);-webkit-mask-image:linear-gradient(to right,black 90%,transparent 100%)}.mobile-project-wheel .box-project{width:88vw;min-width:88vw;flex-shrink:0;margin:0;height:auto;scroll-snap-align:center;background:transparent;border:none;box-shadow:none}.mobile-project-wheel .box-project .box-inner{width:100%;height:fit-content;display:flex;flex-direction:column;background:var(--bg-primary, #ffffff);backdrop-filter:none;-webkit-backdrop-filter:none;border:1px solid var(--bg-glass-border);border-radius:var(--radius);box-shadow:var(--card-shadow)}:root.dark-mode .mobile-project-wheel .box-project .box-inner{background:#141414d9;backdrop-filter:blur(16px) saturate(180%);-webkit-backdrop-filter:blur(16px) saturate(180%);border:1px solid rgba(255,255,255,.08);box-shadow:0 4px 24px #00000080,inset 0 1px #ffffff0d}.mobile-project-wheel .box-project .lazy-image-container{width:100%;height:auto;flex:0 0 auto;position:relative;padding-bottom:4px}.mobile-project-wheel .box-project img{width:100%;height:auto;aspect-ratio:4 / 3.333;object-fit:cover;border-radius:var(--radius);position:relative;z-index:2;display:block;box-shadow:0 3px #00000026,0 1px #ffffff0d inset}.mobile-project-wheel .box-project .lazy-image-container:after{content:"";position:absolute;top:85%;left:20%;right:20%;height:80px;background-image:var(--card-img);background-size:150% auto;background-position:bottom center;filter:blur(20px) saturate(200%);opacity:0;transition:opacity .8s ease;z-index:0;pointer-events:none;border-radius:0 0 50% 50%}.mobile-project-wheel .box-project .lazy-image-container.loaded:after{opacity:.7}.dark-mode .mobile-project-wheel .box-project .lazy-image-container.loaded:after{opacity:1;filter:blur(25px) saturate(280%);height:90px}.mobile-project-wheel .box-project .project-overlay{display:flex;flex-direction:column;position:relative;padding:12px 16px 16px;background:transparent;opacity:1;visibility:visible;width:100%;min-height:auto;flex:0 0 auto}.box-group-right>.box-stay-awesome{order:1;margin-top:12px}.box-group-right>.box-somun{order:2}.bento-grid>.box-services{order:7;margin-top:-24px}.services-list{display:flex;flex-direction:column;gap:0;padding:0}.services-tabs{display:flex;overflow-x:auto;gap:8px;padding:12px 20px;-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none;mask-image:linear-gradient(to right,black 85%,transparent 100%);-webkit-mask-image:linear-gradient(to right,black 85%,transparent 100%)}.services-tabs::-webkit-scrollbar{display:none}.service-tab{display:flex;flex-direction:column;align-items:center;gap:6px;padding:12px 16px;width:121px;flex-shrink:0;background:#00000008;border:1px solid transparent;border-radius:12px;cursor:pointer;transition:all .3s ease}.service-tab svg{width:24px;height:24px;stroke:var(--text-secondary);transition:stroke .3s ease}.service-tab span{font-size:.7rem;font-weight:500;color:var(--text-secondary);white-space:nowrap;transition:color .3s ease}.service-tab.active{background:var(--accent-light);border-color:var(--accent-primary)}.service-tab.active svg{stroke:var(--accent-primary)}.service-tab.active span{color:var(--accent-primary);font-weight:600}.service-tab:active{transform:scale(.95)}.services-tab-content{padding:20px;border-top:1px solid var(--border-light);min-height:200px;transition:opacity .2s ease}.services-tab-content.transitioning{opacity:0}.tab-content-title{font-size:1.1rem;font-weight:600;color:var(--text-primary);margin:0 0 16px}.tab-content-tag{font-family:var(--font-mono);font-size:.7rem;text-transform:uppercase;letter-spacing:.1em;color:var(--accent-primary);margin:0 0 8px}.tab-content-body .service-intro{font-size:.95rem;font-weight:600;color:var(--text-primary);margin-bottom:12px;line-height:1.4}.tab-content-body p{font-size:.85rem;color:var(--text-secondary);line-height:1.6;margin-bottom:12px}.tab-content-body .service-list{list-style:none;padding:0;margin:0}.tab-content-body .service-list li{font-size:.8rem;color:var(--text-secondary);padding:8px 0 8px 16px;position:relative;border-bottom:1px solid var(--border-light)}.tab-content-body .service-list li:last-child{border-bottom:none}.tab-content-body .service-list li:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:5px;height:5px;background:var(--accent-primary);border-radius:50%}#serviceModal{display:none}.bento-grid>.box-contact{order:10}.bento-grid>.box-insight{order:11;background:linear-gradient(to bottom,#e78c2d4d,#ffb46459,#ffdcb440,#fff5eb59 60%,#ffffff80),url(/foot.webp);background-size:cover,100% auto;background-position:center,center bottom;background-repeat:no-repeat,no-repeat;border:2px solid rgba(231,140,45,.15);box-shadow:var(--shadow-md);border-radius:var(--radius) var(--radius) 0 0;position:relative;overflow:visible;min-height:440px;padding-bottom:40px}:root.dark-mode .bento-grid>.box-insight,.dark-mode .bento-grid>.box-insight{background:linear-gradient(to bottom,#e78c2d1a,#b464281a 10%,#00000073 110%,#00000080),url(/foot_dark.webp);background-size:cover,100% auto;background-position:center,center bottom;background-repeat:no-repeat,no-repeat}.bento-grid>.box-insight:after{content:"";display:block;position:absolute;inset:auto -16px -3.33px;width:calc(100% + 32px);height:2.22px;background:#e78c2dad;border-radius:0;opacity:1;pointer-events:none;box-shadow:0 12px 30px #e78c2db3,0 6px 15px #e78c2d80,0 20px 40px #e78c2d66}.bento-grid>.box-insight .box-header{padding:27px 16px 10px;text-align:center;position:relative;z-index:20}.bento-grid>.box-insight .insight-content{padding:10px 16px 20px}.box:before,.box:after{display:none}.box-project img{height:auto;object-fit:cover}.box-footer{order:12;position:relative;transform:none;left:auto;bottom:auto;width:100%;justify-content:center;background:var(--bg-glass);backdrop-filter:var(--glass-effect-strong);-webkit-backdrop-filter:var(--glass-effect-strong);border:1px solid var(--bg-glass-border);border-top:none;border-radius:0 0 var(--radius) var(--radius);margin-top:-22px;padding:16px 24px 24px;opacity:1}:root.dark-mode .box-footer{background:#0c0c0cf2;border-color:#ffffff14}}@media(min-width:768px){.bento-grid>.box-about{top:12%}}.about-degree{display:inline-block;padding-top:11px}.about-membership{margin-top:-8px;margin-bottom:18px}.about-membership-role{display:inline-block}.box-contact .contact-header{display:flex;align-items:center;gap:10px}.box-insight .insight-teaser-padded{padding-left:25px;padding-right:25px}@media(max-width:767px){.mobile-project-wheel .box-project .project-overlay{display:flex!important;opacity:1!important;visibility:visible!important;position:relative!important;z-index:6!important;pointer-events:auto!important}.mobile-project-wheel .box-project .project-category{display:block!important;opacity:1!important;visibility:visible!important;color:var(--accent-primary)!important}.mobile-project-wheel .box-project .project-title{display:block!important;opacity:1!important;visibility:visible!important;color:var(--text-primary)!important}.bento-grid .box:not(.box-project-featured),.bento-grid .box-footer{width:min(100%,calc(100vw - 32px))!important;max-width:calc(100vw - 32px);margin-left:auto!important;margin-right:auto!important}.bento-grid>.box-about{margin-top:90px}.bento-grid>.box-about .about-content,.bento-grid>.box-about .about-content>strong,.bento-grid>.box-about .about-content>p{text-align:left}.bento-grid>.box-about .about-tags{justify-content:flex-start}.bento-grid>.box-about .about-avatar{margin-left:0!important;margin-right:auto!important;align-self:flex-start!important}.bento-grid>.box-about .about-avatar img{object-position:left center!important;transform-origin:left center!important;transform:scale(1.25) translate(-7px,11px)!important}}@media(min-width:768px){.services-hovering #serviceModal.active{z-index:750}.box-services .service-item.is-key-active{background:#ff98001a;border-color:#ff98004d;transform:translate(4px)}.box-services .service-item.is-key-active svg{stroke:var(--accent-primary)}#serviceModal .insight-modal-body{transition:opacity .34s cubic-bezier(.16,1,.3,1),transform .34s cubic-bezier(.16,1,.3,1),filter .34s cubic-bezier(.16,1,.3,1);will-change:opacity,transform,filter}#serviceModal .insight-modal-content.service-switching .insight-modal-body{opacity:0;transform:translateY(12px);filter:blur(5px)}#serviceModal .insight-modal-content{top:var(--service-modal-top, 36vh);left:var(--service-modal-left, 44vw);right:auto;animation:none;transition:transform .72s cubic-bezier(.16,1,.3,1),box-shadow .4s cubic-bezier(.25,.1,.25,1),opacity .46s cubic-bezier(.16,1,.3,1),filter .46s cubic-bezier(.16,1,.3,1);transform:scale(.9) rotate(0) translateY(20px)}#serviceModal .insight-modal-content.service-opening{transition:none;animation:service-card-open .72s cubic-bezier(.16,1,.3,1) both}#serviceModal.active{pointer-events:auto}#serviceModal.active .insight-modal-content{pointer-events:auto;opacity:1;filter:blur(0);transform:scale(1) rotate(0) translateY(0)}}@keyframes service-card-open{0%{opacity:0;filter:blur(10px);transform:scale(.9) rotate(0) translateY(20px)}to{opacity:1;filter:blur(0);transform:scale(1) rotate(0) translateY(0)}}.card-cta{padding-left:12px;padding-right:12px}.card-cta:focus-visible{border-radius:12px}body.is-hovering-cta .custom-cursor{mix-blend-mode:normal!important;width:24px!important;height:24px!important}body.is-hovering-cta .custom-cursor:before{content:"";width:18px!important;height:18px!important;background:linear-gradient(135deg,#0000 40%,#000000eb 40% 60%,#0000 60%)!important;border:2px solid rgba(0,0,0,.92)!important;box-shadow:0 3px 10px #00000038!important;top:50%!important;left:50%!important;transform:translate(-50%,-50%)!important;border-radius:999px!important;animation:cta-blocked-blink 1.05s steps(1,end) infinite}body.is-hovering-cta .custom-cursor:after{content:"in Bearbeitung"!important;width:auto!important;height:auto!important;background:#0f0f0ff2!important;color:#fff!important;font-family:var(--font-sans)!important;font-size:.75rem!important;font-weight:500!important;padding:6px 10px!important;border-radius:6px!important;box-shadow:0 4px 12px #0000001a!important;top:-40px!important;left:50%!important;transform:translate(-50%)!important;white-space:nowrap!important}body.is-hovering-cta .box-stay-awesome .card-cta:after,body.is-hovering-cta .box-somun .card-cta:after{opacity:0!important;visibility:hidden!important}body.is-hovering-cta .box-stay-awesome .card-cta:hover,body.is-hovering-cta .box-somun .card-cta:hover{cursor:none!important}@keyframes cta-blocked-blink{0%,49%{opacity:1}50%,to{opacity:.28}}
