.slick-slider{box-sizing:border-box;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;-khtml-user-select:none;-ms-touch-action:pan-y;touch-action:pan-y;-webkit-tap-highlight-color:transparent;display:block;position:relative}.slick-list{margin:0;padding:0;display:block;position:relative;overflow:hidden}.slick-list:focus{outline:none}.slick-list.dragging{cursor:pointer;cursor:hand}.slick-slider .slick-track,.slick-slider .slick-list{transform:translate(0,0)}.slick-track{margin-left:auto;margin-right:auto;display:block;position:relative;top:0;left:0}.slick-track:before,.slick-track:after{content:"";display:table}.slick-track:after{clear:both}.slick-loading .slick-track{visibility:hidden}.slick-slide{float:left;height:100%;min-height:1px;display:none}[dir=rtl] .slick-slide{float:right}.slick-slide img{display:block}.slick-slide.slick-loading img{display:none}.slick-slide.dragging img{pointer-events:none}.slick-initialized .slick-slide{display:block}.slick-loading .slick-slide{visibility:hidden}.slick-vertical .slick-slide{border:1px solid #0000;height:auto;display:block}.slick-arrow.slick-hidden{display:none}
.slick-loading .slick-list{background:#fff url(../media/ajax-loader.d5c1e833.gif) 50% no-repeat}@font-face{font-family:slick;font-weight:400;font-style:normal;src:url(../media/slick.3392c85e.eot);src:url(../media/slick.3392c85e.eot)format("embedded-opentype"),url(../media/slick.265d68e3.woff)format("woff"),url(../media/slick.31421072.ttf)format("truetype"),url(../media/slick.5f2cd927.svg)format("svg")}.slick-prev,.slick-next{cursor:pointer;color:#0000;background:0 0;border:none;outline:none;width:20px;height:20px;padding:0;font-size:0;line-height:0;display:block;position:absolute;top:50%;transform:translateY(-50%)}.slick-prev:hover,.slick-prev:focus,.slick-next:hover,.slick-next:focus{color:#0000;background:0 0;outline:none}.slick-prev:hover:before,.slick-prev:focus:before,.slick-next:hover:before,.slick-next:focus:before{opacity:1}.slick-prev.slick-disabled:before,.slick-next.slick-disabled:before{opacity:.25}.slick-prev:before,.slick-next:before{opacity:.75;color:#fff;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:slick;font-size:20px;line-height:1}.slick-prev{left:-25px}[dir=rtl] .slick-prev{left:auto;right:-25px}.slick-prev:before{content:"←"}[dir=rtl] .slick-prev:before{content:"→"}.slick-next{right:-25px}[dir=rtl] .slick-next{left:-25px;right:auto}.slick-next:before{content:"→"}[dir=rtl] .slick-next:before{content:"←"}.slick-dotted.slick-slider{margin-bottom:30px}.slick-dots{text-align:center;width:100%;margin:0;padding:0;list-style:none;display:block;position:absolute;bottom:-25px}.slick-dots li{cursor:pointer;width:20px;height:20px;margin:0 5px;padding:0;display:inline-block;position:relative}.slick-dots li button{cursor:pointer;color:#0000;background:0 0;border:0;outline:none;width:20px;height:20px;padding:5px;font-size:0;line-height:0;display:block}.slick-dots li button:hover,.slick-dots li button:focus{outline:none}.slick-dots li button:hover:before,.slick-dots li button:focus:before{opacity:1}.slick-dots li button:before{content:"•";text-align:center;opacity:.25;color:#000;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;width:20px;height:20px;font-family:slick;font-size:6px;line-height:20px;position:absolute;top:0;left:0}.slick-dots li.slick-active button:before{opacity:.75;color:#000}
.dropdown-title{font-size:1rem;line-height:1.1rem}.dropdown-description{font-size:.9rem;line-height:.9rem}.tech-tag{cursor:default;background-color:color-mix(in srgb,var(--foreground)5%,transparent);border:1px solid;border-color:color-mix(in srgb,var(--foreground)10%,transparent);color:color-mix(in srgb,var(--foreground)80%,transparent);border-radius:.5rem;align-items:center;gap:.5rem;padding:.5rem .75rem;font-size:.875rem;line-height:1.25rem;transition:all .2s;display:flex}.tech-tag:hover{background-color:color-mix(in srgb,var(--foreground)20%,transparent);border-color:color-mix(in srgb,var(--foreground)30%,transparent)}.carousel-slider .slick-slide{outline:none}.carousel-slider .slick-slide>div{height:500px}.carousel-slider .slick-list{border-radius:1rem;overflow:hidden}.carousel-slider .slick-track{align-items:center;display:flex}.slick-dots,.slick-prev,.slick-next{display:none!important}.project-card-link{border-radius:.75rem;height:100%;display:block}.project-card-link:focus-visible{box-shadow:0 0 0 2px var(--foreground);outline:none}.project-card-container{flex-direction:column;height:100%;padding:0;transition:all .3s;display:flex;overflow:hidden}.project-card-link:hover .project-card-container{transform:translateY(-.25rem);box-shadow:0 25px 50px -12px #00000040}.project-card-image-wrapper{background-color:color-mix(in srgb,var(--text-secondary)5%,transparent);width:100%;height:14rem;position:relative;overflow:hidden}.project-card-image{object-fit:cover;transition:transform .5s}.project-card-link:hover .project-card-image{transform:scale(1.05)}.project-card-overlay{opacity:0;background:linear-gradient(#0000,#0009);align-items:flex-end;padding:1.5rem;transition:opacity .3s;display:flex;position:absolute;inset:0}.project-card-link:hover .project-card-overlay{opacity:1}.project-card-content{flex-direction:column;flex-grow:1;gap:1rem;padding:1.5rem;display:flex}.project-card-title{font-size:1.5rem;font-weight:700;transition:color .15s}.project-card-link:hover .project-card-title{color:var(--text-primary)}.course-history-backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:50;background-color:#000000b3;justify-content:center;align-items:center;padding:1rem;animation:.2s ease-out fadeIn;display:flex;position:fixed;inset:0}.course-history-dialog{background-color:var(--container-background);width:100%;max-width:64rem;max-height:85vh;color:var(--foreground);border-radius:1rem;animation:.3s ease-out slideInBottom;overflow:hidden;box-shadow:0 25px 50px -12px #00000040}.course-history-header{border-bottom:1px solid color-mix(in srgb,var(--foreground)10%,transparent);justify-content:space-between;align-items:center;padding:1.5rem;display:flex}.course-history-content{outline:none;max-height:calc(85vh - 100px);padding:1.5rem;overflow-y:auto}.course-history-grid{grid-template-columns:repeat(1,minmax(0,1fr));gap:1.5rem;display:grid}@media (min-width:768px){.course-history-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.semester-card{border:1px solid color-mix(in srgb,var(--foreground)10%,transparent);border-radius:.75rem;padding:1.25rem;transition:all .2s}.semester-card:hover{border-color:color-mix(in srgb,var(--foreground)20%,transparent);box-shadow:0 10px 15px -3px #0000001a}.semester-header{border-bottom:1px solid color-mix(in srgb,var(--foreground)5%,transparent);justify-content:space-between;align-items:center;margin-bottom:1rem;padding-bottom:.75rem;display:flex}.course-item{border-radius:.5rem;align-items:flex-start;gap:.75rem;padding:.5rem;transition:background-color .15s;display:flex}.course-item:hover{background-color:color-mix(in srgb,var(--text-secondary)5%,transparent)}.course-code{color:color-mix(in srgb,var(--foreground)70%,transparent);background-color:color-mix(in srgb,var(--text-secondary)10%,transparent);text-align:center;border-radius:.375rem;flex-shrink:0;min-width:80px;padding:.25rem .5rem;font-family:monospace;font-size:.75rem;font-weight:600}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideInBottom{0%{opacity:0;transform:translateY(1rem)}to{opacity:1;transform:translateY(0)}}
