:root{color-scheme:light dark;--bg-page: #ffffff;--bg-surface: #ffffff;--text-primary: #111827;--text-muted: #6b7280;--border-subtle: #e5e7eb;--accent: #01B1E2;--accent-soft: rgba(1, 177, 226, .12);--accent-text: #017C9E;--font-sans: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--sidebar-width: 280px;--content-width: 1400px;--radius-md: 8px;--radius-lg: 16px;--space-page-x: 3rem;--space-page-y: 2rem}[data-theme=dark]{--bg-page: #020617;--bg-surface: #020617;--text-primary: #e5e7eb;--text-muted: #9ca3af;--border-subtle: #1f2937;--accent-soft: rgba(1, 177, 226, .18)}*{margin:0;padding:0;box-sizing:border-box}html{font-family:var(--font-sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{background-color:var(--bg-page);color:var(--text-primary);line-height:1.6;min-height:100vh}.page{display:flex;min-height:100vh}.page-gradient-overlay{position:fixed;left:var(--sidebar-width);right:0;bottom:0;height:4rem;pointer-events:none;background:linear-gradient(to bottom,#f9fafb00,#f9fafb66 55%,#f9fafbe6);opacity:1;transition:opacity .2s ease;z-index:999}[data-theme=dark] .page-gradient-overlay{background:linear-gradient(to bottom,#02061700,#02061766 55%,#020617e6)}.page-gradient-overlay--hidden{opacity:0}body.sidebar-collapsed .page-gradient-overlay{left:80px}.page-gradient-overlay-top{position:fixed;left:var(--sidebar-width);right:0;top:0;height:6rem;pointer-events:none;background:linear-gradient(to bottom,#f9fafbe6,#f9fafb66 45%,#f9fafb00);opacity:1;transition:opacity .2s ease;z-index:98}[data-theme=dark] .page-gradient-overlay-top{background:linear-gradient(to bottom,#020617e6,#02061766 45%,#02061700)}.page-gradient-overlay-top--hidden{opacity:0}body.sidebar-collapsed .page-gradient-overlay-top{left:80px}@media (max-width: 768px){.page-gradient-overlay{height:3rem;left:0!important;right:0!important;width:100vw!important}.page-gradient-overlay-top{height:5rem;left:0!important;right:0!important;width:100vw!important}}.sidebar-container{position:fixed;left:0;top:0;width:var(--sidebar-width);height:100vh;z-index:100;transition:width .3s ease;background-color:var(--bg-surface);overflow:visible}.sidebar-container.collapsed{width:80px;background-color:transparent}.sidebar-toggle{position:fixed;top:1.5rem;left:calc(var(--sidebar-width) - 1.5rem - 32px);width:32px;height:32px;display:flex;align-items:center;justify-content:center;background-color:var(--bg-page);border:1px solid transparent;color:var(--text-muted);cursor:pointer;border-radius:20px;transition:color .2s,border-color .2s;z-index:101}.sidebar-toggle:before{content:"";position:absolute;inset:0;background-color:var(--accent-soft);border-radius:20px;opacity:0;transition:opacity .2s;z-index:-1}.sidebar-toggle:hover{color:var(--text-primary)}.sidebar-toggle:hover:before{opacity:1}.sidebar-toggle svg{width:16px;height:16px}.sidebar-toggle-icon-default{display:block}.sidebar-toggle-icon-burger{display:none}.sidebar-logo{position:fixed;top:1.5rem;left:1.5rem;font-size:1.5rem;font-weight:600;color:var(--text-primary);letter-spacing:-.01em;text-decoration:none;cursor:pointer;z-index:100;line-height:1}.sidebar-logo:hover,.sidebar-logo:focus,.sidebar-logo:active,.sidebar-logo:visited{color:var(--text-primary);text-decoration:none}.sidebar{position:relative;width:100%;height:100%;padding:1.5rem 1.5rem 0;display:flex;flex-direction:column;background-color:var(--bg-surface);overflow-y:auto;overflow-x:visible}.sidebar.collapsed{background-color:transparent}.sidebar.collapsed .sidebar-top>*:not(.sidebar-name),.sidebar.collapsed .sidebar-bottom{pointer-events:none;overflow:hidden}.sidebar.collapsed .sidebar-top:not(.animating)>*:not(.sidebar-name),.sidebar.collapsed .sidebar-bottom:not(.animating){opacity:0!important;height:0;margin:0;padding:0;visibility:hidden!important;pointer-events:none!important}.sidebar .sidebar-name{opacity:0;pointer-events:none}.sidebar-top{flex:0 0 auto;display:flex;flex-direction:column;justify-content:flex-start;overflow:visible}.sidebar-name{font-size:1.5rem;font-weight:600;color:var(--text-primary);margin-top:-.5rem;margin-bottom:8rem;letter-spacing:-.01em}.sidebar-subtitle{display:none}.sidebar-nav{list-style:none;overflow:visible}.sidebar-nav-item{margin-bottom:0;cursor:pointer;overflow:visible}.sidebar-nav-item:hover .sidebar-nav-link{background-color:#01b1e20f}[data-theme=dark] .sidebar-nav-item:hover .sidebar-nav-link{background-color:#01b1e217}.sidebar-nav-subitem:hover .sidebar-nav-link{background-color:#01b1e20f}[data-theme=dark] .sidebar-nav-subitem:hover .sidebar-nav-link{background-color:#01b1e217}.sidebar-nav-subitem{margin-left:.5rem;overflow:visible}.sidebar-nav-subitem .sidebar-nav-link{color:var(--text-primary);opacity:.65;font-size:.9375rem;font-weight:500;display:inline-block;width:fit-content;text-decoration:none;padding:.5rem .75rem;border-radius:20px;transition:background-color .2s,color .2s;overflow:visible}.sidebar-nav-subitem .sidebar-nav-link:hover{color:var(--text-primary);background-color:#01b1e20f;text-decoration:none}[data-theme=dark] .sidebar-nav-subitem .sidebar-nav-link:hover{background-color:#01b1e217}.sidebar-nav-subitem .sidebar-nav-link.active,.sidebar-nav-subitem .sidebar-nav-link.sidebar-item-active{color:var(--text-primary);opacity:1;font-size:.9375rem;font-weight:500;display:inline-block;width:fit-content;text-decoration:none;padding:.5rem .75rem;border-radius:20px;transition:background-color .2s,color .2s}.sidebar-nav-link{display:inline-block;width:fit-content;color:var(--text-primary);text-decoration:none;font-size:.9375rem;padding:.5rem .75rem;transition:background-color .2s,color .2s;font-weight:500;border-radius:20px;position:relative;line-height:1.5;overflow:visible}.sidebar-nav-link:hover{color:var(--text-primary);background-color:#01b1e20f;font-size:.9375rem;text-decoration:none}[data-theme=dark] .sidebar-nav-link:hover{background-color:#01b1e217}.sidebar-nav-link.active{color:var(--text-primary);font-weight:500;font-size:.9375rem;display:inline-block;width:fit-content;padding:.5rem .75rem;position:relative}.sidebar-item-active{position:relative;color:var(--text-primary);font-weight:500;font-size:.9375rem;z-index:1;display:inline-block;width:fit-content;line-height:1.5;padding:.5rem .75rem}.sidebar-nav-subitem .sidebar-nav-link.sidebar-item-active{display:inline-block;width:fit-content;position:relative}.sidebar-item-active:before{content:"";position:absolute;inset:-2px 0;width:100%;border-radius:12px;background:linear-gradient(90deg,#2563eba6,#a855f7a6,#fb923ca6);filter:blur(16px);opacity:.8;z-index:-1}[data-theme=dark] .sidebar-item-active:before{background:linear-gradient(90deg,#3b3fff8c,#c643808c,#ffc0438c);filter:blur(18px);opacity:.75}.sidebar-nav-sublink{display:block;color:var(--text-muted);text-decoration:none;font-size:.875rem;padding:.375rem .75rem .375rem 1.25rem;transition:background-color .2s;font-weight:500;border-radius:20px}.sidebar-nav-sublink:hover{color:var(--text-muted);background-color:var(--accent-soft)}.sidebar-nav-sublink.active{color:var(--text-primary);font-weight:600}.sidebar-nav-sublink.sidebar-item-active{position:relative;color:var(--text-primary);font-weight:500;z-index:1;display:inline-block;width:fit-content}.sidebar-bottom{padding-top:2rem;padding-bottom:0;margin-top:auto;margin-bottom:0}.sidebar-secondary-links{display:flex;flex-direction:column;gap:.75rem;margin-bottom:3.5rem}.sidebar-icon-link{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;color:var(--text-muted);text-decoration:none;transition:background-color .2s;position:relative;border-radius:20px;animation-fill-mode:both}.sidebar.collapsed .sidebar-secondary-links .sidebar-icon-link{opacity:0;transform:translateY(100px);pointer-events:none}.sidebar-icon-link:hover{color:var(--text-muted);background-color:var(--accent-soft)}.sidebar-icon-link svg{width:20px;height:20px}@keyframes bounceInFromBottom{0%{opacity:0;transform:translateY(100px)}40%{opacity:1;transform:translateY(-1px)}50%{transform:translateY(.5px)}60%{transform:translateY(-.25px)}70%{transform:translateY(.1px)}to{opacity:1;transform:translateY(0)}}@keyframes bounceInFromBottom2{0%{opacity:0;transform:translateY(100px)}40%{opacity:1;transform:translateY(-1.5px)}50%{transform:translateY(.75px)}60%{transform:translateY(-.25px)}70%{transform:translateY(.1px)}to{opacity:1;transform:translateY(0)}}@keyframes bounceInFromBottom3{0%{opacity:0;transform:translateY(100px)}40%{opacity:1;transform:translateY(-1px)}50%{transform:translateY(.5px)}60%{transform:translateY(-.25px)}70%{transform:translateY(.1px)}to{opacity:1;transform:translateY(0)}}@keyframes bounceInFromTop{0%{opacity:0;transform:translateY(-100px)}40%{opacity:1;transform:translateY(.5px)}50%{transform:translateY(-.25px)}60%{transform:translateY(.1px)}to{opacity:1;transform:translateY(0)}}@keyframes bounceInFromTop2{0%{opacity:0;transform:translateY(-100px)}40%{opacity:1;transform:translateY(.75px)}50%{transform:translateY(-.25px)}60%{transform:translateY(.1px)}to{opacity:1;transform:translateY(0)}}@keyframes bounceInFromTop3{0%{opacity:0;transform:translateY(-100px)}40%{opacity:1;transform:translateY(.4px)}50%{transform:translateY(-.15px)}60%{transform:translateY(.1px)}to{opacity:1;transform:translateY(0)}}@keyframes bounceInFromTop4{0%{opacity:0;transform:translateY(-100px)}40%{opacity:1;transform:translateY(.6px)}50%{transform:translateY(-.25px)}60%{transform:translateY(.1px)}to{opacity:1;transform:translateY(0)}}@keyframes slideOutToLeft{0%{opacity:1;transform:translate(0)}60%{opacity:0}to{opacity:0;transform:translate(-100px)}}@keyframes slideOutToLeft2{0%{opacity:1;transform:translate(0)}60%{opacity:0}to{opacity:0;transform:translate(-100px)}}@keyframes slideOutToLeft3{0%{opacity:1;transform:translate(0)}60%{opacity:0}to{opacity:0;transform:translate(-100px)}}@keyframes slideOutToLeft4{0%{opacity:1;transform:translate(0)}60%{opacity:0}to{opacity:0;transform:translate(-100px)}}.sidebar-expand-button{display:none;position:fixed;bottom:1.5rem;left:24px;width:32px;height:32px;align-items:center;justify-content:center;background:transparent;border:none;color:var(--text-muted);cursor:pointer;border-radius:20px;transition:background-color .2s,color .2s;z-index:10000}.sidebar-container:not(.collapsed) .sidebar-expand-button{display:none}.sidebar-container.collapsed .sidebar-expand-button{display:inline-flex}@media (max-width: 768px){.sidebar-container{width:80vw;overflow:visible;transition:width .3s ease}.sidebar-container.collapsed{width:0}.sidebar-container .sidebar{width:80vw;transform:translate(-100%);transition:transform .4s cubic-bezier(.4,0,.2,1);position:fixed;left:0;top:0;height:100vh;z-index:1001;background-color:var(--bg-surface);overflow:hidden;overflow-y:hidden;display:flex;flex-direction:column}.sidebar-container:not(.collapsed) .sidebar{transform:translate(0)}.sidebar-container:not(.collapsed) .sidebar-top,.sidebar-container:not(.collapsed) .sidebar-bottom{overflow:visible}.sidebar-container:not(.collapsed) .sidebar-nav{overflow:visible}.sidebar-container:not(.collapsed) .sidebar{padding-bottom:2rem}body:not(.sidebar-collapsed):after{content:"";position:fixed;top:0;left:80vw;right:0;bottom:0;background-color:#00000080;z-index:1000;pointer-events:auto;transition:opacity .4s cubic-bezier(.4,0,.2,1)}.sidebar-close-button{position:absolute;top:1.5rem;right:1.5rem;width:40px;height:40px;display:flex;align-items:center;justify-content:center;background-color:var(--bg-page);border:1px solid var(--border-subtle);border-radius:25px;color:var(--text-primary);cursor:pointer;z-index:1002;transition:all .2s}.sidebar-close-button:hover{background-color:var(--accent-soft)}.sidebar-close-button svg{width:20px;height:20px}.sidebar-container.collapsed .sidebar-close-button{display:none}}@media (min-width: 769px){.sidebar-close-button{display:none!important}}@media (max-width: 768px){.sidebar-toggle{position:fixed;top:1.5rem;right:1.5rem;left:auto;width:40px;height:40px;background-color:var(--bg-page);border:1px solid transparent;border-radius:25px;z-index:1000;transition:transform .3s ease,border-color .2s}.sidebar-container:not(.collapsed) .sidebar-toggle{display:none}.sidebar-toggle-icon-default{display:none}.sidebar-toggle-icon-burger{display:block;width:26px!important;height:26px!important;color:#000!important}[data-theme=dark] .sidebar-toggle-icon-burger{color:#fff!important}.sidebar-logo{position:fixed;top:1.5rem;left:1.5rem;font-size:1.5rem;font-weight:600;color:var(--text-primary);letter-spacing:-.01em;text-decoration:none;z-index:999;display:inline-flex!important;align-items:center;justify-content:center;transition:transform .3s ease,border-color .2s;background-color:var(--bg-page);border-radius:25px;padding:0 1.25rem;border:1px solid transparent;height:38px;line-height:1}.sidebar-container.collapsed .sidebar-logo{display:inline-flex!important}.sidebar-expand-button{display:none!important}.sidebar-nav-link{font-size:1.125rem!important;padding:.75rem 1rem!important}.sidebar-nav-subitem .sidebar-nav-link{font-size:1rem!important;padding:.625rem .875rem!important}.sidebar-secondary-links .sidebar-icon-link svg{width:24px!important;height:24px!important}body:not(.sidebar-collapsed) .content,body:not(.sidebar-collapsed) .page,body:not(.sidebar-collapsed) .sidebar-toggle,body:not(.sidebar-collapsed) .sidebar-logo,body:not(.sidebar-collapsed) .back-to-top-container{transform:translate(80vw);transition:transform .4s cubic-bezier(.4,0,.2,1)}body:not(.sidebar-collapsed) .content,body:not(.sidebar-collapsed) .content *{pointer-events:none}body:not(.sidebar-collapsed) .sidebar,body:not(.sidebar-collapsed) .sidebar *,body:not(.sidebar-collapsed) .sidebar-toggle,body:not(.sidebar-collapsed) .sidebar-logo{pointer-events:auto}body:not(.sidebar-collapsed):before{content:"";position:fixed;top:0;left:80vw;right:0;bottom:0;background-color:#00000080;z-index:1000;pointer-events:none}.content,.page,.sidebar-toggle,.sidebar-logo{transition:transform .3s ease}.content,body.sidebar-collapsed .content{margin-left:0!important}.content-inner{width:100vw;max-width:100vw;margin-left:0;margin-right:0;padding:calc(var(--space-page-y) + 3rem) 24px var(--space-page-y) 24px!important}.section{padding:0!important}.hero{padding-left:0!important;padding-right:0!important}.hero-grid{max-width:100%!important;margin-left:0!important;margin-right:0!important;padding-left:0!important;padding-right:0!important}.hero-main,.hero-side-column,.hero-text,.hero-media{padding-left:0!important;padding-right:0!important}.sidebar-toggle:hover{color:inherit!important}.sidebar-toggle:hover:before{opacity:0!important}.sidebar-logo:hover,.sidebar-logo:focus,.sidebar-logo:active{color:var(--text-primary)!important}.sidebar-nav-item:hover .sidebar-nav-link,[data-theme=dark] .sidebar-nav-item:hover .sidebar-nav-link,.sidebar-nav-subitem:hover .sidebar-nav-link,[data-theme=dark] .sidebar-nav-subitem:hover .sidebar-nav-link{background-color:transparent!important}.sidebar-nav-subitem .sidebar-nav-link:hover,[data-theme=dark] .sidebar-nav-subitem .sidebar-nav-link:hover,.sidebar-nav-link:hover,[data-theme=dark] .sidebar-nav-link:hover{color:var(--text-primary)!important;background-color:transparent!important}.sidebar-nav-sublink:hover,.sidebar-icon-link:hover{color:var(--text-muted)!important;background-color:transparent!important}.sidebar-close-button:hover{background-color:var(--bg-page)!important}.sidebar-expand-button:hover{color:var(--text-muted)!important;background-color:transparent!important}.sidebar-expand-button:hover:before{opacity:0!important}.sidebar-icon-link:hover:before{opacity:0!important}.sidebar-toggle:hover:after{opacity:0!important}.language-toggle-button:hover,[data-theme=light] .language-toggle-button:hover{box-shadow:none!important}.language-toggle-wrapper:hover:before{opacity:0!important}.language-toggle-button:hover{color:inherit!important}.language-toggle-button:hover:before{background-color:transparent!important}.language-toggle-option:hover{background-color:transparent!important}.back-to-top-button:hover:before{background:transparent!important}.back-to-top-button:hover:after{opacity:0!important}[data-theme=light] .back-to-top-button:hover:after{opacity:0!important}.theme-toggle:hover,[data-theme=light] .theme-toggle:hover{box-shadow:none!important}.theme-toggle-button:hover{color:inherit!important}.theme-toggle-button:hover:before{opacity:0!important}.footer-link:hover{color:inherit!important}a:hover{color:inherit!important;text-decoration:none!important}.hero-media-image:hover{transform:none!important}.btn-primary:hover{background-color:var(--accent)!important;color:#fff!important}.btn-secondary:hover{border-color:var(--border-subtle)!important;background-color:transparent!important}.btn-primary:hover:after{opacity:0!important}.btn-secondary:hover:after{opacity:0!important}.hero-card:hover,[data-theme=dark] .hero-card:hover{box-shadow:none!important}.hero-card-image:hover{transform:none!important}.hero-focus-trigger:hover{background-color:transparent!important}.hero-focus-link:hover{color:inherit!important;text-decoration:none!important}.overview-card:hover,[data-theme=dark] .overview-card:hover{box-shadow:none!important}.overview-card-image:hover{transform:none!important}.accordion-trigger:hover,[data-theme=dark] .accordion-trigger:hover{background-color:transparent!important}.portfolio-card:hover{transform:none!important;box-shadow:none!important}[data-theme=dark] .portfolio-card:hover{box-shadow:none!important}.portfolio-card-image:hover{transform:none!important}.portfolio-client-link:hover{color:inherit!important;text-decoration:none!important}.portfolio-cta:hover{color:inherit!important;text-decoration:none!important;border-color:var(--border-subtle)!important}.portfolio-cta:hover:after{opacity:0!important}.portfolio-hero-card:hover{transform:none!important;box-shadow:none!important}.portfolio-hero-card:hover .portfolio-hero-card-media,.portfolio-hero-card:hover .portfolio-hero-card-image,.portfolio-hero-card-cta:hover .btn-arrow-icon,.btn-secondary:hover .btn-arrow-icon{transform:none!important}.portfolio-visit-website-link:hover,.portfolio-hero-description a:hover,.portfolio-project-detail-link:hover{color:inherit!important;text-decoration:none!important}.portfolio-tab-button:hover{color:inherit!important;background-color:transparent!important}.portfolio-skill-chip:hover{transform:none!important}.portfolio-secondary-card:hover{transform:none!important;box-shadow:none!important}.portfolio-secondary-card:hover .portfolio-secondary-card-media,.portfolio-secondary-card:hover .portfolio-secondary-card-image{transform:none!important}.portfolio-secondary-detail-link:hover{color:inherit!important}.portfolio-secondary-card-placeholder:hover{transform:none!important;box-shadow:none!important}.case-study-back-link:hover{color:inherit!important;border-color:var(--border-subtle)!important;text-decoration:none!important}.case-study-back-link:hover:after{opacity:0!important}.case-study-breadcrumbs a:hover{color:inherit!important}.footer{max-width:100%!important;padding-left:0!important;padding-right:0!important}.footer-row:first-child{flex-direction:row!important;justify-content:space-between!important;width:100%!important;align-items:center!important}.footer-row:first-child .footer-left{flex:0 0 auto!important;width:auto!important}.footer-row:first-child .footer-right{flex:0 0 auto!important;width:auto!important;margin-left:auto!important;display:flex!important;justify-content:flex-end!important}.footer-row:last-child{flex-direction:column!important;gap:1rem!important;align-items:flex-start!important}.footer-row:last-child .footer-right{order:2!important}.footer-row:last-child .footer-left{order:1!important}.footer-links{text-align:left!important}.btn-primary,.btn-secondary{text-align:center!important;display:flex!important;align-items:center!important;justify-content:center!important}}@media (min-width: 769px){.sidebar-logo{display:block!important}.sidebar-container:not(.collapsed) .sidebar-logo{display:block!important}.sidebar-nav-link,.sidebar-nav-subitem .sidebar-nav-link{font-size:.9375rem!important;padding:.5rem .75rem!important}.sidebar-secondary-links .sidebar-icon-link svg{width:20px!important;height:20px!important}body:not(.sidebar-collapsed) .content,body:not(.sidebar-collapsed) .page,body:not(.sidebar-collapsed) .sidebar-toggle,body:not(.sidebar-collapsed) .sidebar-logo,body:not(.sidebar-collapsed) .back-to-top-container{transform:none!important}}.sidebar-expand-button:hover{color:var(--text-muted);background-color:var(--accent-soft)}.sidebar-expand-button svg{width:20px;height:20px}.sidebar-expand-button .badge-info-filled path{fill:currentColor}[data-theme=dark] .sidebar-expand-button .badge-info-filled line{stroke:var(--bg-page)}@media (min-width: 769px){.sidebar-expand-button:before{content:attr(data-tooltip);position:fixed;left:24px;bottom:calc(2rem + 32px);padding:.5rem .75rem;background-color:var(--text-primary);color:var(--bg-surface);font-size:.75rem;font-weight:400;white-space:nowrap;border-radius:var(--radius-md);opacity:0;pointer-events:none;transition:opacity .1s;z-index:1001!important}.sidebar-expand-button:hover:before{opacity:1;transition-delay:.5s}[data-theme=dark] .sidebar-expand-button:before{background-color:var(--text-primary);color:var(--bg-surface)}}.icon-filled{stroke-width:2.2}.icon-filled rect{fill:currentColor;stroke:currentColor}.icon-filled path,.icon-filled circle{fill:none!important;stroke:var(--bg-page)!important;stroke-width:2.5!important}@media (min-width: 769px){.sidebar-icon-link:before{content:attr(data-tooltip);position:absolute;left:100%;margin-left:.75rem;padding:.5rem .75rem;background-color:var(--text-primary);color:var(--bg-surface);font-size:.75rem;font-weight:400;white-space:nowrap;border-radius:var(--radius-md);opacity:0;pointer-events:none;transition:opacity .1s;z-index:1000}.sidebar-icon-link:hover:before{opacity:1;transition-delay:.5s}.sidebar-toggle{position:relative}.sidebar-toggle:after{content:attr(data-tooltip);position:absolute;left:100%;margin-left:.75rem;padding:.5rem .75rem;background-color:var(--text-primary);color:var(--bg-surface);font-size:.75rem;font-weight:400;white-space:nowrap;border-radius:var(--radius-md);opacity:0;pointer-events:none;transition:opacity .1s;z-index:1000;top:50%;transform:translateY(-50%)}.sidebar-toggle:hover:after{opacity:1;transition-delay:.5s}[data-theme=dark] .sidebar-icon-link:before,[data-theme=dark] .sidebar-toggle:after,[data-theme=dark] .sidebar-expand-button:before{background-color:var(--text-primary);color:var(--bg-surface)}[data-theme=dark] .sidebar-toggle:after{background-color:var(--text-primary);color:var(--bg-surface)}}.language-toggle-wrapper{position:relative;overflow:visible}.language-toggle-button{transition:all .2s,box-shadow .2s}.language-toggle-button:hover{box-shadow:0 0 16px #3b3fff33,0 0 16px #c6438033,0 0 16px #ffc04333}[data-theme=light] .language-toggle-button:hover{box-shadow:0 0 16px #2563eb40,0 0 16px #a855f740,0 0 16px #fb923c40}@media (min-width: 769px){.language-toggle-wrapper:before{content:attr(data-tooltip);position:absolute;left:50%;bottom:calc(100% + .5rem);transform:translate(-50%);padding:.5rem .75rem;background-color:var(--text-primary);color:var(--bg-surface);font-size:.75rem;font-weight:400;white-space:nowrap;border-radius:var(--radius-md);opacity:0;pointer-events:none;transition:opacity .1s;z-index:1000}.language-toggle-wrapper:hover:before{opacity:1;transition-delay:.5s}[data-theme=dark] .language-toggle-wrapper:before{background-color:var(--text-primary);color:var(--bg-surface)}}.language-toggle-button{appearance:none;background-color:var(--bg-page);border:1px solid var(--border-subtle);border-radius:999px;padding:4px;font-size:.875rem;font-weight:500;color:var(--text-primary);cursor:pointer;transition:all .2s;display:inline-flex;align-items:center;gap:.75rem;width:fit-content;min-width:fit-content;height:40px;position:relative}.language-toggle-button:before{content:"";position:absolute;inset:4px;background-color:var(--accent-soft);border-radius:999px;z-index:0}.language-toggle-button:hover{color:var(--text-primary)}.language-toggle-button:hover:before{background-color:var(--accent-soft)}.language-toggle-button:focus{outline:2px solid var(--accent);outline-offset:2px}.language-toggle-globe{width:16px;height:16px;flex-shrink:0;color:var(--accent);transition:color .2s;position:relative;z-index:1;margin-left:.5rem}.language-toggle-text{display:flex;align-items:center;position:relative;z-index:1;margin-right:.5rem}.language-toggle-button{padding-left:.5rem;padding-right:.5rem}.language-name{color:var(--text-muted);opacity:.7;font-weight:400;font-size:.875rem}.language-toggle-dropdown{position:absolute;bottom:calc(100% + .5rem);left:0;background-color:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:8px;padding:.25rem;display:none;flex-direction:column;gap:.125rem;box-shadow:0 -4px 6px -1px #0000001a,0 -2px 4px -1px #0000000f;z-index:1000;min-width:140px;align-items:flex-start}[data-theme=dark] .language-toggle-dropdown{box-shadow:0 -4px 6px -1px #0000004d,0 -2px 4px -1px #0003}.language-toggle-dropdown.open{display:flex}.language-toggle-option{appearance:none;background:none;border:none;padding:.5rem .75rem;font-size:.875rem;text-align:left;cursor:pointer;border-radius:6px;display:flex;align-items:center;justify-content:flex-start;gap:.75rem;color:var(--text-primary);transition:background-color .2s;width:100%}.language-toggle-option:hover,.language-toggle-option.active{background-color:var(--accent-soft)}.language-toggle-option.active .language-code{color:var(--accent);font-weight:600}.language-toggle-option:focus{outline:2px solid var(--accent);outline-offset:-2px}.language-toggle-option .language-code{color:var(--text-primary);font-weight:500}.language-toggle-option .language-name{color:var(--text-muted);font-weight:400}.back-to-top-container{position:fixed;bottom:1.5rem;left:50vw;transform:translate(-50%);z-index:1000;opacity:0;pointer-events:none;transition:opacity .25s ease}.back-to-top-container.visible{opacity:1;pointer-events:auto}.back-to-top-button{width:44px;height:44px;border-radius:50%;background:var(--bg-page);border:1px solid var(--border-subtle);padding:4px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background-color .2s,border-color .2s;position:relative}.back-to-top-button:before{content:"";position:absolute;inset:4px;background:var(--bg-surface);border-radius:50%;z-index:0}.back-to-top-button:after{content:"";position:absolute;inset:-2px;background:linear-gradient(90deg,#3b3fff8c,#c643808c,#ffc0438c);border-radius:50%;filter:blur(12px);opacity:0;z-index:-1;transition:opacity .2s}[data-theme=light] .back-to-top-button:after{background:linear-gradient(90deg,#2563eba6,#a855f7a6,#fb923ca6);filter:blur(12px)}.back-to-top-button:hover:before{background:var(--accent-soft)}.back-to-top-button:hover:after{opacity:.75}[data-theme=light] .back-to-top-button:hover:after{opacity:.8}.back-to-top-button svg{width:20px;height:20px;stroke:var(--accent);color:var(--accent);position:relative;z-index:1}@media (max-width: 768px){.back-to-top-container{bottom:1rem}}.theme-toggle{display:inline-flex;background-color:var(--bg-page);border:1px solid var(--border-subtle);border-radius:999px;padding:4px;gap:4px;width:fit-content;position:relative;overflow:visible;transition:box-shadow .2s}.theme-toggle:hover{box-shadow:0 0 16px #3b3fff33,0 0 16px #c6438033,0 0 16px #ffc04333}[data-theme=light] .theme-toggle:hover{box-shadow:0 0 16px #2563eb40,0 0 16px #a855f740,0 0 16px #fb923c40}.theme-toggle-button{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;background:transparent;border-radius:50%;cursor:pointer;color:var(--text-muted);transition:all .2s;padding:0;flex-shrink:0;position:relative}.theme-toggle-button:hover{color:var(--text-primary)}.theme-toggle-button:focus{outline:2px solid var(--accent);outline-offset:2px}.theme-toggle-button.active{background-color:var(--accent-soft);color:var(--accent)}@media (min-width: 769px){.theme-toggle-button:before{content:attr(data-tooltip);position:absolute;left:50%;bottom:calc(100% + .5rem);transform:translate(-50%);padding:.5rem .75rem;background-color:var(--text-primary);color:var(--bg-surface);font-size:.75rem;font-weight:400;white-space:nowrap;border-radius:var(--radius-md);opacity:0;pointer-events:none;transition:opacity .1s;z-index:1000}.theme-toggle-button:hover:before{opacity:1;transition-delay:.5s}[data-theme=dark] .theme-toggle-button:before{background-color:var(--text-primary);color:var(--bg-surface)}}.theme-toggle-button svg{width:16px;height:16px;stroke-width:2}.content{margin-left:var(--sidebar-width);flex:1;min-height:100vh;display:flex;flex-direction:column;transition:margin-left .3s ease;overflow:visible}body.sidebar-collapsed .content{margin-left:80px}.content-inner{max-width:var(--content-width);width:100%;margin:0 auto;padding:calc(var(--space-page-y) + 3rem) var(--space-page-x) var(--space-page-y);flex:1;overflow:visible}.footer{margin-top:auto;padding:2rem var(--space-page-x);border-top:1px solid var(--border-subtle);background-color:var(--bg-page);display:flex;flex-direction:column;gap:2rem;width:100%;max-width:var(--content-width);margin-left:auto;margin-right:auto;box-sizing:border-box;overflow:visible}.footer-row{display:flex;justify-content:space-between;align-items:flex-start;width:100%;gap:4rem;min-width:0;overflow:visible}.footer-left{display:flex;align-items:center;flex-shrink:0}.footer-copyright{font-size:1rem;font-weight:600;color:var(--text-primary);text-align:left;margin:0;white-space:nowrap}.footer-links{font-size:.875rem;color:var(--text-muted);text-align:right;margin:0;min-width:0;max-width:100%;word-wrap:break-word;overflow-wrap:break-word;box-sizing:border-box;width:100%}.footer-right{display:flex;align-items:center;gap:1.5rem;flex:1;min-width:0;max-width:100%;justify-content:flex-end;overflow:visible;position:relative}.footer-link{color:var(--text-muted);text-decoration:none;transition:color .2s}.footer-link:hover{color:var(--accent-text)}h1{font-size:2.5rem;font-weight:700;line-height:1.2;margin-bottom:1.5rem;color:var(--text-primary)}h2{font-size:1.875rem;font-weight:600;line-height:1.3;margin-top:3rem;margin-bottom:1.5rem;color:var(--text-primary)}h3{font-size:1.25rem;font-weight:600;line-height:1.4;margin-top:2rem;margin-bottom:1rem;color:var(--text-primary)}p{margin-bottom:1rem;color:var(--text-primary)}a{color:var(--accent-text);text-decoration:none;transition:color .2s}a:hover{color:var(--accent-text);text-decoration:underline}ul{list-style:none;margin-bottom:1rem}ul li{margin-bottom:.5rem;padding-left:0}.hero{margin-bottom:4rem;min-height:80vh;padding:var(--space-page-y) 0 calc(var(--space-page-y) + 1rem);display:flex;align-items:flex-start;overflow:visible;border-bottom:1px solid var(--border-subtle)}.hero-grid{display:grid;grid-template-columns:2fr 1fr;gap:2rem;max-width:var(--content-width);margin:0 auto;padding:0 var(--space-page-x);height:100%;align-items:start}.hero-main{position:sticky;top:var(--space-page-y);align-self:stretch;height:80vh;display:flex;flex-direction:column}.hero-side-column{display:flex;flex-direction:column;justify-content:space-between;min-height:80vh}.hero-media{flex:1;display:flex;min-height:0;margin-bottom:2rem;overflow:hidden;border-radius:8px;position:relative}.hero-media-image{width:100%;height:100%;object-fit:cover;border-radius:8px;transition:transform .6s cubic-bezier(.25,.1,.25,1)}.hero-media-image:hover{transform:scale(1.05)}.hero-media-placeholder{width:100%;height:100%;border-radius:8px;background:linear-gradient(135deg,#667eea,#764ba2,#f093fb);background-size:200% 200%;animation:gradientShift 8s ease infinite;position:relative;display:flex;align-items:center;justify-content:center}@keyframes gradientShift{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}@keyframes imageSlide{0%{object-position:center top}to{object-position:center bottom}}@keyframes imageSlideHorizontal{0%{transform:scale(1.2);object-position:left center}33%{transform:scale(1.2);object-position:left center}66%{transform:scale(1.2);object-position:right center}to{transform:scale(1);object-position:right center}}@keyframes imageSlideVertical{0%{transform:scale(1.2);object-position:center top}33%{transform:scale(1.2);object-position:center top}66%{transform:scale(1.2);object-position:center bottom}to{transform:scale(1);object-position:center bottom}}.image-with-gradient-border{padding:16px;background:linear-gradient(135deg,#e0f2fe,#ede9fe,#fae8ff);background-size:200% 200%;animation:gradientShift 8s ease infinite;overflow:hidden}[data-theme=dark] .image-with-gradient-border{background:linear-gradient(135deg,#1e3a8a99,#4c1d9599,#701a7599);background-size:200% 200%}.image-with-gradient-border img{border-radius:4px}.image-with-gradient-border.no-padding{padding:0}.image-with-gradient-border.no-padding img{border-radius:8px}.image-with-gradient-border.gradient-blue{background:linear-gradient(135deg,#dbeafe,#bfdbfe,#93c5fd)}[data-theme=dark] .image-with-gradient-border.gradient-blue{background:linear-gradient(135deg,#1e3a8a99,#3b82f699,#60a5fa99)}.image-with-gradient-border.gradient-blue-alt{background:linear-gradient(135deg,#00c8ff59,#38dcff59,#78f0ff59);background-size:200% 200%;animation:gradientShift 8s ease infinite}[data-theme=dark] .image-with-gradient-border.gradient-blue-alt{background:linear-gradient(135deg,#00c8ff59,#38dcff59,#78f0ff59);background-size:200% 200%}.overview-card-media.gradient-blue{background:linear-gradient(135deg,#bfdbfe4d,#93c5fd4d,#d8b4fe4d);background-size:200% 200%;animation:gradientShift 8s ease infinite}[data-theme=dark] .overview-card-media.gradient-blue{background:linear-gradient(135deg,#3b82f633,#6d28d933 50% 100%);background-size:200% 200%}.overview-card-media.gradient-green{background:linear-gradient(135deg,#ec489940,#fb718540,#fb923c40);background-size:200% 200%;animation:gradientShift 8s ease infinite}[data-theme=dark] .overview-card-media.gradient-green{background:linear-gradient(135deg,#ec489926,#db277726,#ea580c26);background-size:200% 200%}@keyframes skeletonShimmer{0%{background-position:-200% 0}to{background-position:200% 0}}[data-theme=dark] .hero-media-placeholder{background:linear-gradient(135deg,#1e3a8a,#7c3aed,#ec4899);background-size:200% 200%}.hero-media-text{position:absolute;bottom:1.5rem;left:1.5rem;right:1.5rem;font-size:clamp(2rem,5vw,3.5rem);font-weight:700;color:#fff;text-align:left;line-height:1.2;text-shadow:0 2px 12px rgba(0,0,0,.4);z-index:1;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;max-height:2.4em}.hero-text{flex-shrink:0}.hero-kicker{font-size:.875rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:1rem}.hero-intro{font-size:1.125rem;line-height:1.7;color:var(--text-primary);margin-bottom:2rem}.hero-actions{display:flex;gap:1.5rem;margin-top:2rem}.btn-primary,.btn-secondary{color:var(--text-primary);text-decoration:none;font-weight:500;padding:.75rem 1.5rem;border-radius:999px;transition:all .2s,box-shadow .2s;display:inline-flex;align-items:center;position:relative;z-index:0}.btn-primary{background-color:var(--accent);color:#fff}[data-theme=dark] .btn-primary{color:#111827}.btn-primary:hover{background-color:#0199c4;color:#fff;text-decoration:none;transform:translateY(-1px)}.btn-secondary{border:1px solid var(--border-subtle);background-color:var(--bg-page)}.btn-secondary:hover{border-color:var(--accent);text-decoration:none;background-color:var(--bg-page)}.btn-primary:after{content:"";position:absolute;inset:-4px;background:linear-gradient(90deg,#3b3fff8c,#c643808c,#ffc0438c);border-radius:999px;filter:blur(16px);opacity:0;z-index:-1;transition:opacity .2s;pointer-events:none}[data-theme=light] .btn-primary:after{background:linear-gradient(90deg,#2563eba6,#a855f7a6,#fb923ca6)}.btn-primary:hover:after{opacity:1}.btn-secondary:after{content:"";position:absolute;inset:-4px;background:linear-gradient(90deg,#3b3fff8c,#c643808c,#ffc0438c);border-radius:999px;filter:blur(16px);opacity:0;z-index:-1;transition:opacity .2s;pointer-events:none}[data-theme=light] .btn-secondary:after{background:linear-gradient(90deg,#2563eba6,#a855f7a6,#fb923ca6)}.btn-secondary:hover:after{opacity:.2}.hero-side{display:flex;flex-direction:column;gap:1rem}.hero-card{background-color:var(--bg-surface);border:none;border-radius:var(--radius-md);overflow:hidden;transition:all .2s}.hero-card:hover{box-shadow:0 4px 12px #0000000d}[data-theme=dark] .hero-card:hover{box-shadow:0 4px 12px #0000004d}.hero-card-media{width:100%;aspect-ratio:1 / 1;border-radius:8px;background:linear-gradient(135deg,#dbeafe,#e0e7ff,#f3e8ff);background-size:200% 200%;animation:gradientShift 12s ease infinite;overflow:hidden}[data-theme=dark] .hero-card-media{background:transparent}.hero-card-image{width:100%;height:100%;object-fit:cover;border-radius:8px;transition:transform .6s cubic-bezier(.25,.1,.25,1)}[data-theme=dark] .hero-card-image{filter:invert(1)!important;mix-blend-mode:screen!important}.hero-card-image:hover{transform:scale(1.05)}.hero-card-body{padding:1.5rem}.hero-card-body h3{font-size:1.25rem;font-weight:600;margin-bottom:.75rem;margin-top:0;color:var(--text-primary)}.hero-card-body p{font-size:.9375rem;line-height:1.6;color:var(--text-muted);margin-bottom:0}.hero-focus-accordion{display:flex;flex-direction:column;gap:1rem;position:sticky;top:var(--space-page-y);align-self:start;height:fit-content}.hero-focus-item{background-color:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-md);overflow:hidden;transition:all .3s ease}.hero-focus-item[data-open=true]{border-color:var(--accent);box-shadow:0 4px 12px #01b1e21a}.hero-focus-trigger{width:100%;display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.5rem;background:transparent;border:none;text-align:left;cursor:pointer;transition:background-color .2s;color:var(--text-primary)}.hero-focus-trigger:hover{background-color:var(--accent-soft)}.hero-focus-trigger:focus{outline:2px solid var(--accent);outline-offset:-2px}.hero-focus-header{flex:1;display:flex;flex-direction:column;gap:.25rem}.hero-focus-label{font-size:1.125rem;font-weight:600;margin:0;color:var(--text-primary)}.hero-focus-category{font-size:.8125rem;color:var(--text-muted);font-weight:400}.hero-focus-icon{flex-shrink:0;transition:transform .3s ease;color:var(--text-muted)}.hero-focus-item[data-open=true] .hero-focus-icon{transform:rotate(180deg);color:var(--accent)}.hero-focus-content{max-height:0;overflow:hidden;transition:max-height .4s ease}.hero-focus-content[hidden]{display:block}.hero-focus-visual{width:100%;margin-bottom:1rem}.hero-focus-placeholder{width:100%;aspect-ratio:4 / 3;border-radius:var(--radius-md);background:linear-gradient(135deg,#667eea,#764ba2,#f093fb);background-size:200% 200%;animation:gradientShift 8s ease infinite}[data-theme=dark] .hero-focus-placeholder{background:linear-gradient(135deg,#1e3a8a,#7c3aed,#ec4899);background-size:200% 200%}.hero-focus-description{font-size:.9375rem;line-height:1.6;color:var(--text-primary);margin:0 1.5rem 1rem}.hero-focus-link{display:inline-block;color:var(--accent);text-decoration:none;font-size:.875rem;font-weight:500;margin:0 1.5rem 1.5rem;transition:color .2s}.hero-focus-link:hover{color:var(--accent-text);text-decoration:underline}@media (max-width: 1024px){.hero-grid{grid-template-columns:1fr}.hero-focus-accordion{position:static;margin-top:2rem}}@media (max-width: 768px){.hero-focus-trigger{padding:1rem 1.25rem}.hero-focus-label{font-size:1rem}.hero-focus-category{font-size:.75rem}.hero-focus-description{margin:0 1.25rem 1rem;font-size:.875rem}.hero-focus-link{margin:0 1.25rem 1.25rem}}.overview{margin-bottom:6rem;max-width:var(--content-width);margin-left:auto;margin-right:auto;padding:0 var(--space-page-x)}.overview h2{padding:0}#overview{container-type:inline-size;container-name:overview-section}.overview-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem;padding:0}.overview-card{background-color:var(--bg-surface);border:none;border-radius:var(--radius-md);overflow:hidden;transition:all .2s;display:flex;flex-direction:column}.overview-card:hover{box-shadow:0 4px 12px #0000000d}[data-theme=dark] .overview-card:hover{box-shadow:0 4px 12px #0000004d}.overview-card-media{width:100%;aspect-ratio:16 / 9;border-radius:8px;background:linear-gradient(135deg,#dbeafe,#e0e7ff,#f3e8ff);background-size:200% 200%;animation:gradientShift 12s ease infinite;overflow:hidden}[data-theme=dark] .overview-card-media{background:linear-gradient(135deg,#1e293b,#312e81,#581c87);background-size:200% 200%}.overview-card-image{width:100%;height:100%;object-fit:cover;border-radius:8px;transition:transform .6s cubic-bezier(.25,.1,.25,1)}[data-theme=dark] .overview-card-image{filter:brightness(2) contrast(1.2) invert(.9)}.overview-card-image:hover{transform:scale(1.05)}.overview-card-body{padding:2rem;display:flex;flex-direction:column}.overview-card-body h3{font-size:1.25rem;font-weight:600;margin-bottom:1rem;margin-top:0;color:var(--text-primary)}.overview-card-body p{font-size:.9375rem;line-height:1.7;color:var(--text-primary);margin-bottom:1rem}.accordion{margin-top:1rem}.accordion-item{margin-bottom:0}.accordion-divider{height:1px;background-color:var(--border-subtle);margin:.75rem 0}.accordion-trigger{width:100%;text-align:left;background:none;border:none;padding:.5rem;margin:0;cursor:pointer;font-size:.9375rem;line-height:1.7;color:var(--text-primary);font-weight:600;transition:background-color .2s ease;display:flex;align-items:center;justify-content:space-between;gap:.75rem;border-radius:var(--radius-lg);overflow:hidden}.accordion-trigger:hover{background-color:#00000005}[data-theme=dark] .accordion-trigger:hover{background-color:#ffffff08}.accordion-trigger .how-i-work-icon{flex-shrink:0;width:18px;height:18px;color:var(--text-muted)}.accordion-trigger strong{font-weight:600;flex:1;text-align:left}.accordion-chevron{flex-shrink:0;width:16px;height:16px;color:var(--text-muted);transition:transform .3s ease,color .2s}.accordion-trigger[aria-expanded=true] .accordion-chevron{transform:rotate(180deg);color:var(--text-primary)}.accordion-content{overflow:hidden;transition:max-height .3s ease,opacity .3s ease,margin-top .3s ease;max-height:0;opacity:0;margin-top:0}.accordion-content.open{max-height:500px;opacity:1;margin-top:.5rem}.accordion-content p{margin-bottom:0;font-weight:400}.overview-card-body ul{margin-top:1rem}.overview-card-body ul li{font-size:.9375rem;line-height:1.7;color:var(--text-primary);margin-bottom:.75rem}.how-i-work-list{margin-top:1rem}.how-i-work-item{display:flex;gap:.75rem;margin-bottom:1.5rem;align-items:flex-start}.how-i-work-item:last-child{margin-bottom:0}.how-i-work-icon{flex-shrink:0;width:18px;height:18px;color:var(--text-muted);margin-top:.125rem}.how-i-work-content{flex:1;min-width:0}.how-i-work-title{display:block;font-size:.9375rem;font-weight:600;line-height:1.5;color:var(--text-primary);margin-bottom:.25rem}.how-i-work-text{font-size:.9375rem;line-height:1.7;color:var(--text-primary);margin:0}.snapshot-cv-trigger{margin-top:1.5rem;border:none;cursor:pointer;width:auto;align-self:flex-start;padding:.75rem 1.5rem;font-size:1rem;font-family:inherit;font-weight:500;display:inline-flex;align-items:center;border-radius:999px;line-height:1.5;min-height:52px;box-sizing:border-box}.section{margin-bottom:4rem;max-width:var(--content-width);margin-left:auto;margin-right:auto;padding:0 var(--space-page-x)}.section.case-study-section{max-width:1000px}.section-intro{max-width:750px;font-size:1.125rem;line-height:1.7;color:var(--text-primary);margin-bottom:2rem}.home-contact-cta{margin-top:3rem;margin-bottom:5rem}.home-contact-cta-card{width:100%;min-height:40vh;border-radius:var(--radius-lg);background-color:var(--bg-surface);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:3rem 1.5rem}.home-contact-cta-title{font-size:clamp(2rem,3.5vw,3rem);font-weight:600;letter-spacing:-.02em;margin-bottom:1.5rem}.home-contact-cta-button{margin-top:.75rem;border-radius:999px}[data-theme=light] .home-contact-cta-card{background-color:#f1f5f9}[data-theme=dark] .home-contact-cta-card{background-color:#111827}#now{display:none}.portfolio-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:3rem;padding:0}.portfolio-card{background-color:var(--bg-surface);border:none;border-radius:var(--radius-md);overflow:hidden;transition:all .3s ease;display:flex;flex-direction:column}.portfolio-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px #0000001a}[data-theme=dark] .portfolio-card:hover{box-shadow:0 8px 24px #0006}.portfolio-card-media{width:100%;aspect-ratio:16 / 9;border-radius:8px;background:linear-gradient(135deg,#dbeafe,#e0e7ff,#f3e8ff);background-size:200% 200%;animation:gradientShift 12s ease infinite;margin-bottom:1.5rem;overflow:hidden}[data-theme=dark] .portfolio-card-media{background:linear-gradient(135deg,#1e293b,#312e81,#581c87);background-size:200% 200%}.portfolio-card-media.gradient-blue-alt{background:linear-gradient(135deg,#00c8ff59,#38dcff59,#78f0ff59);background-size:200% 200%;animation:gradientShift 8s ease infinite}[data-theme=dark] .portfolio-card-media.gradient-blue-alt{background:linear-gradient(135deg,#00c8ff59,#38dcff59,#78f0ff59);background-size:200% 200%}.portfolio-card-image{width:100%;height:100%;object-fit:cover;border-radius:8px;transition:transform .6s cubic-bezier(.25,.1,.25,1)}.portfolio-card-image:hover{transform:scale(1.05)}.portfolio-card-image.kanzlei21-featured-image{width:auto;height:100%;object-fit:contain;object-position:center;margin:0 auto;display:block}.portfolio-card-body{padding:0 2rem 2rem}.portfolio-card-body h3{font-size:1.5rem;font-weight:600;margin-bottom:.5rem;margin-top:0;color:var(--text-primary)}.portfolio-context{font-size:.875rem;color:var(--text-muted);margin-bottom:1rem;line-height:1.5}.portfolio-client{font-size:.9375rem;color:var(--text-muted);margin-bottom:1.25rem;line-height:1.6}.portfolio-client-link{color:var(--accent);text-decoration:underline;transition:color .2s}.portfolio-client-link:hover{color:var(--accent);text-decoration:underline}.portfolio-description{font-size:.9375rem;line-height:1.7;color:var(--text-primary);margin-bottom:1.5rem}.portfolio-cta{font-size:.9375rem;text-decoration:none;font-weight:500;transition:color .2s,border-color .2s,background-color .2s,transform .2s;display:inline-block;border:1px solid var(--border-subtle);background-color:var(--bg-page);border-radius:999px;padding:.75rem 1.5rem;color:var(--text-primary);position:relative;z-index:0}.portfolio-cta:hover{color:var(--text-primary);text-decoration:none;border-color:var(--accent);background-color:var(--bg-page)}.portfolio-cta:after{content:"";position:absolute;inset:-4px;background:linear-gradient(90deg,#3b3fff8c,#c643808c,#ffc0438c);border-radius:999px;filter:blur(16px);opacity:0;z-index:-1;transition:opacity .2s;pointer-events:none}[data-theme=light] .portfolio-cta:after{background:linear-gradient(90deg,#2563eba6,#a855f7a6,#fb923ca6)}.portfolio-cta:hover:after{opacity:.2}@media (max-width: 1024px){.hero{height:auto}.hero-grid{grid-template-columns:1fr;gap:3rem;height:auto}.hero-main{position:relative;top:0;height:auto}.hero-media{flex:none}.hero-media-image,.hero-media-placeholder{aspect-ratio:4 / 3;height:auto}.overview-grid{grid-template-columns:repeat(2,1fr)}.portfolio-grid{grid-template-columns:1fr;gap:2.5rem}}@container overview-section (max-width: 900px){.overview-grid{grid-template-columns:1fr}.overview-card{flex-direction:row;align-items:stretch}.overview-card-media{width:40%;flex-shrink:0;aspect-ratio:1 / 1;padding:40px 0}.overview-card-body{width:60%;flex:1}}@container overview-section (max-width: 700px){.overview-card{flex-direction:column}.overview-card-media{width:100%;aspect-ratio:16 / 9;padding:0}.overview-card-body{width:100%}}@media (max-width: 768px){.sidebar{position:relative;width:100%;height:auto;border-right:none;border-bottom:1px solid var(--border-subtle)}.content{margin-left:0}.footer{flex-direction:column;align-items:flex-start;gap:1.5rem}.footer-copyright,.footer-links{text-align:left}.footer-right{width:100%;justify-content:flex-start}:root{--space-page-x: 1.5rem;--space-page-y: 1.5rem}h1{font-size:2rem}h2{font-size:1.5rem}.hero{height:auto;min-height:auto;padding:var(--space-page-y) 0}.hero-grid{gap:2rem;height:auto}.hero-main{height:auto}.hero-media{flex:none;margin-bottom:2rem}.hero-media-image,.hero-media-placeholder{aspect-ratio:1 / 1;height:auto}.hero-media-text{font-size:2rem!important;text-align:left!important}.hero-side,.overview-grid{gap:1.5rem}#domains .overview-grid{grid-template-columns:1fr;gap:1.5rem}#domains .hero-card{display:flex;flex-direction:row;align-items:stretch;gap:1rem}#domains .hero-card-media{width:40%;flex-shrink:0;aspect-ratio:1 / 1}#domains .hero-card-body{width:60%;flex:1;padding:1rem;display:flex;flex-direction:column;justify-content:center}.hero-actions{flex-direction:column;gap:1rem}.btn-primary,.btn-secondary{width:100%;text-align:center}.portfolio-hero-card-body .btn-primary{width:auto}.portfolio-project-details-list{grid-template-columns:1fr;gap:.75rem}.portfolio-hero-card-media{height:200px}.portfolio-hero-card-header{flex-direction:column;align-items:flex-start;gap:1rem}.portfolio-hero-card-cta{align-self:stretch;justify-content:center}.portfolio-hero-card .portfolio-hero-card-header .portfolio-hero-card-cta{width:100%}}@media (max-width: 768px){.case-study-summary-cards{width:100%!important;max-width:100%!important;margin-left:0!important;margin-right:0!important}.case-study-summary-card{flex:1 1 100%!important;max-width:100%!important;min-width:0!important;width:100%!important}}.portfolio-subitem{opacity:0;transform:translateY(-6px) scale(.98);max-height:0;overflow:hidden;margin-left:.5rem;margin-top:0;margin-bottom:0;margin-right:0;padding-top:0;padding-bottom:0;transition:opacity .4s cubic-bezier(.25,.46,.45,.94),transform .4s cubic-bezier(.25,.46,.45,.94),max-height .45s cubic-bezier(.25,.46,.45,.94),margin-top .4s cubic-bezier(.25,.46,.45,.94),margin-bottom .4s cubic-bezier(.25,.46,.45,.94),padding-top .4s cubic-bezier(.25,.46,.45,.94),padding-bottom .4s cubic-bezier(.25,.46,.45,.94)}.portfolio-subitem.visible{opacity:1;transform:translateY(0) scale(1);max-height:200px;overflow:visible;transition:opacity .4s cubic-bezier(.25,.46,.45,.94),transform .4s cubic-bezier(.25,.46,.45,.94),max-height .45s cubic-bezier(.25,.46,.45,.94),overflow 0s,margin-top .4s cubic-bezier(.25,.46,.45,.94),margin-bottom .4s cubic-bezier(.25,.46,.45,.94),padding-top .4s cubic-bezier(.25,.46,.45,.94),padding-bottom .4s cubic-bezier(.25,.46,.45,.94)}.portfolio-subitem.closing{opacity:0!important;transform:translateY(-6px) scale(.98)!important;max-height:0!important;margin-top:0!important;margin-bottom:0!important;padding-top:0!important;padding-bottom:0!important;transition:opacity .4s cubic-bezier(.25,.46,.45,.94),transform .4s cubic-bezier(.25,.46,.45,.94),max-height .45s cubic-bezier(.25,.46,.45,.94),margin-top .4s cubic-bezier(.25,.46,.45,.94),margin-bottom .4s cubic-bezier(.25,.46,.45,.94),padding-top .4s cubic-bezier(.25,.46,.45,.94),padding-bottom .4s cubic-bezier(.25,.46,.45,.94)!important}.portfolio-intro-section{padding-top:2rem;margin-bottom:4rem}.portfolio-section{padding-top:0}.portfolio-intro{max-width:750px;font-size:1.125rem;line-height:1.7;color:var(--text-primary);margin-bottom:3rem;margin-top:1.5rem}.portfolio-domain-section{margin-bottom:4rem}.portfolio-domain-section:last-child{margin-bottom:0}.portfolio-domain-section h2{font-size:2rem;font-weight:600;margin-bottom:2rem;color:var(--text-primary)}.portfolio-domain-content{display:flex;flex-direction:column;gap:2rem;position:relative}.portfolio-card-hover-zone{position:absolute;pointer-events:auto;z-index:0;background:transparent}.portfolio-hero-cards{display:grid;grid-template-columns:1fr;gap:2rem}.portfolio-hero-card{background-color:var(--bg-surface);border-radius:var(--radius-md);border:1px solid var(--border-subtle);overflow:hidden;box-shadow:0 1px 3px #0000001a;transition:transform .2s ease,box-shadow .2s ease;display:flex;flex-direction:column;container-type:inline-size;container-name:card;position:relative;z-index:2;transform:translateY(0)}.portfolio-hero-card-collapsible{position:relative}.portfolio-hero-card-collapsible-content{max-height:0;overflow:hidden;opacity:0;transition:max-height .8s cubic-bezier(.25,.46,.45,.94),opacity .7s cubic-bezier(.25,.46,.45,.94),margin-top .7s cubic-bezier(.25,.46,.45,.94);margin-top:0}.portfolio-hero-card-open .portfolio-hero-card-collapsible-content{max-height:2000px;opacity:1;margin-top:0}.portfolio-hero-card-collapsible:not(.portfolio-hero-card-open) .portfolio-hero-card-collapsible-content{max-height:0!important;opacity:0!important;margin-top:0!important}.portfolio-hero-card-collapsible:not(.portfolio-hero-card-open) .portfolio-hero-card-body{padding-bottom:0;position:relative}.portfolio-hero-card-collapsible .portfolio-project-details{margin-bottom:1.5rem;transition:none}.portfolio-hero-card:hover{transform:translateY(-6px);box-shadow:0 4px 12px #00000026}.portfolio-hero-card:not(:hover){transform:translateY(0)}.portfolio-hero-card-media{width:100%;height:300px;background-color:var(--border-subtle);background:linear-gradient(135deg,#dbeafe,#e0e7ff,#f3e8ff);background-size:200% 200%;animation:gradientShift 12s ease infinite;flex-shrink:0;overflow:hidden;transition:transform .6s cubic-bezier(.25,.1,.25,1);position:relative;container-type:size;container-name:hero-card-media}.portfolio-hero-card-media:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#fff0,#ffffff4d,#fff0);background-size:200% 100%;animation:skeletonShimmer 2s ease-in-out infinite;pointer-events:none;z-index:0}.portfolio-hero-card:hover .portfolio-hero-card-media{transform:scale(1.05)}[data-theme=dark] .portfolio-hero-card-media{background:linear-gradient(135deg,#1e293b,#312e81,#581c87);background-size:200% 200%}[data-theme=dark] .portfolio-hero-card-media:before{background:linear-gradient(90deg,#fff0,#ffffff14,#fff0);background-size:200% 100%}.portfolio-hero-card-media.gradient-dark-blue-cyan{background:linear-gradient(135deg,#1e3a8a4d,#1e40af4d,#06b6d44d);background-size:200% 200%;animation:gradientShift 12s ease infinite}[data-theme=dark] .portfolio-hero-card-media.gradient-dark-blue-cyan{background:linear-gradient(135deg,#0f172a4d,#1e3a8a4d,#0891b24d);background-size:200% 200%}.portfolio-hero-card-image{width:100%;height:100%;object-fit:cover;position:relative;z-index:1;transform-origin:center center;animation:imageSlideVertical 20s ease-in-out infinite alternate}@container hero-card-media (max-aspect-ratio: 1){.portfolio-hero-card-image{animation:imageSlideHorizontal 20s ease-in-out infinite alternate}}.portfolio-hero-card:hover .portfolio-hero-card-image{transform:scale(1.05)}.portfolio-hero-card-body{padding:2rem 2rem 1rem;flex:1;display:flex;flex-direction:column;transition:padding-bottom .7s cubic-bezier(.25,.1,.25,1)}.portfolio-hero-card-body>*:last-child{margin-bottom:0}.portfolio-hero-card-header{display:flex;justify-content:space-between;align-items:center;gap:1.5rem;margin-bottom:1.5rem}.portfolio-hero-card-title-group{flex:1}.portfolio-hero-card-body h3{font-size:1.5rem;font-weight:600;margin-top:0;margin-bottom:.5rem;color:var(--text-primary)}.portfolio-hero-card-expand-btn{flex-shrink:0;margin-top:0;margin-bottom:2rem;align-self:flex-end;display:inline-flex;align-items:center;gap:.5rem}.portfolio-hero-card-expand-icon{width:16px;height:16px;transition:transform .2s}.portfolio-hero-card-expand-btn[aria-expanded=true] .portfolio-hero-card-expand-icon{transform:rotate(180deg)}.portfolio-hero-card-cta{flex-shrink:0;margin-top:0;align-self:start;display:inline-flex;align-items:center;gap:.5rem}.btn-arrow-icon{flex-shrink:0;transition:transform .2s ease;margin-left:.5rem;vertical-align:middle}.portfolio-hero-card-cta:hover .btn-arrow-icon,.btn-secondary:hover .btn-arrow-icon{transform:translate(2px)}@container card (min-width: 851px){.portfolio-hero-card{flex-direction:row}.portfolio-hero-card-media{width:300px;height:100%;min-height:400px}.portfolio-hero-card-body{flex:1;display:flex;flex-direction:column}}.portfolio-hero-card.card-horizontal{flex-direction:row}.portfolio-hero-card.card-horizontal .portfolio-hero-card-media{width:300px;height:100%;min-height:400px}.portfolio-hero-card.card-horizontal .portfolio-hero-card-body{flex:1;display:flex;flex-direction:column}.portfolio-hero-card.card-vertical{flex-direction:column}.portfolio-hero-card.card-vertical .portfolio-hero-card-media{width:100%;height:300px}.portfolio-hero-subtitle-row{display:flex;align-items:center;gap:1rem;margin-bottom:1.5rem;flex-wrap:wrap}.portfolio-hero-subtitle{font-size:1rem;color:var(--text-muted);margin:0;font-weight:500}.portfolio-visit-website-link{font-size:.9375rem;color:var(--accent-text);text-decoration:none;transition:color .2s;white-space:nowrap;display:inline-flex;align-items:center;gap:.375rem}.portfolio-visit-website-link:hover{color:var(--accent);text-decoration:underline}.portfolio-visit-website-icon{flex-shrink:0;opacity:.7}.portfolio-description-section{margin-bottom:1.5rem}.portfolio-description-title{font-size:1.125rem;font-weight:600;color:var(--text-primary);margin-bottom:.75rem;margin-top:0}.portfolio-hero-description{font-size:.9375rem;line-height:1.7;color:var(--text-primary);margin-bottom:0}.portfolio-hero-description strong{font-weight:600;color:var(--text-primary)}.portfolio-hero-description a{color:var(--accent-text);text-decoration:none;transition:color .2s}.portfolio-hero-description a:hover{color:var(--accent);text-decoration:underline}.portfolio-project-details{margin-bottom:1.5rem;transition:margin-bottom .7s cubic-bezier(.25,.1,.25,1)}.portfolio-project-details-list{display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem 2rem;font-size:.9375rem;line-height:1.6}.portfolio-project-detail-item{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.portfolio-project-detail-icon{flex-shrink:0;width:16px;height:16px;color:var(--text-muted)}.portfolio-project-detail-label{font-weight:500;color:var(--text-muted);font-size:.9375rem;flex-shrink:0}.portfolio-project-detail-value{color:var(--text-primary)}.portfolio-project-detail-link{color:var(--accent-text);text-decoration:none;transition:color .2s;word-break:break-all}.portfolio-project-detail-link:hover{color:var(--accent);text-decoration:underline}.portfolio-tabs-window{margin-bottom:0;background-color:var(--bg-surface);border-radius:var(--radius-md);overflow:hidden}.portfolio-tabs-header{display:flex;border-bottom:1px solid var(--border-subtle);background-color:var(--bg-subtle);overflow-x:auto;-webkit-overflow-scrolling:touch}.portfolio-tab-button{flex:0 0 auto;padding:.75rem 1.25rem;background:none;border:none;border-bottom:2px solid transparent;font-size:1.125rem;font-weight:500;color:var(--text-muted);cursor:pointer;transition:color .2s,border-color .2s,background-color .2s;white-space:nowrap;position:relative}.portfolio-tab-button:hover{color:var(--text-primary);background-color:var(--bg-surface)}.portfolio-tab-button.active{color:var(--text-primary);border-bottom-color:var(--accent);background-color:var(--bg-surface)}.portfolio-tabs-content{position:relative;min-height:200px}.portfolio-tab-panel{display:none;padding:1.5rem;animation:fadeIn .2s ease-in}.portfolio-tab-panel.active{display:block}@keyframes fadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.portfolio-tab-panel .accordion{margin-top:0}.portfolio-tab-panel .accordion-content p{margin-bottom:0}.portfolio-tab-panel .accordion-content strong{font-weight:600;color:var(--text-primary)}.portfolio-key-focus-text{font-size:1rem;line-height:1.6;color:var(--text-primary);font-weight:500;margin:0}.portfolio-skills-title{font-size:1.125rem;font-weight:600;color:var(--text-primary);margin-bottom:1rem;margin-top:0}.portfolio-skills-groups{display:flex;flex-direction:column;gap:1.5rem}.portfolio-skills-group{display:flex;flex-direction:column;gap:.75rem}.portfolio-skills-group-label{font-size:.875rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em}.portfolio-skills-chips{display:flex;flex-wrap:wrap;gap:.5rem}.portfolio-skill-chip{display:inline-block;padding:.375rem .75rem;border-radius:999px;font-size:.875rem;font-weight:500;line-height:1.4;transition:transform .2s,box-shadow .2s}.portfolio-skill-chip:hover{transform:translateY(-1px)}.portfolio-skill-chip-product{background-color:#2563eb1a;color:#2563ebe6}[data-theme=dark] .portfolio-skill-chip-product{background-color:#3b82f626;color:#93c5fdf2}.portfolio-skill-chip-technical{background-color:#1d4ed81f;color:#1d4ed8f2}[data-theme=dark] .portfolio-skill-chip-technical{background-color:#2563eb33;color:#60a5faf2}.portfolio-skill-chip-collaboration{background-color:#22c55e1a;color:#16a34ae6}[data-theme=dark] .portfolio-skill-chip-collaboration{background-color:#22c55e26;color:#86efacf2}.portfolio-hero-card-body .btn-primary{margin-top:1rem;display:inline-flex;width:auto;align-self:flex-start}.portfolio-secondary-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;align-items:start}.portfolio-secondary-card{background-color:var(--bg-surface);border-radius:var(--radius-md);overflow:hidden;box-shadow:0 1px 3px #0000001a;transition:transform .2s ease,box-shadow .2s ease;max-width:600px}.portfolio-secondary-card:hover{transform:translateY(-6px);box-shadow:0 4px 12px #00000026}.portfolio-secondary-card-media{width:100%;height:200px;background-color:var(--border-subtle);background:linear-gradient(135deg,#dbeafe,#e0e7ff,#f3e8ff);background-size:200% 200%;animation:gradientShift 12s ease infinite;overflow:hidden;transition:transform .6s cubic-bezier(.25,.1,.25,1);position:relative;container-type:size;container-name:secondary-card-media}.portfolio-secondary-card-media:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#fff0,#ffffff4d,#fff0);background-size:200% 100%;animation:skeletonShimmer 2s ease-in-out infinite;pointer-events:none;z-index:0}.portfolio-secondary-card:hover .portfolio-secondary-card-media{transform:scale(1.05)}[data-theme=dark] .portfolio-secondary-card-media{background:linear-gradient(135deg,#1e293b,#312e81,#581c87);background-size:200% 200%}[data-theme=dark] .portfolio-secondary-card-media:before{background:linear-gradient(90deg,#fff0,#ffffff14,#fff0);background-size:200% 100%}.portfolio-secondary-card-media.gradient-green{background:linear-gradient(135deg,#86efac4d,#4ade804d,#22c55e4d);background-size:200% 200%;animation:gradientShift 12s ease infinite}[data-theme=dark] .portfolio-secondary-card-media.gradient-green{background:linear-gradient(135deg,#1665344d,#15803d4d,#16a34a4d);background-size:200% 200%}.portfolio-secondary-card-media.gradient-dark-blue{background:linear-gradient(135deg,#1e3a8a4d,#1e40af4d,#2563eb4d);background-size:200% 200%;animation:gradientShift 12s ease infinite}[data-theme=dark] .portfolio-secondary-card-media.gradient-dark-blue{background:linear-gradient(135deg,#0c12204d,#1e293b4d,#1e40af4d);background-size:200% 200%}.portfolio-secondary-card-image{width:100%;height:100%;object-fit:cover;position:relative;z-index:1;transform-origin:center center;animation:imageSlideVertical 20s ease-in-out infinite alternate}@container secondary-card-media (max-aspect-ratio: 1){.portfolio-secondary-card-image{animation:imageSlideHorizontal 20s ease-in-out infinite alternate}}.portfolio-secondary-card:hover .portfolio-secondary-card-image{transform:scale(1.05)}.portfolio-secondary-card-body{padding:1.5rem}.portfolio-secondary-card-trigger{width:100%;text-align:left;background:none;border:none;padding:0;margin:0;cursor:pointer;display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;position:relative}.portfolio-secondary-card-header{flex:1;min-width:0;padding-right:1.5rem}.portfolio-secondary-card-header h3{font-size:1.5rem;font-weight:600;line-height:1.2;margin-top:0;margin-bottom:.75rem;color:var(--text-primary)}.portfolio-secondary-subtitle{font-size:.875rem;color:var(--text-muted);font-weight:400;margin-bottom:2rem;width:100%;max-width:100%;word-wrap:break-word;overflow-wrap:break-word}.portfolio-secondary-card:has(.portfolio-secondary-card-content.open) .portfolio-secondary-subtitle{max-width:calc(100% + 10px);margin-right:-10px}.portfolio-secondary-description{font-size:.9375rem;line-height:1.6;color:var(--text-primary);font-weight:400;font-family:var(--font-sans, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, sans-serif);font-style:normal;font-variant:normal;text-transform:none;letter-spacing:0;word-spacing:normal;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin-top:.5rem;margin-left:0;margin-right:0;padding-left:0;padding-right:0;min-height:1.5em;transition:none}.portfolio-secondary-card:has(.portfolio-secondary-card-content.open) .portfolio-secondary-card-header .portfolio-secondary-description{visibility:hidden;height:0;margin:0;min-height:0;transition:none}.portfolio-card-chevron-wrapper{flex-shrink:0;border:1px solid var(--border-subtle);background-color:var(--bg-page);padding:.5rem;border-radius:999px;display:flex;align-items:center;justify-content:center;min-width:32px;min-height:32px;box-sizing:border-box;transition:border-color .2s,background-color .2s;margin-left:auto}.portfolio-card-chevron{width:16px;height:16px;color:var(--text-muted);transition:transform .3s ease,color .2s}.portfolio-secondary-card-trigger[aria-expanded=true] .portfolio-card-chevron{transform:rotate(180deg);color:var(--text-primary)}.portfolio-secondary-card-trigger[aria-expanded=true] .portfolio-card-chevron-wrapper{border-color:var(--accent)}.portfolio-secondary-card-trigger .portfolio-card-chevron-wrapper:hover{border-color:var(--accent);background-color:var(--bg-page)}.portfolio-secondary-card-content{overflow:hidden;transition:max-height .3s ease,opacity .3s ease,margin-top .3s ease;max-height:0;opacity:0;margin-top:0;padding-left:0;padding-right:0}.portfolio-secondary-card-content.open{max-height:500px;opacity:1;margin-top:0}.portfolio-secondary-card-content p{font-size:.9375rem;line-height:1.6;color:var(--text-primary);margin-bottom:1rem}.portfolio-secondary-card-content .portfolio-secondary-description-main{font-size:.9375rem!important;line-height:1.6!important;font-weight:400!important;font-family:var(--font-sans, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, sans-serif)!important;font-style:normal!important;font-variant:normal!important;text-transform:none!important;letter-spacing:0!important;word-spacing:normal!important;text-rendering:auto!important;-webkit-font-smoothing:antialiased!important;-moz-osx-font-smoothing:grayscale!important}.portfolio-secondary-description-main{font-size:.9375rem;line-height:1.6;color:var(--text-primary);font-weight:400;font-family:var(--font-sans, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, sans-serif);font-style:normal;font-variant:normal;text-transform:none;letter-spacing:0;word-spacing:normal;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin-bottom:1.25rem;margin-top:-1.75rem;margin-left:0;margin-right:0;padding-left:0;padding-right:0;padding-top:0;transition:none;opacity:1}.portfolio-secondary-project-details{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1.25rem;padding-top:.75rem;border-top:1px solid var(--border-subtle)}.portfolio-secondary-detail-item{display:flex;align-items:baseline;gap:.5rem;font-size:.875rem;line-height:1.5}.portfolio-secondary-detail-label{font-weight:500;color:var(--text-muted);min-width:3rem}.portfolio-secondary-detail-value{color:var(--text-primary)}.portfolio-secondary-detail-link{color:var(--accent);text-decoration:underline;transition:color .2s}.portfolio-secondary-detail-link:hover{color:#0199c4}.portfolio-secondary-card-content .btn-secondary,.portfolio-secondary-card-content .portfolio-hero-card-cta{margin-top:2rem}.portfolio-secondary-card-placeholder{background-color:transparent;border:1px dashed var(--border-subtle);box-shadow:none}.portfolio-secondary-card-placeholder:hover{transform:none;box-shadow:none}.portfolio-secondary-card-media-placeholder{background-color:var(--bg-subtle);opacity:.5;border:1px dashed var(--border-subtle)}.portfolio-secondary-placeholder-content{display:flex;align-items:center;justify-content:center;min-height:100px;padding:2rem}.portfolio-secondary-placeholder-text{font-size:1rem;color:var(--text-muted);text-align:center;margin:0;font-weight:400}.case-study-back-link{display:inline-flex;align-items:center;gap:.5rem;font-size:1rem;font-weight:500;color:var(--text-primary);text-decoration:none;padding:.75rem 1.5rem;border:1px solid var(--border-subtle);border-radius:999px;background-color:var(--bg-page);margin-bottom:1rem;transition:all .2s,box-shadow .2s;position:relative;z-index:0}.case-study-back-link:hover{color:var(--text-primary);border-color:var(--accent);text-decoration:none;background-color:var(--bg-page)}.case-study-back-link svg{width:20px;height:20px}.case-study-back-link:after{content:"";position:absolute;inset:-4px;background:linear-gradient(90deg,#3b3fff8c,#c643808c,#ffc0438c);border-radius:999px;filter:blur(16px);opacity:0;z-index:-1;transition:opacity .2s;pointer-events:none}[data-theme=light] .case-study-back-link:after{background:linear-gradient(90deg,#2563eba6,#a855f7a6,#fb923ca6)}.case-study-back-link:hover:after{opacity:.2}.case-study-breadcrumbs{display:flex;align-items:center;gap:.5rem;font-size:.875rem;color:var(--text-muted);margin-bottom:2rem;flex-wrap:wrap}.case-study-breadcrumbs a{color:var(--text-muted);text-decoration:none;transition:color .2s ease}.case-study-breadcrumbs a:hover{color:var(--text-primary)}.case-study-breadcrumbs-separator{color:var(--text-muted);opacity:.5}.case-study-breadcrumbs-current{color:var(--text-primary)}#felini-case-study-link,#kanzlei21-case-study-link,.portfolio-hero-card .portfolio-hero-card-cta,.portfolio-hero-card .btn-secondary[href],.portfolio-card .btn-secondary[href*=portfolio],.portfolio-secondary-card .btn-secondary[href],.portfolio-secondary-card .portfolio-hero-card-cta,.portfolio-view-project-analysis{display:none!important}#felini .portfolio-hero-card-cta{display:inline-flex!important}
