@import url(https://fonts.cdnfonts.com/css/spline-sans-mono);@import url(https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600&display=swap);:root,html{--mint-cream:#ffffffb3;--columbia-blue:#c4d3f2;--non-photo-blue:#91a2d8;--ash-gray:#91a2d8;--dim-gray:#58404e;--bg-main:var(--mint-cream);--bg-card:#ffffffb3;--text-main:#2a2a2a;--text-muted:#4b4b4b;--accent:var(--non-photo-blue);--highlight:var(--columbia-blue);--border:#dde4ea}.project-page{align-items:stretch;background-color:var(--bg-color);display:flex;flex-direction:column;min-height:100vh;padding:3rem 12rem}.project-page h1{color:#58404e;color:var(--dim-gray);font-size:3rem;margin-bottom:.5rem;width:100%}.project-page h1,.project-subtitle{font-family:Apfel Grotesk,sans-serif;font-weight:600;text-align:left}.project-subtitle{color:#91a2d8;color:var(--ash-gray);font-size:1.5rem;margin-bottom:1rem;margin-top:-.2rem}.project-page .tags{margin:0;text-align:left}.project-page .tag{background:#c4d3f2;background:var(--columbia-blue);border-radius:12px;color:#58404e;color:var(--dim-gray);display:inline-block;font-family:Inter,sans-serif;font-size:.8rem;font-weight:500;margin-right:10px;padding:.35rem .8rem}.project-page .project-content{align-items:stretch;display:flex;flex-direction:column;justify-content:flex-start;width:100%}.project-page .project-info{background:var(--card-bg);border-radius:14px;color:#58404e;color:var(--dim-gray);font-family:Inter,sans-serif;font-size:1rem;order:1;text-align:left;width:100%}.project-page .project-info h2{color:#91a2d8;color:var(--ash-gray);font-family:Inter,sans-serif;font-size:1.25rem;margin-bottom:1rem}.project-page .description,.project-page .summary{background:#0000!important;box-shadow:none!important;line-height:1.7;margin-bottom:1.5rem}.project-page .summary{background:#c4d7f226;border-left:4px solid #91a2d8;border-left:4px solid var(--ash-gray);border-radius:6px;font-style:italic;padding:1rem 1.5rem}.project-page .link-buttons{display:flex;flex-wrap:wrap;gap:.8rem;margin-top:1rem}.visit-button{background:#c4d3f2;background:var(--columbia-blue);border:none;border-radius:20px;color:#222;cursor:pointer;font-size:.9rem;font-weight:500;padding:.6rem 1.2rem;transition:background .2s ease,transform .2s ease}.visit-button:hover{background:#91a2d8;background:var(--ash-gray);color:#fff;transform:translateY(-2px)}.project-card{max-width:600px}.project-page .image-gallery{align-items:flex-start;display:flex;flex-wrap:wrap;gap:1.5rem;justify-content:center;margin-top:1rem;order:2;width:100%}.project-page .image-gallery img{border-radius:12px;max-width:700px;width:100%}.project-page .image-gallery.grid{grid-gap:2rem;align-items:center;display:grid;gap:2rem;grid-template-columns:repeat(2,1fr);width:100%}.project-page .image-gallery.grid img{border-radius:12px;height:auto;max-height:500px;object-fit:contain}.project-page .back-button{background:none;border:none;color:#58404e;color:var(--dim-gray);cursor:pointer;font-family:Inter,sans-serif;font-size:1rem;left:15px;position:absolute;top:30px;transition:color .2s ease;z-index:1000}.project-page .back-button:hover{color:#91a2d8;color:var(--ash-gray)}body.dark-mode{--bg-color:#1e1e1e;--text-color:#f0f0f0;--card-bg:#2b2b2b;--border:#3a3a3a}body.dark-mode .project-info{box-shadow:none}body.dark-mode .tag{background:#91a2d8;background:var(--ash-gray);color:#f0f0f0}body.dark-mode .visit-button{background:#91a2d8;background:var(--ash-gray);color:#fff}body.dark-mode .visit-button:hover{background:#c4d3f2;background:var(--columbia-blue);color:#111}@media (max-width:1200px){.project-page{padding:2rem 3rem}.project-page .image-gallery.grid{grid-template-columns:1fr}}@media (max-width:768px){.project-page{padding:1.5rem}.project-page h1{font-size:1.6rem}.project-page .project-info,.project-page .tags,.project-page h1{text-align:center}.project-page .description,.project-page .summary{font-size:.95rem}.project-page .back-button{font-size:.9rem;left:15px;top:10px}}.sections{grid-gap:2rem;display:grid;gap:2rem;margin:1rem 0 2rem}.section-row{grid-gap:2rem;align-items:start;display:grid;gap:2rem;grid-template-columns:220px 800px;padding-top:1rem}.section-side{padding-top:1rem;text-align:left}.section-title{color:#58404e;color:var(--dim-gray);font-weight:700}.section-body{font-family:Inter,sans-serif!important;font-size:.85rem;line-height:1.7}.section-row+.section-row{border-top:1px solid #dde4ea;border-top:1px solid var(--border)}@media (max-width:800px){.section-row{gap:.75rem;grid-template-columns:1fr}.section-side{border-left:3px solid #c4d3f2;border-left:3px solid var(--highlight);padding-left:.75rem}}.info-card{background:none;color:#58404e;color:var(--dim-gray);display:flex;flex-wrap:wrap;gap:20px;justify-content:center;padding-top:20px}.info-card>div{background-color:#ffffffb3;background-color:var(--bg-card);border-radius:12px;box-shadow:0 4px 12px #0000001a;flex:1 1 150px;padding:15px 25px;text-align:center}.sections:first-of-type{margin-top:-1rem!important}.info-card h4{border-radius:4px;display:inline-block;font-size:.85rem;margin-bottom:.5rem;margin-top:0;padding:.1rem .4rem;text-transform:uppercase}.info-card p{color:#58404e;color:var(--dim-gray);font-size:.8rem;margin:0}.process-strip{border-radius:12px;flex-wrap:wrap;gap:2rem;justify-content:space-between;margin:0;padding:0;width:100%}.process-step,.process-strip{align-items:flex-start;display:flex}.process-step{color:#58404e;color:var(--dim-gray);flex-direction:column;font-family:Inter,sans-serif;font-size:.85rem;position:relative;text-align:left}.process-arrow{color:#777;font-size:1.25rem;position:absolute;right:-4rem;top:50%;transform:translateY(-50%)}.process-number,.process-phase{font-weight:600}.process-item{font-size:.7rem}.gsm-table,.gsm-table-borderless{background:#ffffffb3;border-collapse:collapse;border-radius:10px;line-height:1.4;margin-top:1rem;overflow:hidden;width:100%}.gsm-table-borderless td:first-child,.gsm-table-borderless th:first-child{padding-left:1rem;text-align:left;vertical-align:middle;width:70px}.gsm-table,.gsm-table-borderless th{background:#c4d3f2;background:var(--columbia-blue);color:#58404e;color:var(--dim-gray);font-weight:600;padding:.6rem;text-align:left}.gsm-table,.gsm-table-borderless td{border-top:1px solid #dde4ea;border-top:1px solid var(--border);color:#58404e;color:var(--dim-gray);padding:.9rem;vertical-align:top}.gsm-table,.gsm-table-borderless ul{list-style-type:disc;margin:.4rem 0 0 1.2rem;padding:0}.gsm-table li{margin-bottom:.3rem}.goodreads-image1{max-width:900px}.goodreads-image1,.image1{border-radius:10px;box-shadow:0 4px 10px #00000014;display:block;margin:1.5rem auto;width:100%}.image1{max-width:200px}.content-container{align-items:center;display:flex;gap:2rem;justify-content:space-between}.text-section{flex:1 1}.video-section{width:30%}.video-section,.video-section1{border-radius:10px;box-shadow:0 4px 10px #0000001a}.video-section1{width:60%}.video-section-title{width:30%}.just-video{border-radius:42px;box-shadow:0 4px 10px #0000001a}.image-stack{align-items:center;display:flex;flex:1 1;flex-direction:column;gap:1rem}.stacked-img{border-radius:12px;box-shadow:0 4px 12px #0000001a;height:230px;object-fit:cover;object-position:center 80%;width:100%}.observations{display:flex;gap:2rem;justify-content:space-between;margin-top:1rem}.observation{background:#ffffffb3;background:var(--bg-card);border-radius:12px;box-shadow:0 4px 10px #00000014;color:#58404e;color:var(--dim-gray);flex:1 1;line-height:1.6;padding:1rem 1.2rem}@media (max-width:768px){.observations{flex-direction:column;gap:1rem}}.stacked-image{border-radius:10px;box-shadow:0 4px 10px #0000001a;max-width:300px;width:60%}@media (max-width:900px){.frog-div{grid-template-columns:1fr}}.frog-div{align-items:center;align-self:center;display:flex;justify-content:center;margin:auto;text-align:center}.frog-image{border-radius:10px;box-shadow:0 4px 10px #00000014;display:block;margin:1.5rem auto;max-width:800px;width:100%}.frog-div h2{text-align:center}@media (max-width:800px){.frog-div{grid-template-columns:1fr}}.goodreads-image2{border-radius:10px;box-shadow:0 4px 10px #00000014;display:block;margin:1.5rem auto;max-width:500px;width:100%}.tasks-goals-table{background:#ffffffb3;border-collapse:collapse;border-radius:10px;line-height:1.4;margin-top:1rem;overflow:hidden;width:100%}.tasks-goals-table td:first-child{width:1%}.tasks-goals-table td,.tasks-goals-table th{border-top:1px solid #dde4ea;border-top:1px solid var(--border);color:#58404e;color:var(--dim-gray);padding:.8rem;text-align:left}.tasks-goals-table th{background:#c4d3f2;background:var(--columbia-blue);font-weight:600}.tasks-goals-table ul{list-style:disc;margin:.4rem 0 0 1.2rem;padding:0}.gsm-table,.project-page,.section-body,.tasks-goals-table{-webkit-hyphens:auto;hyphens:auto;overflow-wrap:anywhere;word-break:normal}.project-page .image-gallery img{height:auto}.tasks-goals-table td:first-child{min-width:6rem;white-space:nowrap}.gsm-table{table-layout:auto}@media (max-width:760px){.gsm-table,.gsm-table tbody,.gsm-table td,.gsm-table tr{display:block;width:100%}.gsm-table thead{display:none}.gsm-table tr{background:#ffffffb3;background:var(--bg-card);border:1px solid #dde4ea;border:1px solid var(--border);border-radius:10px;margin:0 0 12px;padding-top:.25rem}.gsm-table td{border-top:0;padding:.75rem .9rem}.gsm-table td+td{border-top:1px solid #dde4ea;border-top:1px solid var(--border)}.gsm-table td:first-child:before,.gsm-table td:nth-child(2):before,.gsm-table td:nth-child(3):before{color:#91a2d8;color:var(--ash-gray);display:block;font-weight:600;margin-bottom:.25rem}.gsm-table td:first-child:before{content:"Goals"}.gsm-table td:nth-child(2):before{content:"Signals"}.gsm-table td:nth-child(3):before{content:"Metrics"}.tasks-goals-table,.tasks-goals-table tbody,.tasks-goals-table td,.tasks-goals-table tr{display:block;width:100%}.tasks-goals-table thead{display:none}.tasks-goals-table tr{background:#ffffffb3;background:var(--bg-card);border:1px solid #dde4ea;border:1px solid var(--border);border-radius:10px;margin:0 0 12px;overflow:hidden}.tasks-goals-table td{border-top:0;padding:.75rem .9rem}.tasks-goals-table td+td{border-top:1px solid #dde4ea;border-top:1px solid var(--border)}.tasks-goals-table td:first-child{background:#c4d3f259;font-weight:600}.tasks-goals-table td:nth-child(2):before,.tasks-goals-table td:nth-child(3):before{color:#91a2d8;color:var(--ash-gray);display:block;font-weight:600;margin-bottom:.25rem}.tasks-goals-table td:nth-child(2):before{content:"Tasks"}.tasks-goals-table td:nth-child(3):before{content:"Goal"}}.goodreads-image1,.goodreads-image2{display:block;height:auto;margin:1rem auto;max-width:100%}@media (max-width:700px){.project-subtitle{display:block;margin-left:auto;margin-right:auto;text-align:center}}.affinity-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(2,1fr);justify-items:stretch}.affinity-card{background:#ffffffb3;background:var(--bg-card);border-radius:16px;box-shadow:0 4px 10px #00000014;line-height:1.6;padding:1rem}.affinity-card,.affinity-card h4{color:#58404e;color:var(--dim-gray)}.affinity-card h4{font-weight:700;margin-bottom:.5rem;margin-top:0}.affinity-card ul{list-style-type:disc;margin-left:1.2rem;margin-top:.5rem;padding:0}.affinity-card li{margin-bottom:.4rem}@media (max-width:900px){.affinity-grid{grid-template-columns:1fr}}img,table{border-radius:10px;box-shadow:0 4px 10px #00000014}table{border-collapse:collapse;overflow:hidden}.persona-card,table{background:#ffffffb3;background:var(--bg-card)}.persona-card{align-items:flex-start;border-radius:12px;box-shadow:0 4px 10px #0000000d;display:flex;flex-wrap:wrap;gap:1rem;margin-top:15px;padding:1rem}.persona-avatar{border-radius:10px;box-shadow:0 3px 8px #00000014;width:150px}.persona-content{color:#58404e;color:var(--dim-gray);flex:1 1}.source{text-decoration:underline}.problem-goal{grid-gap:3rem;display:grid;gap:3rem;grid-template-columns:1.1fr 1fr;margin:0 auto;max-width:960px;text-align:center}.problem-goal h2{font-size:1rem;font-weight:600;line-height:1}.problem-goal p{line-height:1.7;margin:0}@media (max-width:768px){.problem-goal{gap:2rem;grid-template-columns:1fr}}.problem-goal article+article{border-left:1px solid #dde4ea;border-left:1px solid var(--border);padding-left:2rem}.brainstorm{margin:0 auto;max-width:960px;text-align:center}.brainstorm .ideas{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));list-style:none;margin:0;padding:0}.brainstorm .ideas>li{background-color:#ffffffb3;background-color:var(--bg-card);border-radius:12px;box-shadow:0 6px 18px #0000000d;padding:1.25rem 1.1rem;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.brainstorm .ideas>li:hover{border-color:#e7e7e7;transform:translateY(-2px)}.brainstorm h3{font-size:1rem;font-weight:600}.brainstorm .ideas p{line-height:1.6;margin:0}@media (max-width:768px){.content-container{flex-direction:column}.video-section{width:100%}}@media (max-width:640px){.brainstorm{padding:2rem 1rem}}.highlight{text-decoration:underline}table.gsm-table{background:#ffffffb3;background:var(--bg-card);border-collapse:initial;border-spacing:0;margin:0;width:100%}table.gsm-table thead th{background:#c4d3f2;background:var(--columbia-blue);color:#58404e;color:var(--dim-gray);padding:1rem 1.2rem;text-align:center}table.gsm-table tbody td{background:#ffffffb3;color:#58404e;color:var(--dim-gray);font-weight:400;padding:1rem;vertical-align:top}table.gsm-table ul{margin-top:0}table.gsm-table tbody tr+tr td{border-top:1px solid #dde4ea;border-top:1px solid var(--border)}@media (max-width:900px){.project-page{padding:2rem 1.5rem}.project-page h1{font-size:2rem;text-align:center}.project-subtitle{font-size:1.2rem;text-align:center}.project-page .tags{margin-bottom:1rem;text-align:center}.project-page .image-gallery.grid{gap:1.2rem;grid-template-columns:1fr}.sections{gap:1.5rem}.section-row{gap:1rem;grid-template-columns:1fr}.section-side{border-left:3px solid #c4d3f2;border-left:3px solid var(--highlight);padding-left:.75rem}}@media (max-width:600px){.project-page{padding:1.25rem 1rem}.project-page h1{font-size:1.5rem;text-align:center}.project-subtitle{font-size:1rem;text-align:center}.project-page .project-info{text-align:left}.summary{font-size:.9rem;padding:1rem}.link-buttons{justify-content:center}.visit-button{font-size:.85rem;max-width:300px;padding:.6rem;width:100%}.problem-goal{gap:1.5rem;grid-template-columns:1fr}.problem-goal article+article{border-left:none;border-top:1px solid #dde4ea;border-top:1px solid var(--border);padding-left:0;padding-top:1.5rem}.content-container{flex-direction:column;gap:1rem}.video-section{margin-top:1rem;width:100%}.text-section{text-align:left}.gsm-table,.tasks-goals-table{font-size:.85rem}.info-card>div{flex:1 1 100%}.persona-card{align-items:center;flex-direction:column;text-align:center}.persona-avatar{width:100px}.affinity-grid{grid-template-columns:1fr}.frog-image,.goodreads-image1,.goodreads-image2{max-width:100%}}@media (max-width:480px){table{font-size:.8rem}td,th{padding:.6rem .8rem}.visit-button{font-size:.8rem}.project-page h1{font-size:1.3rem}}body,html{max-width:100%;overflow-x:hidden}.container,.content-container,.problem-goal,.project-page,.sections{align-items:flex-start;box-sizing:border-box;max-width:100%;overflow-x:hidden}.centered-container{align-items:center}img,video{display:block;height:auto;max-width:100%}.content-container,.filter-buttons,.image-gallery,.problem-goal,.sections,.top-buttons{flex-wrap:wrap}.project-page .image-gallery.grid{grid-template-columns:1fr;justify-items:center}@media (max-width:768px){.project-page{padding:1.5rem}.content-container{align-items:flex-start;display:flex;flex-wrap:wrap;gap:1rem;justify-content:center}.content-container:first-of-type{flex-direction:column-reverse}.content-container:nth-of-type(2){flex-direction:row;flex-wrap:wrap;justify-content:center}.video-section-title{align-items:center;display:flex;flex:1 1 45%;flex-direction:column;justify-content:center;justify-items:center;text-align:center}.just-video{border-radius:12px;height:auto;max-width:200px;width:100%}.text-section{flex:1 1 100%;text-align:left}.content-container:nth-of-type(3){flex-direction:column}.content-container:first-of-type .video-section-title{align-items:center;display:flex;flex-direction:column;justify-content:center;margin:0 auto;text-align:center;width:100%}}.ux-recommendations{margin-top:2rem}.ux-recommendations h3{color:#58404e;color:var(--dim-gray);font-weight:700;margin-bottom:1.5rem}.ux-insight{border-left:4px solid #c4d3f2;border-left:4px solid var(--columbia-blue);margin-bottom:1.5rem;padding-left:1rem}.ux-insight h4{color:#91a2d8;color:var(--ash-gray);font-weight:600;margin:0 0 .25rem}.ux-insight .insight-title{color:#58404e;color:var(--dim-gray);font-weight:600;margin-bottom:.25rem}.ux-insight p{line-height:1.6;margin:.3rem 0}.painting-gallery{margin:2rem auto;max-width:1200px;text-align:center}.painting-gallery h3{color:#58404e;color:var(--dim-gray);font-weight:700;margin-bottom:1.5rem}.painting-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));justify-items:center}.painting-grid img{border-radius:12px;box-shadow:0 4px 10px #0000001a;cursor:pointer;height:100%;max-width:300px;object-fit:cover;transition:transform .25s ease,box-shadow .25s ease;width:100%}.painting-grid img:hover{box-shadow:0 6px 15px #00000026;transform:scale(1.03)}.modal{animation:fadeIn .3s ease;background-color:#000000d9;display:none;height:100%;left:0;overflow:auto;padding-top:4rem;position:fixed;top:0;width:100%;z-index:1000}.modal-content{animation:zoomIn .3s ease;border-radius:10px;display:block;margin:auto;max-height:80vh;max-width:90%}.close{color:#fff;cursor:pointer;font-size:40px;font-weight:700;position:absolute;right:35px;top:20px;transition:color .2s ease}.close:hover{color:#c4d3f2;color:var(--columbia-blue)}@keyframes zoomIn{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}.art-intro-block{align-items:flex-start;display:flex;gap:1.5rem;margin:0 auto 2rem;max-width:800px}.art-icon{font-size:3rem;line-height:1}.art-text{color:#58404e;color:var(--dim-gray);font-size:1.05rem;line-height:1.7}@font-face{font-family:Apfel Grotesk;font-style:normal;font-weight:700;src:url(/static/media/ApfelGrotezk-Fett.49732851d9003218214c.woff2) format("woff2"),url(/static/media/ApfelGrotezk-Fett.33e8e565d0ceb8b8aea4.woff) format("woff"),url(/static/media/ApfelGrotezk-Fett.c1a6743b74360be9b24e.otf) format("opentype")}:root{--mint-cream:#ffffffb3;--columbia-blue:#c4d3f2;--non-photo-blue:#91a2d8;--ash-gray:#91a2d8;--dim-gray:#58404e;--bg-main:var(--mint-cream);--bg-card:#ffffffb3;--text-main:#2a2a2a;--text-muted:#4b4b4b;--accent:var(--non-photo-blue);--highlight:var(--columbia-blue);--border:#dde4ea}html{background:linear-gradient(180deg,#ffffffb3,#c4d3f2);background:linear-gradient(180deg,var(--mint-cream) 0,var(--columbia-blue) 100%);overscroll-behavior:none}body,html{-ms-overflow-style:none;background-attachment:fixed;background-repeat:no-repeat;background-size:cover;color:#2a2a2a;color:var(--text-main);display:flex;font-family:Inter,sans-serif;height:100%;justify-content:center;margin:0;min-height:100vh;padding:0;scrollbar-width:none;text-align:center}body::-webkit-scrollbar,html::-webkit-scrollbar{display:none}.container{margin:0 auto;padding:3rem;width:1400px}.title{animation:fadeUp .8s ease both;color:#58404e;color:var(--dim-gray);font-family:Apfel Grotesk,sans-serif;font-size:4rem;font-weight:600;margin-bottom:.3rem}@keyframes floatBg{0%{transform:translateY(0)}to{transform:translateY(-10px)}}@keyframes fadeUp{0%{opacity:0;transform:translateY(15px)}to{opacity:1;transform:translateY(0)}}.subtitle{color:#91a2d8;color:var(--ash-gray);font-size:1rem;letter-spacing:.05em;margin-bottom:.75rem}.bio{font-size:.95rem;line-height:1.6;margin-top:1.5rem;margin-inline:auto;max-width:600px}.bio,.bio2{color:#58404e;color:var(--dim-gray);font-family:Inter,sans-serif}.bio2{font-size:.9rem;margin-top:.3rem}.top-buttons{align-items:center;display:flex;flex-wrap:wrap;gap:.8rem;justify-content:center;margin:1.5rem 0 2rem}.top-buttons img{height:22px;opacity:.7;transition:opacity .2s ease,transform .2s ease;width:22px}.top-buttons img:hover{opacity:1;transform:translateY(-2px)}.cv-button{background-color:#c4d3f2;background-color:var(--columbia-blue);border:none;border-radius:20px;box-shadow:0 2px 6px #91a8a433;color:#58404e;color:var(--dim-gray);cursor:pointer;font-family:Inter,sans-serif;font-size:14px;font-weight:600;padding:.5rem;transition:all .25s ease}.cv-button:hover{background-color:#91a2d8;background-color:var(--non-photo-blue);color:#fff;transform:translateY(-2px)}.filter-buttons{display:flex;flex-wrap:wrap;gap:.6rem;justify-content:center;margin-bottom:2.5rem}.filter-buttons button{background-color:#c4d3f2;background-color:var(--columbia-blue);border:none;border-radius:20px;color:#58404e;color:var(--dim-gray);cursor:pointer;font-family:Inter,sans-serif;font-size:.85rem;padding:.5rem 1rem;transition:background .25s ease,color .25s ease,box-shadow .25s ease,transform .2s ease}.filter-buttons button:hover:not(.active){background-color:#91a2d8;background-color:var(--non-photo-blue);box-shadow:0 2px 6px #00000014;transform:translateY(0) scale(1.02)}.filter-buttons .active{background-color:#91a2d8;background-color:var(--non-photo-blue);color:#fff}.tag-description{background-color:#ffffffb3;border-radius:12px;font-family:Inter,sans-serif;font-size:.85rem;font-style:italic;margin:5px 0;padding:.1px 15px}.project-list{grid-gap:3rem;display:grid;gap:3rem;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));list-style:none;margin-bottom:4rem;padding:0}.project-card{animation:fadeIn .8s ease forwards;background:#ffffffb3;background:var(--bg-card);border:1px solid #dde4ea;border:1px solid var(--border);border-radius:14px;box-shadow:0 2px 8px #91a8a440;opacity:0;padding:1.2rem;transition:transform .25s ease,box-shadow .25s ease,background .25s ease}.project-card:hover{background:#fff;box-shadow:0 8px 20px #91a8a459;cursor:pointer;transform:translateY(-6px)}@keyframes fadeIn{to{opacity:1}}.project-content{display:flex;flex-direction:column;gap:1rem}.thumbnail-side{max-height:250px}.project-list:has(>.project-card:only-child) .thumbnail-side{max-height:700px}.project-info{flex:1 1;margin-top:5px;text-align:left}.project-info h3{font-size:1.1rem;margin:0 0 .4rem}.project-info a,.project-info h3{color:#58404e;color:var(--dim-gray)}.project-info a{text-decoration:none;transition:color .2s ease}.project-info a:hover{color:#91a2d8;color:var(--ash-gray)}.tag-row{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.4rem}.tag{background-color:#c4d3f2;background-color:var(--columbia-blue);border-radius:12px;font-size:.75rem;font-weight:500;padding:.3rem .6rem}.description,.tag{color:#58404e;color:var(--dim-gray);font-family:Inter,sans-serif}.description{font-size:.9rem;line-height:1.5;margin-top:.5rem}.app.dark{background-color:#1f2021;color:#eee}.app.dark .project-card{background-color:#2a2b2b;border-color:#444;box-shadow:0 2px 8px #0000004d}.app.dark .project-info a{color:#c4d3f2;color:var(--columbia-blue)}.app.dark .filter-buttons button{background-color:#444;color:#ddd}.app.dark .filter-buttons .active{background-color:#91a2d8;background-color:var(--non-photo-blue);color:#111}.app.dark .tag{color:#fff}.app.dark .cv-button,.app.dark .tag{background-color:#91a2d8;background-color:var(--ash-gray)}.app.dark .cv-button{color:#111}.dark .tag-description{background-color:#ffffff14;color:#ddd}@media (max-width:1024px){.bio{padding:0 3rem}}@media (max-width:600px){.bio{font-size:.85rem;padding:0 1rem}.title{font-size:1.7rem}.cv-button,.description,.subtitle{font-size:.8rem}.filter-buttons button{font-size:.75rem;padding:.4rem .8rem}}@media (max-width:1024px){.container{flex-wrap:wrap;padding:2rem;width:100%}.bio{font-size:.9rem;padding:0 2rem}.title{font-size:3rem}.project-list{gap:2rem}}@media (max-width:768px){body,html{justify-content:flex-start;text-align:center}.container{max-width:95%;padding:1.5rem}.title{font-size:2.2rem;line-height:1.2}.bio{font-size:.9rem;padding:0 1rem}.top-buttons{flex-direction:row;flex-wrap:wrap;gap:.6rem;justify-content:center;width:100%}.project-list{gap:1.5rem;grid-template-columns:1fr 1fr}}@media (max-width:600px){.container{max-width:100%;padding:1rem}.title{font-size:1.8rem}.bio{font-size:.85rem;padding:0 .5rem}.top-buttons{gap:.5rem;width:100%}.cv-button{font-size:.8rem;padding:.4rem .8rem}.filter-buttons{flex-direction:row;flex-wrap:wrap;gap:.4rem;margin-bottom:1.5rem}.filter-buttons button{font-size:.75rem;padding:.4rem .7rem}.project-list{gap:1.5rem;grid-template-columns:1fr}.thumbnail-side{max-height:200px}.project-info h3{font-size:1rem}.description{font-size:.8rem}}.thumbnail-side{border-radius:10px;box-shadow:0 4px 10px #7768711a;display:block;height:250px;object-fit:cover;width:100%}.project-card video.thumbnail-side,.thumbnail-side.video-thumbnail,.thumbnail-side[type="video/mp4"]{border-radius:10px;height:320px;object-fit:cover}.navbar{align-items:center;display:none;justify-content:flex-end;padding:1rem 2rem;position:fixed;right:40px;width:100%;z-index:100}.nav-left{display:flex;gap:2rem}.nav-link{color:var(--dim-gray);font-family:Inter,sans-serif;font-size:.95rem;font-weight:500;text-decoration:none;transition:color .2s ease,transform .2s ease}.nav-link:hover{color:var(--ash-gray);transform:translateY(-1px)}.nav-link.active{color:var(--non-photo-blue);font-weight:600}
/*# sourceMappingURL=main.c56c57d5.css.map*/