@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/fonts/inter-latin-ext-400-normal.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/fonts/inter-latin-400-normal.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/fonts/inter-latin-ext-600-normal.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/fonts/inter-latin-600-normal.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/fonts/inter-latin-ext-700-normal.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/fonts/inter-latin-700-normal.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--bg-primary:#fff;--bg-secondary:#e9e9e9;--bg-tertiary:#474747;--text-primary:#000;--text-secondary:#474747;--text-tertiary:#707070;--text-quaternary:#d1d1d1;--accent-color:#252525;--font-sans:Inter, system-ui, -apple-system, sans-serif;--font-size-x-small:.75rem;--font-size-small:.875rem;--font-size-medium:1rem;--font-size-large:clamp(1.1rem, 2vw + .8rem, 1.375rem);--font-size-x-large:clamp(1.4rem, 3vw + 1rem, 1.75rem);--font-size-xx-large:clamp(.8rem, 4vw + 1rem, 2.75rem);--font-size-xxx-large:clamp(1rem, 8vw, 5rem)}body{color:#000;-webkit-font-smoothing:antialiased;background-color:#fff;height:100%;margin:0;padding:0;font-family:Inter,system-ui,-apple-system,sans-serif}.app{width:100%;min-height:100vh;margin:0;padding:0}.chapter-container{flex-direction:column;justify-content:center;align-items:center;display:flex}.chapter-container h1{font-size:var(--font-size-xxx-large);font-weight:600}.chapter-container h2{font-size:var(--font-size-x-large);font-weight:600}.chapter-container h3{font-size:var(--font-size-large);font-weight:600}.title-container{flex-direction:column;justify-content:center;align-items:center;width:100%;height:100vh;display:flex}.title-container h1{font-size:var(--font-size-xxx-large)}.title-container p{font-size:var(--font-size-xx-large);color:var(--text-secondary);text-align:center}.deliverable-card{background-color:var(--bg-primary);cursor:pointer;border-radius:12px;padding:2rem;transition:transform .1s,box-shadow .1s}.deliverable-card:hover{border-color:var(--accent-color);transform:scale(1.05);box-shadow:0 10px 25px #0003}.deliverable-title{margin-top:0;margin-bottom:1rem}.deliverable-description{color:var(--text-secondary);opacity:.9;margin:0;font-size:1rem;line-height:1.6}.deliverables-container{background-color:var(--bg-secondary);justify-content:flex-start;height:fit-content}.deliverables-container h1{color:var(--text-secondary)}.deliverables-grid{grid-template-columns:repeat(2,1fr);gap:1rem;width:80%;margin:0 2rem;display:grid}@media (width<=768px){.deliverables-grid{grid-template-columns:1fr}}.portfolio-card-container{cursor:pointer;scroll-snap-align:center;scroll-snap-stop:always;flex:none;justify-content:center;align-items:center;min-width:30%;padding:0 1rem;transition:all .3s;display:flex}.portfolio-card-container.active h1{font-size:var(--font-size-xxx-large);color:var(--text-quaternary);-webkit-text-stroke:0}.portfolio-card-container h1{text-align:center;width:100%;font-size:var(--font-size-x-large);color:#0000;-webkit-text-stroke:1px var(--text-quaternary);white-space:nowrap;margin:0;padding:0;font-family:system-ui,Arial,sans-serif;transition:all .3s}@media (width<=768px){.portfolio-card-container{min-width:50%}.portfolio-card-container h1{font-size:var(--font-size-large)}}.portfolio-container{background-color:#000;justify-content:flex-start;min-height:100vh;position:relative}.portfolio-backgrounds{z-index:0;pointer-events:none;position:absolute;inset:0}.portfolio-bg-layer{opacity:0;background-position:50%;background-repeat:no-repeat;background-size:cover;transition:opacity .3s;position:absolute;inset:0}.portfolio-bg-layer.visible{opacity:.3}.portfolio-cards-container{scroll-snap-type:x mandatory;cursor:grab;z-index:1;flex-direction:row;flex:1;align-items:center;width:100%;display:flex;position:relative;overflow:auto hidden}.portfolio-cards-container:active{cursor:grabbing}.portfolio-cards-container.is-dragging{-webkit-user-select:none;user-select:none}.portfolio-cards-container.is-dragging *{pointer-events:none}.portfolio-cards-container::-webkit-scrollbar{display:none}.portfolio-cards-container{scrollbar-width:none}.portfolio-cards-container>:first-child{margin-left:35%}.portfolio-cards-container>:last-child{margin-right:35%}.portfolio-navigation{z-index:10;gap:1rem;display:flex;position:absolute;bottom:2rem;left:2rem}.portfolio-navigation .nav-button{background-color:var(--bg-primary);width:3rem;height:3rem;color:var(--text-primary);cursor:pointer;border:none;border-radius:50%;justify-content:center;align-items:center;transition:all .2s;display:flex;box-shadow:0 4px 6px #0000001a}.portfolio-navigation .nav-button:hover{background-color:var(--bg-secondary);transform:scale(1.1)}.portfolio-navigation .nav-button:active{transform:scale(.95)}.portfolio-navigation .nav-button svg{width:1.5rem;height:1.5rem}.portfolio-navigation .page-indicator{color:var(--text-quaternary);font-size:var(--font-size-small);font-variant-numeric:tabular-nums;-webkit-user-select:none;user-select:none;justify-content:center;align-items:center;min-width:3rem;display:flex}.blog-card-container{background-color:var(--bg-primary);border:1px solid var(--border-color);cursor:pointer;color:var(--text-secondary);border-radius:8px;flex-direction:column;transition:all .2s;display:flex;overflow:hidden}.blog-card-container:hover{box-shadow:var(--shadow);border-color:var(--accent-color);transform:scale(1.02)}.blog-card-image-container{flex-shrink:0;width:100%;height:200px}.blog-card-image{object-fit:cover;width:100%;height:100%;display:block}.blog-card-header{flex-direction:column;gap:.5rem;padding:1.5rem;display:flex}.blog-card-title{margin:0;font-size:1.25rem;font-weight:600}.blog-card-date{color:var(--text-tertiary);margin:0;font-size:.875rem}.blog-card-description{color:var(--text-secondary);margin:0;font-size:1rem}.blog-container{background-color:var(--bg-secondary);justify-content:flex-start}.blog-container h1{color:var(--text-secondary)}.blog-grid{grid-template-columns:repeat(3,1fr);gap:1rem;width:80%;margin:2rem;display:grid}@media (width<=1024px){.blog-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=768px){.blog-grid{grid-template-columns:1fr}}.imprint-container{background-color:var(--text-primary);width:100%;color:var(--bg-primary);flex-direction:column;display:flex}.imprint-header{font-size:var(--font-size-medium);margin-left:2rem}.imprint-content{font-size:var(--font-size-x-small);color:var(--text-tertiary);flex-direction:column;margin-bottom:2rem;margin-left:2rem;margin-right:2rem;display:flex}.footer-container{background-color:var(--text-primary);border-top:2px solid var(--accent-color);flex-direction:row;justify-content:space-between;align-items:center;padding:1rem;display:flex}.footer-copyright{color:var(--bg-primary);font-size:var(--font-size-x-small);margin:1rem}.footer-links{gap:1rem;margin:1rem;display:flex}.footer-links a{color:var(--text-secondary);font-size:var(--font-size-x-small);text-decoration:none}.tools-container{background-color:var(--bg-secondary);justify-content:flex-start;padding-top:2rem;padding-bottom:5rem}.tools-container h1{color:var(--text-secondary)}.tools-groups{flex-direction:row;justify-content:space-between;align-items:flex-start;width:100%;display:flex}@media (width<=1024px){.tools-groups{flex-direction:column;row-gap:3rem;margin-bottom:3rem}}.tools-group{flex-flow:column wrap;justify-content:center;align-items:center;width:100%;display:flex}.tools-group-images{flex-wrap:wrap;justify-content:center;gap:1rem;max-width:calc(240px + 4rem);margin-top:1rem;display:flex}.tools-group img{object-fit:contain;width:60px;height:60px}.modal-backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;background-color:#0009;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.deliverable-modal{box-sizing:border-box;z-index:1001;background-color:var(--bg-primary);width:100%;height:100%;font-size:var(--font-size-large);border-radius:8px;padding:1rem;animation:.3s cubic-bezier(.175,.885,.32,1.275) forwards expandToFullScreen;position:relative;overflow-y:auto;box-shadow:0 10px 30px #0000004d}@media (width<=768px){.deliverable-modal{width:100vw;min-height:100vh;font-size:var(--font-size-medium);border-radius:0;padding:1rem}}@keyframes expandToFullScreen{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.deliverable-modal-title{margin-bottom:1.5rem}.deliverable-modal-description{margin-bottom:2rem}.deliverable-modal-close{cursor:pointer;color:var(--text-primary);z-index:1002;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;width:4rem;height:4rem;font-size:3rem;transition:background-color .2s,transform .2s,color .2s;display:flex;position:absolute;top:1rem;right:1rem}.deliverable-modal-close:hover{background-color:var(--accent-color);color:var(--bg-primary);transform:scale(1.1)}.deliverable-modal-detailed-description{border-top:2px solid var(--accent-color);color:var(--text-primary);margin-top:2rem;padding-top:2rem;line-height:1.8}.portfolio-modal{box-sizing:border-box;z-index:1001;background-color:var(--bg-primary);width:100%;height:100%;font-size:var(--font-size-large);border-radius:8px;flex-direction:column;animation:.3s cubic-bezier(.175,.885,.32,1.275) forwards expandToFullScreen;display:flex;position:relative;overflow-y:auto;box-shadow:0 10px 30px #0000004d}.portfolio-modal-hero{background-position:50%;background-repeat:no-repeat;background-size:cover;flex-shrink:0;width:100%;height:300px}.portfolio-modal-content{flex:1;padding:2rem}.portfolio-modal-title{font-size:var(--font-size-xx-large);margin:0 0 .5rem}.portfolio-modal-date{font-style:italic;font-size:var(--font-size-small);color:var(--text-tertiary);margin:0 0 1rem}.portfolio-modal-description{color:var(--text-secondary);margin-bottom:1.5rem}.portfolio-modal-link{background-color:var(--accent-color);color:var(--bg-primary);font-size:var(--font-size-medium);border-radius:6px;margin-bottom:2rem;padding:.6rem 1.2rem;font-weight:600;text-decoration:none;transition:transform .2s,box-shadow .2s;display:inline-block}.portfolio-modal-link:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0003}.portfolio-modal-detailed-description{border-top:2px solid var(--accent-color);color:var(--text-primary);margin-top:1rem;padding-top:2rem;line-height:1.8}.portfolio-modal-detailed-description img{border-radius:8px;max-width:100%;height:auto;margin:1rem 0}.portfolio-modal-detailed-description h1,.portfolio-modal-detailed-description h2,.portfolio-modal-detailed-description h3{margin-top:1.5rem;margin-bottom:.75rem}.portfolio-modal-detailed-description ul,.portfolio-modal-detailed-description ol{padding-left:1.5rem}.portfolio-modal-close{cursor:pointer;color:#fff;z-index:1002;background:#00000080;border:none;border-radius:50%;justify-content:center;align-items:center;width:3rem;height:3rem;font-size:2rem;line-height:1;transition:background-color .2s,transform .2s;display:flex;position:absolute;top:1rem;right:1rem}.portfolio-modal-close:hover{background-color:var(--accent-color);transform:scale(1.1)}@media (width<=768px){.portfolio-modal{width:100vw;min-height:100vh;font-size:var(--font-size-medium);border-radius:0}.portfolio-modal-hero{height:200px}.portfolio-modal-content{padding:1rem}}.blog-modal{box-sizing:border-box;z-index:1001;background-color:var(--bg-primary);width:100%;height:100%;font-size:var(--font-size-large);border-radius:8px;flex-direction:column;animation:.3s cubic-bezier(.175,.885,.32,1.275) forwards expandToFullScreen;display:flex;position:relative;overflow-y:auto;box-shadow:0 10px 30px #0000004d}.blog-modal-content{flex:1;padding:2rem}.blog-modal-hero{background-position:50%;background-repeat:no-repeat;background-size:cover;flex-shrink:0;width:100%;height:300px}.blog-modal-title{font-size:var(--font-size-xx-large);margin:0 0 .5rem}.blog-modal-date{font-style:italic;font-size:var(--font-size-small);color:var(--text-tertiary);margin:0 0 1rem}.blog-modal-description{color:var(--text-secondary);margin-bottom:1.5rem}.blog-modal-detailed-description{border-top:2px solid var(--accent-color);color:var(--text-primary);margin-top:1rem;padding-top:2rem;line-height:1.8}.blog-modal-detailed-description img{border-radius:8px;max-width:100%;height:auto;margin:1rem 0}.blog-modal-detailed-description h1,.blog-modal-detailed-description h2,.blog-modal-detailed-description h3{margin-top:1.5rem;margin-bottom:.75rem}.blog-modal-detailed-description ul,.blog-modal-detailed-description ol{padding-left:1.5rem}.blog-modal-close{cursor:pointer;color:#fff;z-index:1002;background:#00000080;border:none;border-radius:50%;justify-content:center;align-items:center;width:3rem;height:3rem;font-size:2rem;line-height:1;transition:background-color .2s,transform .2s;display:flex;position:absolute;top:1rem;right:1rem}.blog-modal-close:hover{background-color:var(--accent-color);color:var(--bg-primary);transform:scale(1.1)}@media (width<=768px){.blog-modal{width:100vw;min-height:100vh;font-size:var(--font-size-medium);border-radius:0}.blog-modal-content{padding:1rem}}.privacy-policy-modal{box-sizing:border-box;z-index:1001;background-color:var(--bg-primary);width:100%;height:100%;font-size:var(--font-size-large);border-radius:8px;flex-direction:column;animation:.3s cubic-bezier(.175,.885,.32,1.275) forwards expandToFullScreen;display:flex;position:relative;overflow-y:auto;box-shadow:0 10px 30px #0000004d}.privacy-policy-modal-content{color:var(--text-primary);flex:1;padding:2rem;line-height:1.8}.privacy-policy-modal-content h1,.privacy-policy-modal-content h2,.privacy-policy-modal-content h3{margin-top:1.5rem;margin-bottom:.75rem}.privacy-policy-modal-content ul,.privacy-policy-modal-content ol{padding-left:1.5rem}.privacy-policy-modal-content a{color:var(--accent-color);text-decoration:underline}.privacy-policy-modal-content a:hover{opacity:.8}.privacy-policy-modal-close{cursor:pointer;color:#fff;z-index:1002;background:#00000080;border:none;border-radius:50%;justify-content:center;align-items:center;width:3rem;height:3rem;font-size:2rem;line-height:1;transition:background-color .2s,transform .2s;display:flex;position:absolute;top:1rem;right:1rem}.privacy-policy-modal-close:hover{background-color:var(--accent-color);color:var(--bg-primary);transform:scale(1.1)}@media (width<=768px){.privacy-policy-modal{width:100vw;min-height:100vh;font-size:var(--font-size-medium);border-radius:0}.privacy-policy-modal-content{padding:1rem}}
