:root{--pico-spacing:1rem;--a-card-bg:#13171f;--tooltip-bg:#171c25;--s-fill-bg:#252a3a}.boxed{margin-left:auto;margin-right:auto;width:70%}.container h3:not(.stack-header){margin-bottom:calc(var(--pico-spacing)/2)}button{transition:transform .3s,background-color .5s;outline:0;box-shadow:none}button:hover{transform:scale(1.1)}.center-text{text-align:center;width:65%;margin:auto}.split-container{display:flex;justify-content:space-between;flex-wrap:wrap}.r-side{width:50%}.email-icon{width:24px;height:24px;margin-right:.5em;vertical-align:middle;shape-rendering:auto}.inline-section{display:flex;align-items:center}.inline-section svg{margin-right:8px}.w-30{width:30%}.content{width:35%;margin:auto auto auto 7%}.vertical-hr{height:auto;border-left:1px solid var(--pico-muted-border-color);align-self:stretch;margin:50px}.about{margin-left:90px}@media (max-width:1278px){.center-text,.w-30{width:100%}.overlay-nav>aside>nav{padding-top:1px!important}.empty{display:none}.boxed{width:auto}.split-container{flex-direction:column;align-items:center}.about{margin-left:inherit!important}.content,.r-side{width:100%;margin-bottom:20px;margin-left:auto}}.s-fill{background-color:var(--s-fill-bg)}.stack-header{display:inline-block;margin:0;font-size:1rem;font-weight:400;min-width:6em;text-align:center;background:#181c25;padding:.5em;width:131px}.rounded{border-radius:5px}.empty{pointer-events:none}.section-separator{margin:2rem 0;border:0;border-top:2px solid #ccc}[data-tooltip]:not(a,button,input){border-bottom:none;cursor:default;overflow:visible;z-index:1}.grid-container{background-color:var(--pico-background-color);outline:#181c25 solid 2px;border-radius:.25rem;display:grid;grid-template-columns:repeat(1,1fr);gap:1rem;overflow-y:auto;padding-top:2rem}@media (min-width:768px){.grid-container{grid-template-columns:repeat(2,1fr)}}@media (min-width:992px){.grid-container{grid-template-columns:repeat(3,1fr)}}@media (max-width:767px){.grid-container{max-height:none;overflow-y:visible}.card:hover,.card:hover .card-image{transform:none!important}.card-image{object-fit:contain!important;height:170px}}[data-tooltip]::after,[data-tooltip]::before,[data-tooltip][data-placement=top]::after,[data-tooltip][data-placement=top]::before{background:var(--tooltip-bg);color:#ebebeb}.grid-item{margin-right:6px;margin-left:6px;position:relative;text-align:center;cursor:pointer;z-index:0;display:flex;flex-direction:column;flex:1 1 auto}.grid-item:nth-last-child(-n+3){margin-bottom:10px}.scale{object-fit:scale-down}.card{border:3px solid #191e29;border-radius:8px;overflow:hidden;box-shadow:0 4px 6px rgba(0,0,0,.1);transition:transform .3s,box-shadow .3s;position:relative;display:flex;flex-direction:column;flex:1}.badge,.badge-inline,.tooltip,.tooltip[data-tooltip]{overflow:visible;position:relative}.card:hover{transform:translateY(-10px);box-shadow:0 8px 12px rgba(0,0,0,.2);z-index:1}.card-image{width:100%;height:300px;transition:transform .3s}.subtext{margin-top:.25rem;font-size:.7rem;opacity:.85;font-weight:700}.card-content{text-align:left;padding:1rem;flex:1;max-height:260px}.btn-github,.card-buttons button{padding:.25rem .5rem;font-size:.8rem}.card.no-hover:hover{z-index:initial;color:inherit}.no-effect{transform:none;cursor:inherit}.card-content h3{font-size:1rem;margin:0;transition:color .3s}.card-content p{font-size:.9rem;margin:.5rem 0;transition:color .3s}.card:not(.no-hover):hover .card-content h3,.card:not(.no-hover):hover .card-content p{color:#007bff}.card-buttons{display:flex;justify-content:space-between;align-items:center;margin-top:.5rem;position:relative}.card-buttons button{margin-right:.5rem}.btn-github{background-color:#333;color:#fff;border:none;border-radius:4px;cursor:pointer;transition:background-color .3s;display:flex;align-items:center}.btn-github img{width:15px;height:15px;margin-right:5px}.btn-github:hover{background-color:#555}.card-badges{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.25rem;align-items:center;background:#242b3b;border-radius:3px}.badge img,.card-image,img,svg{outline:0;border:none;box-shadow:none}.badge,.badge-inline{display:inline-block;width:30px;height:30px;outline:0;border-radius:0;display:flex;justify-content:center;align-items:center;z-index:1}.badge-inline,.tooltip{display:inline-block}.circle>ul li{list-style:circle!important}iframe{width:100%;height:1000px}.badge img{max-width:100%;max-height:100%;border-radius:50%}.tooltip{cursor:pointer}.tooltip[data-tooltip]{cursor:pointer;z-index:10}.tooltip:hover[data-tooltip]::after{opacity:1}.ml5{margin-left:5px}.mb7{margin-bottom:7px}.mb2{margin-bottom:2px}body{overflow-x:hidden;overflow-y:auto;--pico-typography-spacing-vertical:2rem}.fade-out{animation:.5s forwards fadeOut}@keyframes fadeOut{to{opacity:0}}.gallery-thumbnails{display:grid;height:300px;width:100%;overflow:hidden;border-radius:4px;gap:4px;grid-template:repeat(2,1fr)/repeat(2,1fr)}.card-image-container .card-image:not(:first-child),.gallery-thumbnails .gallery-thumb:nth-child(n+5),.hidden,.view-grid .btn-case-study,.view-grid .list-only-details{display:none}.gallery-thumbnails img{object-fit:cover;width:100%;height:100%}.gallery-thumbnails:has(img:first-child:last-child) img{grid-column:1/3;grid-row:1/3;object-fit:fill}.gallery-thumbnails:has(img:first-child:nth-last-child(2)) img{grid-row:span 2}.view-list .card-image-container,.view-list .gallery-thumbnails{grid-row:1/-1;border-right:1px solid var(--pico-muted-border-color)}.gallery-thumbnails:has(img:first-child:nth-last-child(3)) img:nth-child(3){grid-column:span 2}.gallery-thumb{width:100%;height:100%;cursor:pointer;transition:transform .2s;background-color:#f0f0f0}.gallery-thumb:hover{transform:scale(1.03);z-index:1}.card-image-container{position:relative;display:inline-block;width:100%}.gallery-button{position:absolute;bottom:12px;right:12px;display:flex;align-items:center;gap:6px;padding:6px 12px 6px 32px;background:rgb(24,28,37,85%);color:#fff;border:none;border-radius:20px;font-size:14px;cursor:pointer;transition:.2s;z-index:2}.gallery-button::before{content:"";position:absolute;left:10px;top:50%;transform:translateY(-50%);width:16px;height:16px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='white' d='M4,4H7L9,2H15L17,4H20A2,2 0 0,1 22,6V18A2,2 0 0,1 20,20H4A2,2 0 0,1 2,18V6A2,2 0 0,1 4,4M12,7A5,5 0 0,0 7,12A5,5 0 0,0 12,17A5,5 0 0,0 17,12A5,5 0 0,0 12,7M12,9A3,3 0 0,1 15,12A3,3 0 0,1 12,15A3,3 0 0,1 9,12A3,3 0 0,1 12,9Z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:center}.gallery-button:hover{background:#181c25;transform:scale(1.05)}.card-image{display:block}.gallery-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,.95);z-index:1000;display:none;flex-direction:column;align-items:center;justify-content:center;padding:1rem}.gallery-overlay.active{display:flex;user-select:none}.gallery-content{display:flex;align-items:center;justify-content:center;position:relative;width:100%;max-width:1200px;margin:0 auto}.gallery-image-container{position:relative;display:flex;justify-content:center;align-items:center;width:100%}.gallery-close,.gallery-nav{position:absolute;background:0 0;border:none;cursor:pointer;color:#fff}.gallery-main-image{max-height:80vh;max-width:80vw;object-fit:contain}.gallery-nav{top:50%;font-size:3rem;padding:1rem;z-index:2}.gallery-prev{left:10px}.gallery-next{right:10px}.gallery-close{top:1rem;right:1rem;font-size:2rem}.card-content details,.grid-item .card-image,.project-content{border-bottom:1px solid var(--pico-muted-border-color)}.gallery-thumbnails-preview{display:flex;gap:.5rem;margin-top:1rem;max-width:100%;overflow-x:auto;padding:.5rem}.gallery-thumbnails-preview img{width:60px;height:60px;object-fit:cover;opacity:.6;cursor:pointer;transition:opacity .2s}.gallery-thumbnails-preview img.active{opacity:1;border:2px solid #fff}.a-card,.r-card{padding:var(--pico-block-spacing-vertical) var(--pico-block-spacing-horizontal)}.contain{object-fit:contain}.grid-container::-webkit-scrollbar{width:10px}.grid-container::-webkit-scrollbar-track{background:rgba(255,255,255,.05);border-radius:4px}.grid-container::-webkit-scrollbar-thumb{background:rgba(255,255,255,.2);border-radius:4px}.grid-container::-webkit-scrollbar-thumb:hover{background:rgba(255,255,255,.3)}.a-card,.r-card{margin-bottom:var(--pico-block-spacing-vertical);border-radius:var(--pico-border-radius);box-shadow:var(--pico-card-box-shadow);background:#171c25;max-width:none}.a-card,.project-row{background:var(--a-card-bg)}.a-card{display:grid}@media (min-width:770px) and (max-width:1279px){.content{width:100%;margin-bottom:20px;margin-left:auto;margin-left:none}}@media (min-width:1536px){.r-card{--pico-block-spacing-vertical:calc(var(--pico-spacing) * 2.25);--pico-block-spacing-horizontal:calc(var(--pico-spacing) * 2.25)}}@media (min-width:1280px){.r-card{--pico-block-spacing-vertical:calc(var(--pico-spacing) * 2);--pico-block-spacing-horizontal:calc(var(--pico-spacing) * 2)}.split-container{flex-wrap:nowrap;flex-direction:row;align-items:center}}@media (min-width:769px) and (max-width:1278px){.split-container{flex-direction:row;align-items:center;flex-wrap:nowrap}}@media (min-width:1024px){.r-card{--pico-block-spacing-vertical:calc(var(--pico-spacing) * 1.75);--pico-block-spacing-horizontal:calc(var(--pico-spacing) * 1.75)}}@media (min-width:768px){.r-card{--pico-block-spacing-vertical:calc(var(--pico-spacing) * 1.5);--pico-block-spacing-horizontal:calc(var(--pico-spacing) * 1.5)}}@media (min-width:576px){.r-card{--pico-block-spacing-vertical:calc(var(--pico-spacing) * 1.25);--pico-block-spacing-horizontal:calc(var(--pico-spacing) * 1.25)}}@media (max-width:575){.a-card,.r-card{max-width:inherit!important}}.project-row .grid{grid-template-columns:250px 1fr;gap:2rem;align-items:start}.project-image{width:100%;height:auto;aspect-ratio:1/1;object-fit:cover;border-radius:.25rem}.project-row.no-image .grid,.view-list .grid-item.no-image .card{grid-template-columns:1fr}summary{margin-top:1rem;font-size:.9rem;cursor:pointer;font-weight:700}.card-content details,.project-content{margin-bottom:1rem;padding-bottom:1rem}.project-content small{font-size:calc(var(--pico-font-size) * .9)!important}@media (min-width:1200px){.project-content small{font-size:calc(var(--pico-font-size) * .97)!important}.project-content details>ul{font-size:calc(var(--pico-font-size) * .85)}.card-content details,.project-content{font-size:calc(var(--pico-font-size) * .6)}}.projects-list{margin-top:.3rem}.grid-container.view-list{display:flex;flex-direction:column;gap:1.5rem;padding-right:10px;grid-template-columns:1fr!important}.view-list .grid-item{width:100%;margin:0;max-width:100%}.view-list .card{display:grid;grid-template-columns:390px 1fr;grid-template-rows:1fr auto;align-items:start;height:auto;min-height:220px;transform:none!important;overflow:visible!important}.view-list .card-image-container{width:100%;height:100%;position:relative;background:var(--a-card-bg)}.view-list .card-image-container .card-image:first-of-type{display:block!important;width:100%}.view-list .card-image-container .card-image:not(:first-of-type),.view-list .gallery-thumbnails img:nth-child(n+5),.view-list .grid-item.no-image .card-image,.view-list .grid-item.no-image .card-image-container,.view-list .grid-item.no-image .gallery-thumbnails{display:none!important}.view-list .gallery-button{bottom:auto!important;top:309px!important;right:12px;display:flex!important}.view-list .gallery-thumbnails{width:100%;height:100%;display:grid!important;grid-template-columns:1fr 1fr;grid-template-rows:110px 110px;align-content:start;gap:2px;padding:0}.view-list .gallery-thumbnails img{width:100%;height:100%;object-fit:cover;display:block;margin:0}.view-list .card-content{grid-column:2;grid-row:1;padding:1.5rem;display:flex;flex-direction:column;max-height:none!important;overflow:visible!important}.view-list .card-content h3{font-size:1.25rem;margin-bottom:.5rem}.view-list .list-only-details{display:block;margin-top:1rem;padding-top:1rem}.view-list .card-buttons{grid-column:2;grid-row:2;padding:0 1.5rem 1.5rem;margin-top:0;align-self:end}.view-list .grid-item.no-image .card-buttons{grid-column:1}@media (max-width:768px){.stack-header{padding:.6em}.gallery-content{flex-direction:column}.gallery-nav{font-size:2rem;padding:.5rem}.vertical-hr{display:none}.a-card{max-width:768px}.project-row .grid{grid-template-columns:1fr}.project-image{max-height:250px}.view-list .card{grid-template-columns:1fr;grid-template-rows:auto}.view-list .card-image-container,.view-list .gallery-thumbnails{height:200px;border-right:none;border-bottom:1px solid var(--pico-muted-border-color)}.view-list .card-content{grid-column:1;grid-row:2}.view-list .card-buttons{grid-column:1;grid-row:3}}.view-list .btn-case-study{display:inline-flex;align-items:center;background-color:#007bff;color:#fff;border:none;border-radius:4px;padding:.25rem .75rem;font-size:.8rem;margin-right:.5rem;transition:background-color .3s}.view-list .btn-case-study:hover{background-color:#0056b3;transform:scale(1.05)}.view-list .card,.view-list .card-content,.view-list .card-image,.view-list .grid-item{cursor:inherit!important}.view-list .btn-case-study,.view-list .btn-github,.view-list summary{cursor:pointer!important}.view-list .card:not(.no-hover):hover .card-content h3,.view-list .card:not(.no-hover):hover .card-content p{color:inherit!important}.view-list .card:hover{transform:none!important;box-shadow:0 4px 6px rgba(0,0,0,.1)!important;cursor:default}.view-controls button.active{background-color:#007bff;color:#fff;border-color:#007bff;opacity:1}.view-controls button:not(.active){opacity:.7}.view-controls button:not(.active):hover{opacity:1}.view-list .card-image-container .card-image{cursor:zoom-in!important}.view-list .card-image-container .card-image:hover{opacity:.9;transition:opacity .2s}