#sticky-header,body::before{position:fixed;top:0;left:0}.header-logo-name,.nav-links a{color:var(--text-secondary-color)}.hero,body{position:relative}.about-text p:last-child,.image-modal-details li:last-child,.skill-card h3,.skill-card>p{margin-bottom:0}.hero,.hero-button-group,.intro-paragraph,body.body-modal-open{overflow:hidden}.svg-h1-text,body{font-family:var(--font-family)}@font-face{font-family:Inter;font-style:normal;font-weight:400;src:url('assets/fonts/inter-v19-latin/inter-v19-latin-regular.woff2') format('woff2');font-display:swap}@font-face{font-family:Inter;font-style:normal;font-weight:500;src:url('assets/fonts/inter-v19-latin/inter-v19-latin-500.woff2') format('woff2');font-display:swap}@font-face{font-family:Inter;font-style:normal;font-weight:600;src:url('assets/fonts/inter-v19-latin/inter-v19-latin-600.woff2') format('woff2');font-display:swap}@font-face{font-family:Inter;font-style:normal;font-weight:700;src:url('assets/fonts/inter-v19-latin/inter-v19-latin-700.woff2') format('woff2');font-display:swap}:root{--bg-color:#121212;--card-bg-color:#1e1e1e;--text-color:#e0e0e0;--text-secondary-color:#a0a0a0;--accent-color:#00bfa5;--accent-hover-color:#00a38d;--border-color:#333;--font-family:'Inter',sans-serif;--header-height:70px;--shape-color-1:#00bfa5;--shape-color-2:#ff4081;--shape-color-3:#e040fb;--skill-icon-size:36px;--modal-skill-icon-size:48px;--bg-x:0px;--bg-y:0px}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{background-color:var(--bg-color);color:var(--text-color);line-height:1.6;overflow-x:hidden}body::before{content:'';width:100%;height:100%;background-image:url('./assets/background/background.webp');background-repeat:repeat;background-size:125px;background-position:var(--bg-x) var(--bg-y);opacity:.014;z-index:-1;pointer-events:none}.container{max-width:1100px;margin-left:auto;margin-right:auto;padding-left:20px;padding-right:20px;width:100%}.svg-icon{height:1em;width:1em;vertical-align:middle;transition:filter .3s,transform .3s}@keyframes fadeIn{from{opacity:0}to{opacity:1}}@keyframes slideInUp{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInScaleUp{from{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes revealText{from{clip-path:inset(0 100% 0 0);opacity:0}to{clip-path:inset(0 0 0 0);opacity:1}}@keyframes subtle-glow{0%,100%{box-shadow:0 0 20px rgba(0,191,165,.1)}50%{box-shadow:0 0 30px rgba(0,191,165,.15)}}@keyframes strong-glow{0%,100%{box-shadow:inset 0 0 0 1px var(--accent-color),0 0 30px rgba(0,191,165,.25)}50%{box-shadow:inset 0 0 0 1px var(--accent-color),0 0 45px rgba(0,191,165,.4)}}@keyframes flow-wave-1{from{transform:translateX(-25%)}to{transform:translateX(25%)}}@keyframes flow-wave-2{from{transform:translateX(25%)}to{transform:translateX(-25%)}}@keyframes infinite-scroll{from{transform:translateX(0)}to{transform:translateX(-50%)}}@keyframes draw-stroke{to{stroke-dashoffset:0}}#sticky-header{width:100%;height:var(--header-height);background-color:rgba(18,18,18,.85);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);z-index:1000;transform:translateY(-100%);transition:transform .4s ease-in-out,box-shadow .3s ease-in-out;display:flex;align-items:center;box-shadow:none}#sticky-header.nav-sticky{transform:translateY(0);box-shadow:0 2px 10px rgba(0,0,0,.3)}.header-container{display:flex;justify-content:space-between;align-items:center;width:100%}.header-logo-name{font-size:1rem;font-weight:600;border:1px solid var(--border-color);padding:6px 12px;border-radius:4px;opacity:0;transform:translateY(-20px);transition:opacity .3s ease-out .2s,transform .3s ease-out .2s}#sticky-header.nav-sticky .header-logo-name{opacity:1;transform:translateY(0)}.nav-links{list-style:none;display:flex;margin:0;padding:0}.nav-links li{margin-left:25px}.nav-links a{text-decoration:none;font-weight:500;font-size:.95rem;transition:color .3s}#external-link-modal-body strong,.btn-split.primary,.footer-links a:hover,.legal-page-content a,.nav-links a.active,.nav-links a:hover{color:var(--accent-color)}#mobile-menu-toggle{display:none;background:0 0;border:none;font-size:1.5rem;cursor:pointer;z-index:1001}#mobile-menu-toggle .svg-icon{filter:invert(93%) sepia(0%) saturate(227%) hue-rotate(187deg) brightness(112%) contrast(83%)}#mobile-menu-toggle .icon-close,#mobile-menu-toggle.active .icon-menu,.intro-image-container.mobile-only,.skill-details-content,.svg-h1-mobile,html[lang=de] .lang-en-content,html[lang=en] .lang-de-content{display:none}#mobile-menu-toggle.active .icon-close,.svg-h1-desktop{display:block}.hero{text-align:center;padding:80px 0 60px;margin-bottom:60px;background:radial-gradient(circle at 10% 20%,rgba(50,50,80,.1),transparent 40%),radial-gradient(circle at 90% 80%,rgba(50,80,50,.1),transparent 40%),var(--bg-color)}.hero::after,.hero::before{content:"";position:absolute;top:0;height:100%;width:200%;left:-50%;z-index:0;opacity:0;will-change:transform}.hero::before{background-image:linear-gradient(110deg,transparent 40%,rgba(0,191,165,.1) 50%,transparent 60%);animation:2s ease-out .5s forwards fadeIn,25s linear 1s infinite flow-wave-1}.hero::after{background-image:linear-gradient(250deg,transparent 40%,rgba(224,64,251,.07) 50%,transparent 60%);animation:2s ease-out .5s forwards fadeIn,25s linear 1s infinite flow-wave-2}.hero .container{position:relative;z-index:1}.hero .logo-name{font-size:1.1rem;font-weight:600;color:var(--text-secondary-color);border:2px solid var(--border-color);padding:8px 15px;display:inline-block;margin-bottom:30px;border-radius:4px;transition:opacity .3s ease-in-out;position:relative;opacity:0;animation:.6s ease-out .3s forwards fadeInScaleUp}.logo-name.hidden-by-sticky{opacity:0!important;pointer-events:none;animation:none!important}.svg-h1-wrapper{width:100%;margin-bottom:15px;opacity:0;animation:1s ease-out .8s forwards fadeIn;position:relative;line-height:1.2;font-size:inherit;font-weight:inherit;margin-block-start:0;margin-block-end:0}.btn,.btn-split{padding:12px 30px;font-size:1rem;cursor:pointer;text-decoration:none}.svg-h1-desktop,.svg-h1-mobile{width:100%;height:auto;max-height:100px}.svg-h1-text{font-weight:700;text-transform:uppercase;letter-spacing:2px;fill:transparent;stroke-width:1px;stroke-dasharray:3000;stroke-dashoffset:3000;animation:4s cubic-bezier(.25,1,.5,1) 1.2s forwards draw-stroke}.btn,.btn-split,.section-title{font-weight:600}.svg-h1-desktop .svg-h1-text{font-size:60px}.svg-h1-mobile .svg-h1-text{font-size:50px}.hero .subtitle{font-size:1.2rem;color:var(--accent-color);margin-bottom:30px;position:relative;opacity:0;animation:.6s ease-out 1.8s forwards slideInUp;font-weight:400}.btn{display:inline-block;background-color:var(--accent-color);color:#fff;border-radius:5px;transition:.3s;border:1px solid var(--accent-color)}.btn-modal-cta:hover,.btn:hover{background-color:var(--accent-hover-color);border-color:var(--accent-hover-color);transform:translateY(-2px)}.btn-secondary{background-color:transparent;color:var(--text-color);border:1px solid var(--border-color)}.btn-split.secondary,.intro-paragraph{color:var(--text-secondary-color)}.btn-modal-cta.secondary:hover,.btn-secondary:hover{background-color:#2a2a2a;border-color:var(--accent-color)}.hero-button-group{opacity:0;animation:.5s ease-out 2.2s forwards fadeInScaleUp;position:relative;display:inline-flex;border:2px solid var(--border-color);border-radius:5px;transition:border-color .3s}.ai-project-card:hover,.hero-button-group:hover{border-color:var(--accent-color)}.btn-split{background:0 0;border:none;transition:.3s}.intro-paragraph,.skill-card{background-color:var(--card-bg-color);position:relative}.btn-split:first-child{border-right:2px solid var(--border-color);transition:border-color .3s}.hero-button-group:hover .btn-split:first-child{border-right-color:var(--accent-color)}.btn-split.secondary:hover{background-color:rgba(255,255,255,.05);color:var(--text-color)}.btn-split.primary:hover{background-color:var(--accent-color);color:#fff}.intro-section{margin-bottom:60px}.intro-layout{display:flex;align-items:center;gap:40px}.intro-image-container.desktop-only{flex-shrink:0}.intro-image-container img{width:150px;height:150px;border-radius:50%;object-fit:cover;border:3px solid var(--accent-color);box-shadow:0 0 20px rgba(0,191,165,.3)}.intro-text-container{flex-grow:1;position:relative}.intro-paragraph{font-size:1.1rem;line-height:1.7;max-width:none;margin:0;border:1px solid var(--border-color);border-radius:8px;padding:30px 40px;box-schatten:0 0 20px rgba(0,0,0,0.2)}.intro-paragraph::before{content:'“';font-family:Georgia,serif;font-size:8rem;font-weight:700;color:var(--accent-color);opacity:.08;position:absolute;z-index:0;top:-10px;left:10px;line-height:1}.image-modal-overlay .modal-close-btn,.section-title{font-size:2rem}.project-category,.section{margin-bottom:80px}.reveal-on-scroll{opacity:0;transition:opacity .8s ease-out,transform .9s cubic-bezier(.165, .84, .44, 1)}.reveal-on-scroll.from-left{transform:translateX(-100px)}.reveal-on-scroll.from-right{transform:translateX(100px)}.reveal-on-scroll.is-visible{opacity:1;transform:translateX(0)}.section-title{margin-bottom:40px;color:var(--text-color);display:flex;align-items:center}.section-title .plus-icon{color:var(--accent-color);margin-right:10px;font-weight:700}.section-title.no-plus{justify-content:flex-start}.skills-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:30px}.skill-card{padding:30px;border-radius:8px;text-align:left;border:1px solid var(--border-color);transition:transform .3s ease-in-out;animation:5s ease-in-out infinite subtle-glow}.skill-card:hover{transform:translateY(-5px);animation:2.5s ease-in-out infinite strong-glow}.skill-expand-btn{position:absolute;top:15px;right:15px;background:0 0;border:none;font-size:1rem;cursor:pointer;padding:5px;line-height:1}.footer-socials a .svg-icon,.modal-close-btn .svg-icon,.skill-expand-btn .svg-icon{filter:invert(72%) sepia(9%) saturate(228%) hue-rotate(188deg) brightness(88%) contrast(88%)}.btn-link .svg-icon,.category-services-box h4 .svg-icon,.modal-close-btn:hover .svg-icon,.skill-expand-btn:hover .svg-icon{filter:invert(58%) sepia(37%) saturate(1227%) hue-rotate(124deg) brightness(96%) contrast(101%)}.skill-expand-btn:hover .svg-icon{transform:scale(1.1)}.skill-card-header{display:flex;align-items:center;gap:15px;margin-bottom:15px}#modal-skill-icon-wrapper,.skill-icon-wrapper{display:inline-flex;padding:10px;background-color:rgba(255,255,255,.05)}.skill-icon-wrapper{align-items:center;justify-content:center;border-radius:6px;width:calc(var(--skill-icon-size) + 20px);height:calc(var(--skill-icon-size) + 20px);flex-shrink:0}.modal-header,.modal-overlay{align-items:center;display:flex}.skill-icon-wrapper img{width:var(--skill-icon-size);height:var(--skill-icon-size);object-fit:contain}.skill-card h3{font-size:1.4rem;color:#fff;padding-right:30px}.skill-card>p,.skill-detail-text,.skill-tags li{color:var(--text-secondary-color)}.skill-card>p{font-size:.95rem}.modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background-color:rgba(0,0,0,.7);backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px);justify-content:center;z-index:2000;opacity:0;visibility:hidden;transition:opacity .3s,visibility 0s linear .3s;padding:20px}.image-modal-content,.modal-content{transform:translateY(30px) scale(.95);opacity:0;transition:transform .3s cubic-bezier(.25, .8, .25, 1),opacity .3s}.modal-overlay.active{opacity:1;visibility:visible;transition:opacity .3s,visibility linear}.modal-content{background-color:var(--card-bg-color);padding:30px 40px;border-radius:10px;border:1px solid var(--border-color);max-width:850px;width:90%;max-height:85vh;overflow-y:auto;position:relative;box-shadow:0 10px 30px rgba(0,0,0,.3)}.modal-overlay.active .image-modal-content,.modal-overlay.active .modal-content{transform:translateY(0) scale(1);opacity:1}.modal-close-btn{position:fixed;top:20px;right:20px;background:0 0;border:none;font-size:1.5rem;cursor:pointer;padding:5px;line-height:1;z-index:20}.modal-close-btn:hover .svg-icon{transform:rotate(90deg)}.image-modal-overlay .modal-close-btn .svg-icon{filter:invert(100%) sepia(100%) saturate(0%) hue-rotate(288deg) brightness(102%) contrast(102%)}.modal-header{margin-bottom:20px;padding-bottom:15px;border-bottom:1px solid var(--border-color)}#modal-skill-icon-wrapper{margin-right:15px;margin-bottom:0;width:calc(var(--modal-skill-icon-size) + 20px);height:calc(var(--modal-skill-icon-size) + 20px);align-items:center;justify-content:center;border-radius:6px}#modal-skill-icon{width:var(--modal-skill-icon-size);height:var(--modal-skill-icon-size);object-fit:contain}#modal-skill-title{font-size:1.8rem;color:#fff;margin:0}.skill-detail-text{margin-bottom:20px;line-height:1.6}.skill-tags{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:10px}.skill-tags li{background-color:rgba(255,255,255,.08);font-size:.85rem;padding:5px 12px;border-radius:5px;border:1px solid var(--border-color)}.modal-body-layout{display:flex;gap:30px;align-items:flex-start}.modal-main-content{flex:2}.modal-sidebar{flex:1;background-color:rgba(255,255,255,.03);border:1px solid var(--border-color);padding:20px;border-radius:8px}.skill-detail-text h4{font-size:1.1rem;color:var(--text-color);font-weight:600;margin-bottom:10px}.btn-modal-cta,.modal-sidebar li,.modal-sidebar p{font-size:.9rem}.skill-detail-text p{margin-bottom:15px}.skill-detail-text ul{list-style:none;padding-left:0;margin-bottom:15px}.skill-detail-text li{padding-left:25px;position:relative;margin-bottom:8px}.image-modal-details li::before,.skill-detail-text li::before{content:'✓';position:absolute;left:0;color:var(--accent-color);font-weight:700}.modal-sidebar p{color:var(--text-secondary-color)}p.modal-cta{font-style:italic;color:var(--accent-color);margin-top:15px}.image-modal-content{display:flex;align-items:flex-start;gap:30px;background:0 0;border:none;box-shadow:none;padding:0}.image-scroll-container{max-height:90vh;overflow-y:auto;overflow-x:hidden;border-radius:8px;line-height:0;box-shadow:0 10px 40px rgba(0,0,0,.5);-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:var(--accent-color) rgba(0,0,0,0.3)}.image-scroll-container::-webkit-scrollbar{width:10px}.image-scroll-container::-webkit-scrollbar-track{background:rgba(0,0,0,.3)}.image-scroll-container::-webkit-scrollbar-thumb{background-color:var(--accent-color);border-radius:5px;border:2px solid rgba(0,0,0,.3)}#modal-image-content{max-width:65vw;width:100%;height:auto;max-height:none;display:block}.image-modal-details{order:-1;flex-shrink:0;width:280px;background:var(--card-bg-color);padding:20px;border-radius:8px;border:1px solid var(--border-color)}.image-modal-details .details-title{font-size:1rem;font-weight:600;color:var(--accent-color);margin-bottom:15px;border-bottom:1px solid var(--border-color);padding-bottom:8px}.image-modal-details ul,.web-project-content .project-description ul{list-style:none;padding:0;margin:0}.image-modal-details li{font-size:.9rem;color:var(--text-secondary-color);margin-bottom:8px;padding-left:20px;position:relative}.image-modal-overlay.details-inside .image-modal-content{display:inline-block;position:relative;gap:0}.image-modal-overlay.details-inside .image-scroll-container{max-height:none;overflow:hidden;box-shadow:none}.image-modal-overlay.details-inside #modal-image-content{max-width:90vw;max-height:90vh;border-radius:8px;box-shadow:0 10px 40px rgba(0,0,0,.5)}.image-modal-overlay.details-inside .image-modal-details{position:absolute;top:20px;left:20px;order:0;background:rgba(18,18,18,.7);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.1);pointer-events:none}.modal-cta-section{margin-top:25px;padding-top:25px;border-top:1px solid var(--border-color)}.modal-cta-section h5{font-size:1.1rem;font-weight:600;color:var(--text-color);margin-bottom:15px}.modal-cta-section p{font-size:.95rem;color:var(--text-secondary-color);margin-bottom:20px}.modal-cta-responsive-img{display:block;max-width:250px;margin:0 auto 20px;background-color:transparent;transition:filter .4s ease-in-out;filter:drop-shadow(0 0 4px rgba(0, 191, 165, .6)) drop-shadow(0 0 15px rgba(0, 191, 165, .4))}#form-status-notification,.btn-modal-cta{background-color:var(--accent-color);text-align:center}.modal-cta-section:hover .modal-cta-responsive-img{filter:drop-shadow(0 0 6px rgba(0, 191, 165, .9)) drop-shadow(0 0 20px rgba(0, 191, 165, .6))}.modal-cta-buttons{display:flex;flex-wrap:wrap;gap:15px;margin-top:15px}.btn-modal-cta{display:inline-block;color:#fff;padding:8px 18px;text-decoration:none;border-radius:5px;font-weight:500;transition:.3s;border:1px solid transparent;cursor:pointer}.btn-modal-cta.secondary{background-color:var(--card-bg-color);color:var(--text-color);border-color:var(--border-color)}.category-title{font-size:1.6rem;font-weight:600;color:var(--text-color);margin-bottom:10px;border-left:3px solid var(--accent-color);padding-left:15px}.category-intro-wrapper{display:flex;align-items:flex-start;gap:40px;margin-bottom:40px}.category-description{flex:2;min-width:0;margin-bottom:0;font-size:1rem;color:var(--text-secondary-color)}.category-services-box{flex:1;background-color:rgba(255,255,255,.03);border:1px solid var(--border-color);padding:20px;border-radius:8px;max-width:300px}.logo-scroller,.web-project-card{overflow:hidden;background-color:var(--card-bg-color);border-radius:8px}.category-services-box h4{font-size:1rem;color:var(--text-color);margin-bottom:15px;display:flex;align-items:center;gap:8px}.services-grid{list-style:none;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:10px 15px}.services-grid li{font-size:.9rem;color:var(--text-secondary-color);padding-left:15px;position:relative}.services-grid li::before{content:'›';position:absolute;left:0;color:var(--accent-color)}.category-description a{color:var(--accent-color);text-decoration:none;font-weight:500}.category-description a:hover,.privacy-checkbox-container a:hover{text-decoration:underline}.btn-link{color:var(--accent-color);text-decoration:none;font-weight:600;transition:color .2s;display:inline-flex;align-items:center;gap:5px}.btn-link:hover{color:var(--accent-hover-color)}.web-projects-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:30px}.web-project-card{border:1px solid var(--border-color);display:flex;flex-direction:column;transition:transform .3s,box-shadow .3s;position:relative}.gen-ai-card:hover,.web-project-card:hover{transform:translateY(-5px);box-shadow:0 10px 25px rgba(0,0,0,.3)}.project-card-logo{position:absolute;top:-5px;right:-5px;width:90px;height:90px;opacity:.5;transition:opacity .3s}.web-project-card:hover .project-card-logo{opacity:.9}.web-project-image img{width:100%;height:auto;display:block;border-bottom:1px solid var(--border-color)}.web-project-content{padding:25px;flex-grow:1;display:flex;flex-direction:column}.web-project-content h4{font-size:1.2rem;color:#fff;margin-bottom:10px;padding-right:50px}.web-project-content p{color:var(--text-secondary-color);font-size:.95rem;margin-bottom:20px;flex-grow:1}.web-project-content .project-description{flex-grow:1;margin-bottom:20px}.web-project-content .project-description p{margin-bottom:15px;flex-grow:0}.web-project-content .project-description li{padding-left:20px;position:relative;margin-bottom:8px;font-size:.9rem;color:var(--text-secondary-color);line-height:1.5}.web-project-content .project-description li::before{content:'•';position:absolute;left:5px;color:var(--accent-color);font-weight:700}.ai-project-tags,.web-project-tags{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:20px}.ai-project-tags span,.web-project-tags span{background-color:rgba(255,255,255,.08);color:var(--text-secondary-color);font-size:.8rem;padding:4px 10px;border-radius:5px}.ai-projects-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:30px}.ai-project-card{background-color:var(--card-bg-color);border:1px solid var(--border-color);padding:25px;border-radius:8px;transition:border-color .3s}.ai-project-card h4,.gen-ai-content h4{font-size:1.2rem;color:#fff;margin-bottom:10px}.ai-project-card p{color:var(--text-secondary-color);font-size:.95rem;margin-bottom:15px}.ai-project-links{display:flex;align-items:center;gap:15px;flex-wrap:wrap}.link-divider{color:var(--border-color);font-size:1rem}.logo-scroller{width:100%;padding:20px 0;border:1px solid var(--border-color);-webkit-mask-image:linear-gradient(to right,transparent,black 20%,black 80%,transparent);mask-image:linear-gradient(to right,transparent,black 20%,black 80%,transparent)}.gen-ai-card,.webdesign-card{border-radius:8px;overflow:hidden}.logo-scroller-inner{display:flex;width:fit-content;animation:40s linear infinite infinite-scroll}.logo-scroller:hover .logo-scroller-inner{animation-play-state:paused}.logo-scroller-inner img{height:70px;margin:0 40px;filter:brightness(0) invert(1);opacity:.7;transform:scale(1);transition:filter .4s,opacity .4s,transform .4s;cursor:pointer;will-change:transform,filter,opacity}.gen-ai-content p,.gen-ai-content ul{margin-bottom:20px}.logo-scroller-inner img.logo-active,.logo-scroller-inner img:hover{filter:drop-shadow(0 0 15px rgba(255, 255, 255, .7));opacity:1;transform:scale(1.1)}.webdesign-deck-container{display:flex;justify-content:center;align-items:center;min-height:350px;padding:40px 0}.webdesign-card{display:block;position:relative;width:400px;height:250px;border:1px solid var(--border-color);background-color:#282828;box-shadow:0 10px 20px rgba(0,0,0,.4);transition:transform .4s,box-shadow .4s;cursor:pointer}.webdesign-card:not(:first-child){margin-left:-250px}.webdesign-card:first-child{z-index:5}.webdesign-card:nth-child(2){z-index:4}.webdesign-card:nth-child(3){z-index:3}.webdesign-card:nth-child(4){z-index:2}.webdesign-card:nth-child(5){z-index:1}.webdesign-card:hover{transform:translateY(-20px);z-index:10;box-shadow:0 15px 30px rgba(0,0,0,.5)}.webdesign-card img{width:100%;height:100%;object-fit:cover;display:block}.gallery-item-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,.6);display:flex;justify-content:center;align-items:center;opacity:0;transition:opacity .4s}.contact-item,.gen-ai-card,footer{background-color:var(--card-bg-color)}.gen-ai-image a:hover .gallery-item-overlay,.webdesign-card:hover .gallery-item-overlay{opacity:1}.gallery-item-overlay span{color:#fff;font-weight:600;font-size:1rem;text-align:center;padding:0 20px;display:flex;align-items:center;gap:8px}.gen-ai-content li,.gen-ai-content p{font-size:.95rem;color:var(--text-secondary-color)}.gallery-item-overlay .svg-icon{filter:invert(100%) sepia(100%) saturate(0%) hue-rotate(288deg) brightness(102%) contrast(102%);height:.9em;width:.9em}.contact-item .svg-icon,.footer-socials a:hover .svg-icon{filter:invert(58%) sepia(37%) saturate(1227%) hue-rotate(124deg) brightness(96%) contrast(101%)}.gen-ai-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px}.gen-ai-card{border:1px solid var(--border-color);display:flex;transition:transform .3s,box-shadow .3s}.gen-ai-image{flex-shrink:0;width:40%;position:relative}.gen-ai-image a{display:block;height:100%}.civitai-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:5px;height:100%;transition:transform .4s}.civitai-gallery img{width:100%;height:100%;object-fit:cover}.gen-ai-image a:hover .civitai-gallery{transform:scale(1.05)}.gen-ai-content{padding:25px;flex-grow:1;display:flex;flex-direction:column;justify-content:center}.gen-ai-content ul{list-style:none;padding:0}#external-link-modal-body p,.gen-ai-content li{margin-bottom:10px}.gen-ai-content li{padding-left:20px;position:relative}.gen-ai-content li::before{content:'›';position:absolute;left:0;color:var(--accent-color);font-weight:700}.text-only-card{padding:15px}.about-content{display:flex;gap:40px;align-items:center}.about-text{flex:1}.about-text p{font-size:1.1rem;line-height:1.7;margin-bottom:1em}.about-text p strong{color:#fff;font-weight:600}.about-visual{flex-basis:350px;align-self:center}.about-visual img{width:100%;height:auto;-webkit-mask-image:radial-gradient(circle,black 70%,transparent 100%);mask-image:radial-gradient(circle,black 70%,transparent 100%)}.contact-info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:20px;margin-bottom:40px}.contact-item{display:flex;align-items:center;padding:15px 20px;border-radius:8px;border:1px solid var(--border-color);text-decoration:none;color:var(--text-secondary-color);transition:.3s}.contact-item:hover{border-color:var(--accent-color);color:var(--text-color);transform:translateY(-3px)}.contact-item .svg-icon{font-size:1.4rem;margin-right:15px}.contact-item span{font-size:.95rem;font-weight:500}.contact-separator{text-align:center;color:var(--text-secondary-color);margin-bottom:25px;font-style:italic}.contact-form{max-width:700px;margin:0 auto}.contact-form input,.contact-form textarea{width:100%;padding:12px 15px;margin-bottom:20px;border-radius:5px;border:1px solid var(--border-color);background-color:var(--card-bg-color);color:var(--text-color);font-family:var(--font-family);font-size:1rem}.contact-form input::placeholder,.contact-form textarea::placeholder{color:var(--text-secondary-color)}.contact-form button{width:auto}.privacy-checkbox-container{display:flex;align-items:center;margin-bottom:20px;gap:10px}.privacy-checkbox-container input[type=checkbox]{width:auto;margin-bottom:0;flex-shrink:0;accent-color:var(--accent-color)}.privacy-checkbox-container label{font-size:.9rem;color:var(--text-secondary-color);line-height:1.4;cursor:pointer}.privacy-checkbox-container a{color:var(--accent-color);text-decoration:none}.footer-copyright,.footer-links a,.footer-socials a{color:var(--text-secondary-color)}footer{padding:30px 20px;margin-top:50px;border-top:1px solid var(--border-color)}footer .container{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:20px}.footer-copyright{font-size:.9rem;margin-right:auto}.footer-links a{font-size:.9rem;text-decoration:none;margin-left:20px;transition:color .3s}.footer-socials{display:flex;align-items:center;gap:20px}.footer-socials a{font-size:1.2rem;transition:color .3s}.footer-socials a:hover .svg-icon{transform:translateY(-2px)}#external-link-url-placeholder{word-break:break-all}.modal-cta-buttons a,.modal-cta-buttons button{-webkit-appearance:none;-moz-appearance:none;appearance:none}@media (max-width:1200px){.image-modal-details{display:none}#modal-image-content{max-width:90vw}}@media (max-width:900px){.svg-h1-desktop{display:none}.svg-h1-mobile{display:block;max-height:180px}.category-intro-wrapper{flex-direction:column;align-items:stretch;gap:25px}.category-services-box{max-width:none}.image-modal-content{display:inline-block;position:relative}.image-scroll-container{max-height:none;overflow:hidden;box-shadow:none}#modal-image-content{max-width:90vw;max-height:90vh;border-radius:8px;box-shadow:0 10px 40px rgba(0,0,0,.5)}.image-modal-details{position:absolute;top:20px;left:20px;display:block;background:rgba(18,18,18,.7);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.1);pointer-events:none}}@media (max-width:768px){.gen-ai-card,.intro-layout,.modal-body-layout,.nav-links{flex-direction:column}.ai-projects-grid,.gen-ai-grid,.web-projects-grid{grid-template-columns:1fr}.hero .subtitle{font-size:1rem}.intro-image-container.desktop-only{display:none}#mobile-menu-toggle,.nav-links a{display:block}.intro-image-container.mobile-only{display:block;position:absolute;top:-30px;right:20px;z-index:2}.intro-image-container.mobile-only img{width:60px;height:60px;border-width:2px;transform:scaleX(-1)}.intro-paragraph{padding-top:40px}.webdesign-deck-container{flex-wrap:wrap;gap:20px;min-height:auto}.webdesign-card,.webdesign-deck-container:hover .webdesign-card:hover{position:relative;transform:none!important;opacity:1!important;box-shadow:0 10px 20px rgba(0,0,0,.4);margin-left:0!important;width:100%;height:250px;z-index:auto!important}.nav-links{position:absolute;top:var(--header-height);left:0;width:100%;background-color:rgba(30,30,30,.98);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);align-items:center;padding:0;max-height:0;overflow:hidden;transition:max-height .3s ease-out,padding .3s ease-out;box-shadow:0 5px 10px rgba(0,0,0,.2)}.nav-links.active{max-height:350px;padding:20px 0}.nav-links li{margin:10px 0;width:100%;text-align:center}.nav-links a{padding:10px 0;width:100%}#sticky-header.nav-sticky .header-logo-name{opacity:1;transform:translateY(0);transition:none}.about-content,footer .container{flex-direction:column;text-align:center}.about-visual{margin-top:30px;flex-basis:auto}.modal-content{padding:25px 30px;width:90%}#modal-skill-title{font-size:1.5rem}.ai-projects-grid{gap:20px}.gen-ai-image{width:100%;height:250px}.footer-copyright{order:3;margin:20px 0 0}.footer-links{order:2}.footer-socials{order:1}.reveal-on-scroll.from-left,.reveal-on-scroll.from-right{transform:translateY(20px)}.reveal-on-scroll.is-visible{transform:translateY(0)}}@media (max-width:480px){.svg-h1-mobile .svg-h1-text{font-size:44px;letter-spacing:0}.skills-grid{grid-template-columns:1fr}.skill-card h3{padding-right:25px}.container,.header-container{padding-left:15px;padding-right:15px}.modal-content{padding:20px;width:95%}#modal-skill-title{font-size:1.3rem}.image-modal-details{display:none}.contact-info-grid{grid-template-columns:1fr 1fr;gap:15px}.contact-item{padding:12px;flex-direction:column;text-align:center}.contact-item .svg-icon{margin-right:0;margin-bottom:8px}.contact-item:first-child,.contact-item:nth-child(2){grid-column:1/-1}}.language-switcher{position:absolute;top:25px;right:25px;z-index:10;display:flex;gap:10px;background-color:rgba(30,30,30,.5);padding:8px;border-radius:8px;border:1px solid var(--border-color)}.lang-btn{background:0 0;border:none;cursor:pointer;padding:0;line-height:0;opacity:.5;transition:opacity .3s,transform .3s;border-radius:4px;color:var(--text-color)}.lang-btn:hover{opacity:1;transform:scale(1.1)}.lang-btn.active{opacity:1;box-shadow:0 0 10px var(--accent-color)}.lang-btn img{width:32px;height:24px;border-radius:3px;object-fit:cover;border:1px solid #444}.language-switcher.legal-page-switcher{top:20px;right:20px}#form-status-notification{padding:10px 15px;margin-top:15px;border-radius:5px;font-size:.95rem;font-weight:500;color:#fff;opacity:0;visibility:hidden;transform:translateY(10px);transition:opacity .3s,transform .3s,visibility .3s}#form-status-notification.visible{opacity:1;visibility:visible;transform:translateY(0)}#form-status-notification.error{background-color:#ff4081}.legal-page-body{padding:80px 0;display:flex;align-items:center;min-height:100vh}.legal-page-content{background-color:var(--card-bg-color);background-image:url('./assets/background.png');background-blend-mode:multiply;border:1px solid var(--border-color);border-radius:8px;padding:40px;position:relative;width:100%}.legal-page-content h1{font-size:2.5rem;margin-bottom:20px;color:var(--text-color)}.back-link,.legal-page-content h2,.not-found-title{color:var(--accent-color)}.legal-page-content h2{font-size:1.5rem;margin-top:30px;margin-bottom:15px;border-bottom:1px solid var(--border-color);padding-bottom:5px}.legal-page-content h3{font-size:1.2rem;margin-top:25px;margin-bottom:10px;color:var(--text-color)}.legal-page-content h4,.legal-page-content li,.legal-page-content p{margin-bottom:10px;color:var(--text-secondary-color)}.legal-page-content h4{font-size:1.1rem;margin-top:20px;font-style:italic}.legal-page-content ul{padding-left:20px}.back-link{display:inline-block;margin-bottom:40px;text-decoration:none;font-weight:600}.not-found-container{text-align:center;padding:40px 20px}.not-found-title{font-size:10rem;font-weight:700;line-height:1;margin-bottom:20px;text-shadow:0 0 20px rgba(0,191,165,.4);animation:.8s cubic-bezier(.25,.8,.25,1) fadeInScaleUp}.not-found-message{font-size:1.5rem;color:var(--text-color);margin-bottom:10px;animation:.6s ease-out .3s forwards slideInUp;opacity:0}.not-found-suggestion{color:var(--text-secondary-color);animation:.6s ease-out .5s forwards slideInUp;opacity:0}.not-found-container .btn{margin-top:30px;box-shadow:0 0 15px rgba(0,191,165,.3);animation:3s ease-in-out 1s infinite subtle-glow;color:#fff!important}.not-found-container .btn:hover{box-shadow:0 0 25px rgba(0,191,165,.6);transform:translateY(-3px) scale(1.03)}@media (max-width:768px){.language-switcher{top:15px;right:15px;padding:5px}.lang-btn img{width:28px;height:21px}.not-found-title{font-size:7rem}.not-found-message{font-size:1.2rem}}