.hero-content{background-image:url(https://i.imgur.com/dc9kV2N.jpeg);background-position:50%;background-repeat:no-repeat;background-size:cover;border-radius:8px;width:100%;margin-top:0;padding:1.5rem}@media (min-width:1024px){.hero-content{margin-top:20px;padding:2rem}}
.projects-container{flex-direction:column;align-items:center;width:100%;display:flex}.projects-controls{z-index:10;flex-direction:column;align-items:center;gap:.75rem;margin-top:2rem;display:flex}.projects-controls-label{letter-spacing:.08em;text-transform:uppercase;color:#ffffff8c;font-size:.875rem}.projects-filter-toggle{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffff0a;border:1px solid #ffffff1f;border-radius:9999px;flex-wrap:wrap;justify-content:center;align-items:center;gap:.35rem;padding:.35rem;display:flex}.projects-filter-btn{color:#ffffffa6;cursor:pointer;background:0 0;border:none;border-radius:9999px;min-width:4.5rem;height:2.75rem;padding:0 1rem;font-size:.9rem;font-weight:600;transition:color .25s,background-color .25s,transform .25s}.projects-filter-btn:hover{color:#fff;background:#ffffff14}.projects-filter-btn-active{color:#000;background:linear-gradient(135deg,#22c55e,#6366f1);box-shadow:0 8px 24px #22c55e40}.projects-grid{grid-template-columns:1fr;gap:1rem;width:100%;margin-top:1.5rem;display:grid}@media screen and (min-width:768px){.projects-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem}}@media screen and (min-width:1024px){.projects-grid{grid-template-columns:repeat(3,minmax(0,1fr));width:80%}}.project-card{background:#ffffff08;border:1px solid #ffffff14;border-radius:12px;text-decoration:none;transition:border-color .3s,box-shadow .3s,transform .3s;display:block;position:relative;overflow:hidden}.project-card:hover{border-color:#22c55e73;transform:translateY(-2px);box-shadow:0 0 0 1px #6366f140,0 16px 40px #00000059}.project-card-apps:hover{border-color:#22c55e80}.project-card-content:hover{border-color:#6366f180}.project-card-no-motion{opacity:1}.project-card-media{aspect-ratio:16/10;transform-origin:50%;position:relative;overflow:hidden}.project-card-image{-o-object-fit:cover;object-fit:cover;width:100%;height:100%;transition:transform .45s cubic-bezier(.22,1,.36,1)}.project-card:hover .project-card-image{transform:scale(1.04)}.project-card-scrim{pointer-events:none;background:linear-gradient(#0000 35%,#000000bf 100%);position:absolute;inset:0}.project-card-body{z-index:1;flex-direction:column;gap:.55rem;padding:1rem 1.1rem 1.15rem;display:flex;position:absolute;inset:auto 0 0}.project-card-header{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.project-card-badge{letter-spacing:.06em;text-transform:uppercase;border-radius:9999px;align-items:center;padding:.2rem .65rem;font-size:.7rem;font-weight:700;display:inline-flex}.project-card-badge-apps{color:#86efac;background:#22c55e26;border:1px solid #22c55e40}.project-card-badge-content{color:#a5b4fc;background:#6366f126;border:1px solid #6366f140}.project-card-link-icon{color:#ffffffb3;background:#ffffff14;border-radius:9999px;justify-content:center;align-items:center;width:2rem;height:2rem;transition:transform .25s,background-color .25s,color .25s;display:flex}.project-card:hover .project-card-link-icon{color:#fff;background:#ffffff29;transform:translate(2px,-2px)}.project-card-title{color:#fff;font-size:1.15rem;font-weight:700;line-height:1.3}.project-card-description{color:#ffffffad;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.82rem;line-height:1.45;display:-webkit-box;overflow:hidden}.project-card-tech{flex-wrap:wrap;gap:.4rem;display:flex}.project-card-tech-pill{color:#ffffffbf;background:#ffffff14;border:1px solid #ffffff1a;border-radius:9999px;padding:.15rem .55rem;font-size:.72rem;font-weight:500}
.photography-container{scroll-behavior:smooth;flex-direction:column;align-items:center;width:100%;display:flex}.photography-controls{z-index:10;flex-direction:column;align-items:center;gap:.75rem;margin-top:2rem;display:flex}.photography-controls-label{letter-spacing:.08em;text-transform:uppercase;color:#ffffff8c;font-size:.875rem}.photography-columns-toggle{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffff0a;border:1px solid #ffffff1f;border-radius:9999px;align-items:center;gap:.35rem;padding:.35rem;display:flex}.photography-columns-btn{color:#ffffffa6;cursor:pointer;background:0 0;border:none;border-radius:9999px;min-width:2.75rem;height:2.75rem;font-size:.95rem;font-weight:600;transition:color .25s,background-color .25s,transform .25s}.photography-columns-btn:hover{color:#fff;background:#ffffff14}.photography-columns-btn-active{color:#000;background:linear-gradient(135deg,#22c55e,#6366f1);box-shadow:0 8px 24px #22c55e40}.photography-picture-container{grid-gap:10px;grid-auto-flow:dense;width:100%;margin-top:1.5rem;transition:grid-template-columns .45s cubic-bezier(.22,1,.36,1),grid-auto-rows .45s cubic-bezier(.22,1,.36,1);display:grid}@media screen and (min-width:1024px){.photography-picture-container{width:80%}}.photography-picture-container-dimmed{filter:blur(6px)brightness(.55);transition:filter .35s,transform .35s;transform:scale(.985)}.photography-item{cursor:pointer;background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;padding:0;display:flex;position:relative;overflow:hidden}.photography-item:after{content:"";opacity:0;pointer-events:none;background:linear-gradient(#fff0 55%,#00000059 100%);border-radius:8px;transition:opacity .3s;position:absolute;inset:0}.photography-item:hover:after{opacity:1}.photography-item-media{transform-origin:50%;border-radius:8px;justify-content:center;align-items:center;width:100%;height:100%;display:flex;overflow:hidden}.photography-item-no-motion{opacity:1}.photography-item:hover .photography-item-media .photography-item-image{transform:scale(1.04)}.photography-item-image{-o-object-fit:cover;object-fit:cover;border-radius:8px;width:100%;height:100%;transition:transform .45s cubic-bezier(.22,1,.36,1)}.photography-item.landscape{grid-column:span 2}.photography-item.portrait{grid-row:span 2}.photography-item-hidden{visibility:hidden}.photography-lightbox{z-index:9999;justify-content:center;align-items:center;padding:1.5rem;display:flex;position:fixed;inset:0}.photography-lightbox-backdrop{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#000000e0;position:absolute;inset:0}.photography-lightbox-close,.photography-lightbox-nav{z-index:2;color:#fff;cursor:pointer;background:#ffffff14;border:1px solid #ffffff26;justify-content:center;align-items:center;transition:background-color .2s,transform .2s;display:flex;position:absolute}.photography-lightbox-close:hover,.photography-lightbox-nav:hover{background:#ffffff29;transform:scale(1.05)}.photography-lightbox-close{border-radius:9999px;width:2.75rem;height:2.75rem;top:1.25rem;right:1.25rem}.photography-lightbox-nav{border-radius:9999px;width:3rem;height:3rem;top:50%;transform:translateY(-50%)}.photography-lightbox-nav:hover{transform:translateY(-50%)scale(1.05)}.photography-lightbox-nav-prev{left:1rem}.photography-lightbox-nav-next{right:1rem}.photography-lightbox-content{z-index:1;flex-direction:column;align-items:center;max-width:min(92vw,1200px);max-height:88vh;display:flex;position:relative}.photography-lightbox-image{-o-object-fit:contain;object-fit:contain;border-radius:12px;width:auto;max-width:100%;height:auto;max-height:calc(88vh - 4rem);box-shadow:0 24px 80px #00000073}.photography-lightbox-caption{color:#ffffffeb;text-align:center;margin-top:1rem;font-size:1rem}.photography-lightbox-counter{color:#ffffff73;letter-spacing:.06em;margin-top:.35rem;font-size:.875rem}.photography-lightbox-swipe-hint{letter-spacing:.08em;text-transform:uppercase;color:#ffffff59;margin-top:.5rem;font-size:.75rem;display:none}.photography-load-more{flex-direction:column;align-items:center;gap:.85rem;margin-top:1.75rem;display:flex}@media screen and (min-width:1024px){.photography-load-more{width:80%}}.photography-load-more-count{color:#ffffff59;letter-spacing:.04em;font-size:.85rem}.photography-load-more-sentinel{justify-content:center;align-items:center;min-height:3rem;padding:.5rem 0;display:flex}.photography-load-more-status{letter-spacing:.06em;text-transform:uppercase;color:#ffffff59;font-size:.8rem;animation:1.5s ease-in-out infinite photography-load-pulse}@keyframes photography-load-pulse{0%,to{opacity:.35}50%{opacity:.7}}@media screen and (max-width:640px){.photography-lightbox-swipe-hint{display:block}.photography-lightbox-nav{width:2.5rem;height:2.5rem}.photography-lightbox-nav-prev{left:.5rem}.photography-lightbox-nav-next{right:.5rem}.photography-item.landscape{grid-column:span 2}}
.experiences-container{flex-direction:column;align-items:center;width:100%;display:flex}.experiences-timeline{flex-direction:column;gap:0;width:100%;margin-top:2.5rem;padding:0;list-style:none;display:flex}@media screen and (min-width:1024px){.experiences-timeline{width:80%;max-width:720px}}.experience-timeline-item{grid-template-columns:3rem 1fr;align-items:stretch;gap:.85rem;display:grid}.experience-timeline-track{flex-direction:column;align-items:center;padding-top:1.35rem;display:flex;position:relative}.experience-timeline-dot{z-index:1;border-radius:9999px;flex-shrink:0;justify-content:center;align-items:center;width:2.25rem;height:2.25rem;display:flex;position:relative}.experience-timeline-dot-active{color:#86efac;background:#22c55e24;border:2px solid #22c55e73;box-shadow:0 0 20px #22c55e33}.experience-timeline-dot-past{color:#a5b4fc;background:#6366f11f;border:2px solid #6366f159}.experience-timeline-dot-icon{width:1rem;height:1rem}.experience-timeline-connector{background:linear-gradient(#22c55e73 0%,#6366f159 100%);border-radius:9999px;flex:1;width:2px;min-height:1.5rem;margin-top:.35rem}.experience-timeline-card{background:#ffffff06;border:1px solid #ffffff12;border-radius:12px;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1rem;padding:1rem 1.1rem;text-decoration:none;transition:border-color .25s,background-color .25s,transform .25s;display:flex}.experience-timeline-card:hover{background:#ffffff0b;transform:translate(4px)}.experience-timeline-card-active:hover{border-color:#22c55e59}.experience-timeline-card-past:hover{border-color:#6366f159}.experience-timeline-card-main{flex-direction:column;gap:.2rem;min-width:0;display:flex}.experience-timeline-date{letter-spacing:.06em;text-transform:uppercase;color:#ffffff6b;font-size:.72rem;font-weight:600}.experience-timeline-org{color:#fff;font-size:1.05rem;font-weight:700;line-height:1.35}.experience-timeline-role{color:#ffffff94;font-size:.875rem;line-height:1.4}.experience-timeline-arrow{color:#ffffff73;background:#ffffff0d;border-radius:9999px;flex-shrink:0;justify-content:center;align-items:center;width:2rem;height:2rem;transition:color .25s,background-color .25s,transform .25s;display:flex}.experience-timeline-card:hover .experience-timeline-arrow{color:#fff;background:#ffffff1f;transform:translate(2px,-2px)}@media screen and (max-width:480px){.experience-timeline-item{grid-template-columns:2.5rem 1fr;gap:.65rem}.experience-timeline-dot{width:2rem;height:2rem}.experience-timeline-org{font-size:.98rem}}
.contact-container{flex-direction:column;align-items:center;width:100%;display:flex}.contact-card{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffff08;border:1px solid #ffffff1a;border-radius:16px;width:100%;margin-top:2rem;padding:1.5rem}@media screen and (min-width:1024px){.contact-card{width:80%;max-width:640px;padding:2rem}}.contact-text{text-align:center;color:#ffffffa6;font-size:.95rem;line-height:1.6}.contact-actions{flex-wrap:wrap;justify-content:center;gap:.65rem;margin-top:1.5rem;display:flex}.contact-btn{border-radius:9999px;align-items:center;gap:.5rem;padding:.65rem 1.15rem;font-size:.875rem;font-weight:600;text-decoration:none;transition:transform .25s,background-color .25s,border-color .25s;display:inline-flex}.contact-btn:hover{transform:translateY(-1px)}.contact-btn-primary{color:#000;background:linear-gradient(135deg,#22c55e,#6366f1)}.contact-btn-secondary{color:#ffffffd9;background:#ffffff0d;border:1px solid #ffffff26}.contact-btn-secondary:hover{background:#ffffff1a;border-color:#ffffff40}
