.rounded-button{display:flex;align-items:center;justify-content:center;width:80%;height:60px;padding:0;margin:10px 0;font-size:18px;font-weight:700;color:#fff;text-align:center;text-decoration:none;background-color:#000;border-radius:8px;transition:all .3s ease;box-shadow:0 4px 10px #00000026;background-size:cover;background-position:center;position:relative}.rounded-button:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background-color:#0003;opacity:1;transition:opacity .3s ease;z-index:-1}.rounded-button:hover{background-color:#000;transform:translateY(-2px);box-shadow:0 6px 15px #0003}.rounded-button:hover:before{opacity:.5}.rounded-button--disabled{opacity:.85;filter:grayscale(.6);cursor:pointer;position:relative}.btn-label{position:absolute;transition:opacity .3s ease}.btn-label--visible{opacity:1}.btn-label--hidden{opacity:0}.coming-soon-label{font-size:14px;font-weight:500;letter-spacing:.08em}.container{display:flex;flex-direction:column;justify-content:flex-start;align-items:center;min-height:100vh;width:100vw;padding:60px 0 80px;box-sizing:border-box}.profile-img{width:20vw;height:20vw;border-radius:50%;object-fit:cover;border:8px solid white;box-shadow:0 4px 20px #ffffff1a;background-color:#fff;display:block;box-sizing:border-box}.profile-img-wrapper{display:flex;flex-direction:column;justify-content:center;margin-bottom:16px}.profile-video{object-fit:cover;height:260px;width:260px;border-radius:50%;height:30vw;width:30vw}.profile-desc{display:flex;flex-direction:column;justify-content:center;align-items:center;margin:0 0 24px;gap:10px}h1{font-size:1.5em;margin-bottom:4px!important}.profile-sub-heading{margin:0;font-size:.8em;text-align:center}body{background-color:#070707}.landing-page{overflow:hidden;margin:0;padding:0;height:100vh;width:100vw}body.landing-page-active{overflow:hidden}.bg{position:fixed;top:-50%;left:-50%;right:-50%;bottom:-50%;width:200%;height:200vh;background:transparent url(http://assets.iceable.com/img/noise-transparent.png) repeat 0 0;background-repeat:repeat;animation:bg-animation .2s infinite;opacity:.9;visibility:visible;z-index:-5}.social-links{display:flex;gap:1.2em;align-items:center;justify-content:center}.social-link{transition:all .3s ease;display:flex;align-items:center;justify-content:center}.social-link:hover{transform:translateY(-2px);filter:brightness(1.5)}.footer{position:fixed;bottom:1em;left:0;right:0;text-align:center;z-index:1}.copyright{color:#ffffff40;font-size:.72em;font-weight:300}.coming-soon-toast{position:fixed;bottom:2.5em;left:50%;transform:translate(-50%);background:rgba(255,255,255,.12);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#ffffffe6;font-size:.82em;font-weight:500;padding:.5em 1.4em;border-radius:20px;border:1px solid rgba(255,255,255,.15);pointer-events:none;animation:toast-in-out 2s ease forwards;z-index:100}@keyframes toast-in-out{0%{opacity:0;transform:translate(-50%) translateY(6px)}15%{opacity:1;transform:translate(-50%) translateY(0)}75%{opacity:1}to{opacity:0}}.kofi-btn{position:fixed;bottom:1em;left:50%;transform:translate(-50%);background-color:#ffd000;color:#000;border:none;border-radius:24px;padding:.65em 1.6em;font-size:1em;font-weight:600;cursor:pointer;display:flex;align-items:center;gap:.6em;z-index:1000;white-space:nowrap;overflow:visible}.kofi-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:999}.kofi-panel{position:fixed;bottom:4em;left:50%;transform:translate(-50%);width:328px;height:min(780px,calc(100dvh - 6em));background:white;border-radius:12px;overflow:hidden;box-shadow:0 8px 32px #0000004d;display:flex;flex-direction:column;z-index:1000;animation:kofi-slide-up .3s ease forwards}@keyframes kofi-slide-up{0%{opacity:0;transform:translate(-50%) translateY(20px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.kofi-panel-closing{animation:kofi-slide-down .25s ease forwards}@keyframes kofi-slide-down{0%{opacity:1;transform:translate(-50%) translateY(0)}to{opacity:0;transform:translate(-50%) translateY(20px)}}.kofi-panel iframe{flex:1;border:none;width:100%}.kofi-panel a{text-align:center;padding:.5em;font-size:.8em;color:#555}.kofi-close{position:absolute;top:.5em;right:.5em;background:rgba(0,0,0,.1);border:none;border-radius:50%;width:28px;height:28px;cursor:pointer;font-size:.85em;z-index:1}.bg{position:fixed;top:-50%;left:-50%;right:-50%;bottom:-50%;width:200%;height:200vh;background:transparent url(http://assets.iceable.com/img/noise-transparent.png) repeat 0 0;background-repeat:repeat;animation:bg-animation .2s infinite;opacity:.9;visibility:visible;z-index:-5}img{border-radius:12px;width:100%;height:100%;object-fit:cover;transition:transform .4s ease}.photography-page{background-color:#f7f5f2;min-height:100vh;position:relative;width:100%;overflow-x:hidden;font-family:DM Sans,sans-serif;color:#1a1a1a}.photography-page .bg{position:fixed;top:-50%;left:-50%;right:-50%;bottom:-50%;width:200%;height:200vh;background:transparent url(http://assets.iceable.com/img/noise-transparent.png) repeat 0 0;background-repeat:repeat;animation:bg-animation .2s infinite;opacity:.25;visibility:visible;z-index:-5}.photography-page #header{padding:1.4em 1.8em .2em}.photography-page #header .name{color:#1a1a1a;font-family:DM Sans,sans-serif;font-size:1.8rem;font-weight:600;letter-spacing:-.03em}.photography-page #header .title{color:#999;font-size:.72rem;font-weight:400;letter-spacing:.14em;text-transform:uppercase;margin-top:3px}.photography-page #header .icons{margin-top:.5em}.photography-page #header .icons svg{fill:#00000040;transition:fill .3s ease}.photography-page #header .icons svg:hover{fill:#000000b3}.profile-section{margin:-2.5em 0 0;padding:0 1.8em .8em;display:flex;flex-direction:column;gap:1.4em}.profile-image{margin:0;-webkit-mask-image:linear-gradient(to bottom,transparent 0%,black 18%);mask-image:linear-gradient(to bottom,transparent 0%,black 18%)}.profile-image img{width:100%;aspect-ratio:9/10;border-radius:16px;object-fit:cover;object-position:center 45%;display:block}.about{margin:0!important}.photography-page .about-body{padding:0}.photography-page .about-body p{color:#555;font-size:.95rem;line-height:1.75;font-weight:400;margin:0}.photography-page .about-body .highlight{color:#1a1a1a;font-weight:500}.gallery-section{padding:1.2em 1.8em 2em}.section-header{margin-bottom:.3em;text-align:left}.section-title{color:#1a1a1a;font-family:DM Sans,sans-serif;font-size:1.7rem;font-weight:600;letter-spacing:-.03em;line-height:1.2;margin:0}.section-subtitle{color:#aaa;font-size:.65rem;font-weight:400;text-transform:uppercase;letter-spacing:.15em;margin-bottom:.4em}.section-description{margin:.4em 0 1.6em;text-align:left}.section-description p{color:#555;font-size:.88rem;line-height:1.7;font-weight:400;margin:0}.photo-grid{display:grid;grid-template-columns:1fr 1fr;gap:.5rem}.photo-item{position:relative;overflow:hidden;border-radius:12px;cursor:pointer;background:#e8e4df}.photo-item:active img{transform:scale(1.02)}.photo-item.large{grid-column:span 2;aspect-ratio:3/2}.photo-item.medium{grid-column:span 1;aspect-ratio:3/4}.photo-item.medium:last-child:nth-child(2n){grid-column:span 2;aspect-ratio:3/2}.photo-item.medium:last-child:nth-child(2n) img{object-position:top}.photo-item.small{grid-column:span 1;aspect-ratio:1/1}.connect-section{margin:0;padding:2em 1.8em 5em}.connect-content h2{color:#1a1a1a;font-family:DM Sans,sans-serif;font-size:1.7rem;font-weight:600;letter-spacing:-.03em;margin:0 0 .6rem;line-height:1.2}.connect-content p{color:#888;font-size:.88rem;line-height:1.75;margin:0 0 2rem;font-weight:400}.connect-button{background:#1a1a1a;color:#f7f5f2;border:none;padding:.85rem 2rem;font-family:DM Sans,sans-serif;font-size:.85rem;font-weight:500;letter-spacing:.02em;border-radius:50px;cursor:pointer;transition:background .2s ease,transform .2s ease}.connect-button:hover{background:#333;transform:translateY(-1px)}.connect-button:active{transform:translateY(0)}.bg{position:fixed;top:-50%;left:-50%;right:-50%;bottom:-50%;width:200%;height:200vh;background:transparent url(http://assets.iceable.com/img/noise-transparent.png) repeat 0 0;background-repeat:repeat;animation:bg-animation .2s infinite;opacity:.9;visibility:visible;z-index:-5}.card-container{width:100%;height:16em;margin-bottom:2em;border-radius:15px;color:#ffffffe6;position:relative;background-color:#1d1d1d}#root{margin:0;height:200vh;width:100vw}body{margin:0;font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";background-color:#070707;color:#fff;text-align:left}h1{margin:0}#header{margin:2em 0 0 1.5em}#container{overflow:hidden;justify-content:flex-start;align-items:flex-start;justify-items:flex-start}.name{font-size:3em;justify-self:flex-start;font-weight:600;color:#fff;opacity:90%;margin-bottom:.2em}.title{font-size:1em;color:#fff;opacity:90%;margin-left:.1em;margin-bottom:1.1em}.bg{position:fixed;top:-50%;left:-50%;right:-50%;bottom:-50%;width:200%;height:200vh;background:transparent url(http://assets.iceable.com/img/noise-transparent.png) repeat 0 0;background-repeat:repeat;animation:bg-animation .2s infinite;opacity:.9;visibility:visible;z-index:-5}.about{margin:2em 1.5em 0;line-height:1.7em}.about-title{color:#fff;opacity:90%;margin-bottom:1em;font-size:1.1em;font-weight:600}.projects-title{color:#fff;opacity:90%;margin-bottom:2em;font-size:1.1em;font-weight:600}.about-body{color:#fff;color:#fff9;margin-bottom:2.5em;font-size:.9em}.icons{display:flex;flex-direction:row;list-style:none;padding:0;margin-bottom:3em}.linkedin{margin-right:.8em;margin-top:.1em}.github,.instagram{margin-right:.8em}.projects{margin:3em 1.5em 4em}.highlight{color:#ffffffe6;font-weight:600}.card-link{text-decoration:none;color:inherit;display:block;transition:transform .3s ease}.card-link:hover{transform:translateY(-4px)}.card-container{width:100%;height:16em;margin-bottom:2em;border-radius:15px;color:#ffffffe6;position:relative;background-color:#1d1d1d;transition:box-shadow .3s ease}.card-link:hover .card-container{box-shadow:0 8px 25px #0000004d}.card-img{object-fit:cover;width:100%;height:60%;margin-bottom:.5em;border-radius:15px 15px 0 0}.card-title{margin-left:1em;margin-top:.5em;font-size:1.1em}.card-description{margin-left:1.3em;margin-right:1.3em;opacity:60%;margin-top:.8em;font-size:.8em}.arrow{position:absolute;top:0;right:0;padding:.5em}.project-detail-page{min-height:100vh;background:linear-gradient(135deg,#0a0a0a 0%,#1a1a1a 50%,#0f0f0f 100%);color:#fff;position:relative;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.project-not-found{min-height:100vh;display:flex;flex-direction:column;justify-content:center;align-items:center;background:linear-gradient(135deg,#0a0a0a 0%,#1a1a1a 50%,#0f0f0f 100%);color:#fff}.not-found-content{text-align:center;padding:2rem}.not-found-content h2{font-size:2.5rem;font-weight:700;margin-bottom:1rem;color:#fff}.not-found-content p{font-size:1.1rem;color:#ffffffb3;margin-bottom:2rem}.back-link{color:#fff;text-decoration:none;font-size:1.1rem;transition:all .3s ease;padding:.8rem 1.5rem;border:1px solid rgba(255,255,255,.3);border-radius:8px;background:rgba(255,255,255,.1)}.back-link:hover{color:#000;background:rgba(255,255,255,.9);border-color:#ffffff80;transform:translateY(-2px)}.project-header{padding:3rem 2rem 2rem;position:relative;z-index:10;background:linear-gradient(180deg,rgba(0,0,0,.8) 0%,transparent 100%)}.back-button{display:inline-flex;align-items:center;gap:.5rem;color:#fff;text-decoration:none;font-size:1rem;margin-bottom:2rem;transition:all .3s ease;font-weight:500;padding:.8rem 1.2rem;border-radius:8px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.2)}.back-button:hover{color:#000;background:rgba(255,255,255,.9);border-color:#fff6;transform:translate(-4px)}.back-button svg{transition:transform .3s ease}.back-button:hover svg{transform:translate(-2px)}.project-header h1{font-size:3.5rem;font-weight:700;margin:0;letter-spacing:-.02em;line-height:1.1;color:#fff;text-align:center}.project-hero{padding:0 2rem 4rem;position:relative;z-index:10}.image-container{position:relative;max-width:900px;margin:0 auto;border-radius:20px;overflow:hidden;box-shadow:0 25px 80px #0006}.project-image{width:100%;height:auto;display:block;transition:transform .5s ease}.image-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,rgba(255,255,255,.1) 0%,transparent 50%,rgba(0,0,0,.2) 100%);pointer-events:none}.image-container:hover .project-image{transform:scale(1.02)}.project-content{max-width:900px;margin:0 auto;padding:0 2rem 6rem;position:relative;z-index:10}.project-section{margin-bottom:4rem;padding:2rem;background:rgba(255,255,255,.02);border-radius:16px;border:1px solid rgba(255,255,255,.05);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:all .3s ease}.project-section:hover{background:rgba(255,255,255,.04);border-color:#fff3;transform:translateY(-2px);box-shadow:0 10px 40px #0000004d}.project-detail-page .section-header{display:none}.project-section p{font-size:1.2rem;line-height:1.8;color:#ffffffe6;margin:0;font-weight:400}.tools-grid{display:flex;flex-wrap:wrap;gap:1rem}.tool-tag{background:linear-gradient(135deg,rgba(255,255,255,.15) 0%,rgba(255,255,255,.05) 100%);color:#fff;padding:.7rem 1.2rem;border-radius:25px;font-size:.95rem;font-weight:500;border:1px solid rgba(255,255,255,.3);transition:all .3s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.tool-tag:hover{background:linear-gradient(135deg,rgba(255,255,255,.25) 0%,rgba(255,255,255,.15) 100%);border-color:#ffffff80;transform:translateY(-2px);box-shadow:0 5px 20px #fff3}.features-list{list-style:none;padding:0;margin:0}.features-list li{font-size:1.2rem;line-height:1.7;color:#ffffffe6;margin-bottom:1.2rem;padding-left:2rem;position:relative;font-weight:400}.features-list li:before{content:"✦";color:#fff;font-weight:700;position:absolute;left:0;top:0;font-size:1.1rem;animation:pulse 2s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}.links-grid{display:flex;flex-wrap:wrap;gap:1.2rem}.project-link{display:flex;align-items:center;gap:.8rem;background:linear-gradient(135deg,rgba(255,255,255,.15) 0%,rgba(255,255,255,.05) 100%);color:#fff;text-decoration:none;padding:1rem 1.8rem;border-radius:12px;font-size:1.1rem;font-weight:500;border:1px solid rgba(255,255,255,.3);transition:all .3s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);min-width:140px;justify-content:center}.project-link:hover{background:linear-gradient(135deg,rgba(255,255,255,.25) 0%,rgba(255,255,255,.15) 100%);border-color:#ffffff80;transform:translateY(-3px);box-shadow:0 10px 30px #ffffff4d}.project-link svg{transition:transform .3s ease}.project-link:hover svg{transform:translate(3px,-3px)}@media (max-width: 768px){.project-header{padding:2rem 1.5rem 1.5rem}.project-header h1{font-size:2.5rem}.project-hero{padding:0 1.5rem 3rem}.project-content{padding:0 1.5rem 4rem}.project-section{padding:1.5rem;margin-bottom:3rem}.project-detail-page .section-header h2{font-size:1.6rem}.project-section p,.features-list li{font-size:1.1rem}.links-grid{flex-direction:column}.project-link{justify-content:center}}@media (max-width: 480px){.project-header{padding:1.5rem 1rem 1rem}.project-header h1{font-size:2rem}.project-hero{padding:0 1rem 2rem}.project-content{padding:0 1rem 3rem}.project-section{padding:1.2rem;margin-bottom:2.5rem}.tools-grid{gap:.8rem}.tool-tag{font-size:.9rem;padding:.6rem 1rem}.project-link{padding:.9rem 1.5rem;font-size:1rem}}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#root{min-height:100vh}@keyframes bg-animation{0%{transform:translate(0)}10%{transform:translate(-5%,-5%)}20%{transform:translate(-10%,5%)}30%{transform:translate(5%,-10%)}40%{transform:translate(-5%,15%)}50%{transform:translate(-10%,5%)}60%{transform:translate(15%)}70%{transform:translateY(10%)}80%{transform:translate(-15%)}90%{transform:translate(10%,5%)}to{transform:translate(5%)}}
