:root{--bg-color:#f5f5e5;--text-color:#200000;--border-color:#dadada;--shadow-light:0 2.8px 2.2px rgba(0, 0, 0, 0.02),
        0 6.7px 5.3px rgba(0, 0, 0, 0.028),
        0 12.5px 10px rgba(0, 0, 0, 0.035),
        0 22.3px 17.9px rgba(0, 0, 0, 0.042),
        0 41.8px 33.4px rgba(0, 0, 0, 0.05),
        0 100px 80px rgba(0, 0, 0, 0.07);--shadow-dark:0 2.8px 2.2px rgba(0, 0, 0, 0.2),
        0 6.7px 5.3px rgba(0, 0, 0, 0.28),
        0 12.5px 10px rgba(0, 0, 0, 0.35),
        0 22.3px 17.9px rgba(0, 0, 0, 0.42),
        0 100px 80px rgba(0, 0, 0, 0.7);--key-shadow:oklch(0% 0 0 / 0.05);--ambient-shadow:oklch(0% 0 0 / 0.5);--dark-highlight:oklch(80% 0 0 / 0.15);--inset1:inset -1px -1px 0.5px 0.5px var(--dark-highlight), inset 0px 1px 1.5px var(--ambient-shadow), inset 0px 1px 1.5px 1px var(--key-shadow);--elevation-1:inset 0px 1px 2px var(--dark-highlight), 0px 1px 2px var(--ambient-shadow), 0px 1px 3px 1px var(--key-shadow);--elevation-2:inset 0px 1px 2px var(--dark-highlight), 0px 1.5px 2.5px var(--ambient-shadow), 0px -1.5px 3.5px 1px var(--key-shadow);--elevation-3:inset 2px 6px 8px var(--dark-highlight), 0px 3px 6px 3px var(--key-shadow), 0px 1px 3px var(--ambient-shadow);--color-red:hsl(13, 100%, 87%);--color-orange:hsl(27, 98%, 84%);--color-yellow:hsl(46, 83%, 80%);--color-green:hsl(66, 45%, 79%);--color-cyan:hsl(158, 47%, 83%);--color-blue:hsl(199, 42%, 84%);--color-purple:hsl(274, 27%, 88%);--color-magenta:hsl(345, 88%, 90%)}*{box-sizing:border-box;margin:0;padding:0}html{scrollbar-width:1rem}html::-webkit-scrollbar{display:none}body{font-family:syne,sans-serif;background-color:var(--bg-color);color:var(--text-color);line-height:1.4;overflow-x:hidden;overscroll-behavior-y:none}a{color:inherit;text-decoration:none}:root{--bg-color:#f7f7f5;--text-color:#200000;--color-on-surface:#200000;--paper-noise:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.1' numOctaves='1'/%3E%3CfeColorMatrix type='matrix' values='0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.035 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}[data-theme=dark]{--bg-color:#111111;--text-color:#f7f7f5;--color-on-surface:#f7f7f5;--paper-noise:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.1' numOctaves='1'/%3E%3CfeColorMatrix type='matrix' values='0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0.05 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");--color-red:hsl(13, 40%, 25%);--color-orange:hsl(27, 40%, 23%);--color-yellow:hsl(46, 35%, 20%);--color-green:hsl(66, 25%, 20%);--color-cyan:hsl(158, 25%, 20%);--color-blue:hsl(199, 25%, 22%);--color-purple:hsl(274, 20%, 24%);--color-magenta:hsl(345, 35%, 24%)}body,main,footer,.layout{font-family:cardo,serif;background-color:var(--bg-color);background-image:var(--paper-noise);background-size:2rem;color:var(--text-color);transition:background-color 0s,color 0s;line-height:1.25}h1,h2,h3,h4,h5,h6,.main-header,.marquee-inner,.filter-label,.filter-chip,.card-title{font-family:syne,sans-serif}mark{--color:var(--color-green);display:inline-block;position:relative;background-color:initial;isolation:isolate;color:inherit;&::before{position:absolute;inset:.25;content:'';width:calc(100% + .5ch);left:-.15ch;height:110%;top:-5%;border-radius:4% 2%;border-bottom-right-radius:20% 30%;background-color:var(--color);opacity:.75;box-shadow:inset -2px 0 1px hsl(from var(--color) h s calc(l - 15)),inset -4px 0 5px hsl(from var(--color) h s calc(l - 15));filter:url(#filter-rough);z-index:-1;transition:width .2s cubic-bezier(.16,1,.3,1),opacity .3s}&::after{position:absolute;content:'';height:.95em;width:.25em;top:0;left:-.05em;background:radial-gradient( hsl(from var(--color) h s calc(l - 15)),hsl(from var(--color) h s l) );opacity:.6;border-radius:10% 20% 35% 30%;rotate:0;filter:url(#filter-rough);z-index:-1}&:hover::before{width:calc(100% + .5em);opacity:.8;box-shadow:inset -2px 0 1px hsl(from var(--color-yellow) h s calc(l - 15)),inset -4px 0 5px hsl(from var(--color-green) h s calc(l - 15))}}.aoc-overlay-container{position:fixed;inset:0;width:100vw;height:100vh;background-color:#000;color:#f5f5e5;background-image:var(--paper-noise);background-size:2rem;z-index:1000;display:flex;align-items:center;justify-content:center;overflow-y:auto;opacity:1;transform:scale(1);visibility:visible;transition:opacity 1.2s cubic-bezier(.16,1,.3,1),transform .6s cubic-bezier(.16,1,.3,1),visibility 1.2s;&.is-active{opacity:1;visibility:visible}}.aoc-page{height:100vh;max-width:65ch;margin:12vh auto;padding-bottom:25vh;font-size:clamp(1.25rem,5vw,4.5rem);.aoc-prefix{font-family:syne,sans-serif;font-size:clamp(.5rem,2vw,.75rem);font-weight:800;text-transform:uppercase;letter-spacing:.15em;opacity:.4;display:block;margin-bottom:1.5rem}p:first-of-type::first-letter{float:none;font-size:inherit;line-height:inherit;margin:0;color:inherit}.aoc-lead{font-size:clamp(1.rem,2vw,1.4rem);line-height:1.6;font-weight:400;color:var(--text-color);margin-bottom:2.5rem}.aoc-actions{margin-top:5rem;display:flex;gap:1.5rem}p{font-size:clamp(1rem,2vw,1.25rem)}}.standard-page{max-width:75ch;margin:10vh auto;font-size:1.05rem;line-height:1.5;text-wrap:pretty;padding:0 2rem;padding-bottom:20vh;translate:-4vw;h1{font-family:syne,sans-serif;font-size:clamp(1.5rem,5vw,4.5rem);font-weight:600;line-height:1;letter-spacing:-.03em;margin-bottom:2rem;text-transform:uppercase;border-left:.4rem solid var(--text-color);padding-left:2rem;margin-left:-2rem}p{margin-bottom:2rem;color:color-mix(in srgb,var(--text-color) 90%,transparent)}p:first-of-type::first-letter{font-family:cardo,serif;font-weight:800;float:left;font-size:clamp(1.5rem,5vw,4.5rem);line-height:.8;margin-right:.2rem;margin-top:.4rem;color:var(--text-color)}strong, b{font-weight:700;color:var(--text-color)}a{color:var(--text-color);font-weight:700;text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:1px;transition:opacity .2s ease;&:hover{opacity:.6}}p:last-of-type{margin-top:4rem;padding:2rem;background:color-mix(in srgb,var(--text-color) 3%,transparent);border-radius:4px;font-style:italic;font-size:clamp(1rem,2vw,1.25rem)}}.standard-page::before{content:"";display:block;width:4rem;height:1px;background:var(--text-color);margin-bottom:2rem;opacity:.2}.card-image{background-size:2rem;z-index:4;position:relative;max-width:inherit;img{max-width:100%;height:auto;max-height:80dvh}}.component,#hover-image-display{background-color:var(--bg-color);background-image:var(--paper-noise);outline:1px solid color-mix(in srgb,var(--color-on-surface) 5%,transparent);outline-offset:-1px;background-size:1rem}.component{padding:1rem}.component.card{box-shadow:var(--inset1)}.component.card.prev,.component.card.next{display:flex;justify-content:space-between;align-items:center;flex-direction:row;width:100%;margin-bottom:1rem;outline:1px solid color-mix(in srgb,var(--color-on-surface) 5%,transparent);background-color:var(--key-shadow);backdrop-filter:contrast(1.05);max-width:20rem;position:relative;isolation:isolate;&::before{position:absolute;content:'';width:calc(100%);height:95%;border-radius:4% 2%;background-color:var(--color);opacity:0;filter:url(#filter-rough);z-index:-1;transition:transform .4s cubic-bezier(.16,1,.3,1),opacity .3s ease}}.component.card.next{.page-direction{order:2}&::before{left:-.15ch;border-bottom-right-radius:20% 30%;box-shadow:inset -2px 0 1px hsl(from var(--color) h s calc(l - 15)),inset -4px 0 5px hsl(from var(--color) h s calc(l - 15));transform:scaleX(0);transform-origin:left center}&:hover::before{opacity:1;transform:scaleX(1);box-shadow:inset -2px 0 1px hsl(from var(--color-yellow) h s calc(l - 15)),inset -4px 0 5px hsl(from var(--color-green) h s calc(l - 15))}}.component.card.prev{&::before{right:-.15ch;border-bottom-left-radius:20% 30%;box-shadow:inset 2px 0 1px hsl(from var(--color) h s calc(l - 15)),inset 4px 0 5px hsl(from var(--color) h s calc(l - 15));transform:scaleX(0);transform-origin:right center}&:hover::before{opacity:1;transform:scaleX(1);box-shadow:inset 2px 0 1px hsl(from var(--color-yellow) h s calc(l - 15)),inset 4px 0 5px hsl(from var(--color-green) h s calc(l - 15))}}.layout-panes{display:flex;flex-wrap:wrap;gap:4vw;padding:0 4vw 10vh;align-items:flex-start}.filter-sidebar{flex:1 1 300px;max-width:400px;position:sticky;top:15vh}.filter-sidebar.list-controls{display:flex;flex-direction:column;margin-left:0;flex:0 1 20%}.sidebar-filter-body{flex-direction:column;align-items:flex-start;margin-top:1.5rem}.sidebar-filter-body .control-group{flex-direction:column;align-items:flex-start;gap:.5rem;width:100%}.gallery-pane{flex:3 1 600px;min-width:0}.gallery-grid-parallax{display:flex;flex-direction:column;gap:3rem;width:100%}.gallery-col{display:flex;flex-direction:column;gap:3rem;width:100%;transform:skewY(-5deg);transition:.6s cubic-bezier(.55,.085,.68,.53);&:hover{transform:skewY(0);transition:.6s ease-in-out}}@media(min-width:1024px){.gallery-grid-parallax{flex-direction:row;transform-origin:top left;padding-top:15vh;padding-bottom:15vh}.component.gallery-card{transform:skewY(5deg)}.profile-portfolio.component.gallery-card{transform:skewY(0)}@supports(animation-timeline:scroll()){.gallery-col.col-1{animation:parallax-slow linear both;animation-timeline:scroll(root)}.gallery-col.col-3{animation:parallax-fast linear both;animation-timeline:scroll(root)}}}@keyframes parallax-slow{from{transform:translateY(0)}to{transform:translateY(360px)}}@keyframes parallax-fast{from{transform:translateY(0)}to{transform:translateY(-360px)}}.component.gallery-card{outline:none;width:100%;position:relative;opacity:1;max-width:fit-content;transform:skew(0);&:hover{transform:skewY(0);transition:cubic-bezier(.55,.085,.68,.53)}}@supports(animation-timeline:view()){.component.gallery-card{opacity:0;animation:gallery-reveal linear both;animation-timeline:view();animation-range:entry 5% cover 20%}}@keyframes gallery-reveal{from{opacity:0;transform:translateY(80px)scale(.95);filter:blur(5px)}to{opacity:1;transform:translateY(0)scale(1);filter:blur(0)}}.gallery-card .card-image{overflow:hidden;border-radius:2px}.gallery-card img{width:100%;height:auto;max-height:70vh;display:block;transition:transform .8s cubic-bezier(.16,1,.3,1)}.gallery-card:hover img{transform:scale(1.05)}.gallery-card .card-content{margin-top:1rem;display:flex;flex-direction:column;gap:.25rem}.gallery-card .card-title{font-family:syne,sans-serif;font-size:1.25rem;font-weight:600}.gallery-card .card-meta{font-family:cardo,serif;font-size:.9rem;opacity:.6;text-transform:uppercase;letter-spacing:.05em}.page-navigation{display:flex;justify-content:space-between;gap:1rem;width:100%;padding-inline:1rem;margin-top:2rem}.list-zoom-container{position:fixed;left:1vw;top:50%;transform:translateY(-50%);display:flex;flex-direction:column;align-items:center;gap:3rem;z-index:90;opacity:.3;transition:opacity .3s ease}.list-zoom-container:hover{opacity:1}.zoom-btn{background:0 0;border:none;font-family:courier,sans-serif;font-size:2rem;font-weight:400;color:var(--text-color);cursor:pointer;outline:none;box-shadow:var(--inset1);border-radius:50%;width:2rem;height:2rem;text-indent:.1rem;line-height:1.25rem}.zoom-slider-wrapper{position:relative;height:30vh;width:20px}.zoom-slider{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)rotate(-90deg);width:30vh;height:1px;appearance:none;background:var(--text-color);outline:none;cursor:ns-resize}.zoom-slider::-webkit-slider-thumb{appearance:none;width:12px;height:12px;border-radius:50%;background:var(--bg-color);border:1.5px solid var(--text-color);cursor:ns-resize}.zoom-slider::-moz-range-thumb{width:12px;height:12px;border-radius:50%;background:var(--bg-color);border:1.5px solid var(--text-color);cursor:ns-resize}.archive-form{margin-top:4rem;padding:2.5rem;border-radius:4px;font-family:cardo,serif;.form-container{display:flex;flex-direction:column;gap:2rem}.field-row{display:flex;gap:2rem;width:100%;.field{flex:1}}.field{display:flex;flex-direction:column;gap:.5rem;width:100%}label{font-family:cardo,sans-serif;font-size:.75rem;font-weight:800;letter-spacing:.1em;opacity:.6;text-transform:uppercase}input, textarea, select{background:0 0;border:none;border-bottom:1px solid var(--text-color);padding:.8rem 0;font-family:cardo,serif;font-size:1.1rem;color:var(--text-color);outline:none;width:100%;transition:border-color .3s ease;&::placeholder{opacity:.3}&:focus{border-bottom-width:2px}}select{cursor:pointer;appearance:none;border-radius:0}.file-label{border:1px dashed color-mix(in srgb,var(--text-color) 30%,transparent);padding:2rem;text-align:center;cursor:pointer;transition:background .3s ease;&:hover{background:color-mix(in srgb,var(--text-color) 3%,transparent)}input{display:none}}.form-actions{margin-top:1rem;justify-content:center;display:flex}}::view-transition-old(root),::view-transition-new(root){animation:none;mix-blend-mode:normal}::view-transition-new(root){z-index:1}.theme-toggle{background:0 0;border:none;cursor:pointer;padding:10px;margin-left:2rem;perspective:1e3px;width:44px;height:44px;display:flex;align-items:center;justify-content:center;outline:none;transition:.2s ease-in-out}.toggle-sphere{position:relative;width:24px;height:24px;transition:transform .5s cubic-bezier(.4,0,.8,1);transform-style:preserve-3d}.filter-chip:active::before{transition:none!important}[data-theme=dark] .toggle-sphere{transform:rotateY(180deg)}.face{position:absolute;inset:0;width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:var(--text-color);backface-visibility:hidden;-webkit-backface-visibility:hidden;transition:opacity .5s ease;pointer-events:none}.face.sun{opacity:1}.face.moon{opacity:0;transform:rotateY(180deg)}[data-theme=dark] .face.sun{opacity:0}[data-theme=dark] .face.moon{opacity:1}.face svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:2}.theme-toggle:hover{transform:rotateY(30deg);transition:.3s ease-in-out}.theme-toggle svg{width:24px;height:24px;fill:currentColor}.main-header{display:flex;justify-content:space-between;align-items:flex-start;padding:2vw 4vw;font-size:1.1rem;font-weight:500;text-transform:uppercase;position:fixed;top:0;left:0;width:100%;max-width:98vw;background:0 0;pointer-events:none;z-index:10}.site-title,.nav-links,#mobile-nav{pointer-events:auto}.nav-links{display:flex;align-items:center;max-width:100%;justify-content:space-between;gap:.5rem;a{margin-left:2rem;position:relative;text-decoration:none;isolation:isolate;background-color:color-mix(in srgb,var(--bg-color) 30%,transparent);background-image:var(--paper-noise);padding:.2rem;&::before{content:"";position:absolute;left:-.35rem;bottom:0;width:0;height:100%;background-color:var(--color-green);opacity:0;filter:url(#filter-rough);z-index:-1;mix-blend-mode:multiply;transition:width .3s cubic-bezier(.16,1,.3,1),opacity .15s;border-bottom-right-radius:10px 15px}&::after{content:"";position:absolute;width:100%;height:100%;top:0;left:-.5rem;background-image:var(--paper-noise);outline:1px #f5f5f5;backdrop-filter:blur(9px);border:1px solid color-mix(in srgb,var(--color-on-surface) 5%,transparent);opacity:.4;padding-inline:.5rem;z-index:-1;transition:opacity .3s cubic-bezier(.16,1,.3,1)}&:hover::before, &:focus-visible::before, &.active::before{width:calc(100% + 1rem);opacity:.8;box-shadow:inset -2px 0 1px hsl(from var(--color-green) h s calc(l - 15)),inset -4px 0 5px hsl(from var(--color-green) h s calc(l - 15))}}}[data-theme=dark] .nav-links a::before{mix-blend-mode:screen}.content-wrapper{padding:12vh 0 0 4vw;min-height:70vh}.content-wrapper{&::before, &::after{content:"";position:fixed;left:0;right:0;width:100%;z-index:3;pointer-events:none;background-color:var(--bg-color);background-image:var(--paper-noise);background-size:2rem}&::before{top:0;height:15vh;-webkit-mask-image:linear-gradient(to bottom,black 0%,black 20%,transparent 100%);mask-image:linear-gradient(to bottom,black 0%,black 20%,transparent 100%)}&::after{bottom:0;height:14vh;-webkit-mask-image:linear-gradient(to top,black 0%,black 20%,transparent 100%);mask-image:linear-gradient(to top,black 0%,black 20%,transparent 100%)}}.main-header,.list-controls{z-index:11}.site-title,.theme-toggle{padding:.5rem;background-image:var(--paper-noise);outline:2px #f5f5f5;backdrop-filter:blur(6px)contrast(1.1);border:1px solid color-mix(in srgb,var(--color-on-surface) 5%,transparent);background-color:color-mix(in srgb,var(--bg-color) 30%,transparent)}.site-title{display:flex;flex:0 0 100px;align-items:center;gap:1rem;pointer-events:auto;text-decoration:none;position:relative;isolation:isolate;padding:.2rem .5rem;&::before{content:"";position:absolute;left:-.25em;bottom:0;width:0;height:100%;background-color:var(--color-green);opacity:0;filter:url(#filter-rough);z-index:-1;mix-blend-mode:multiply;transition:width .3s cubic-bezier(.16,1,.3,1),opacity .15s;border-bottom-right-radius:10px 15px}&::after{content:"";position:absolute;left:-.25em;bottom:0;width:0;height:100%;background-image:var(--paper-noise);outline:1px #f5f5f5;backdrop-filter:blur(9px);border:1px solid color-mix(in srgb,var(--color-on-surface) 5%,transparent);opacity:.4;padding-inline:.5rem;z-index:-1}&:hover::before, &:focus::before, &:active::before{width:calc(100% + .5em);opacity:.8;box-shadow:inset -2px 0 1px hsl(from var(--color-green) h s calc(l - 15)),inset -4px 0 5px hsl(from var(--color-green) h s calc(l - 15))}.site-logo{width:36px;height:36px;transform:rotate(-5deg);transition:transform .3s ease}&:hover .site-logo{transform:rotate(0)scale(1.1)}span{font-family:syne,sans-serif;font-weight:800;font-size:1.2rem;letter-spacing:.05em}}[data-theme=dark] .site-title::before{mix-blend-mode:screen}.hero{margin-top:10vh;padding-right:4vw}.hero-title{font-size:clamp(3rem,8vw,9rem);font-weight:600;line-height:.9;letter-spacing:-.03em;margin-bottom:2rem}.hero-subtitle{font-size:clamp(1rem,2vw,1.5rem);max-width:600px;margin-bottom:3rem;font-weight:300}.btn-primary{display:inline-block;padding:1rem 2rem;border:1px solid var(--text-color);border-radius:50px;text-transform:uppercase;font-weight:800;transition:all .3s ease}.btn-primary:hover{background:var(--text-color);color:var(--bg-color)}.page-header{margin:5vh 0}.page-title{font-size:3rem;font-weight:600;text-transform:uppercase}.directory-container{display:block;position:relative;width:100%}.alphabet-indicator{position:fixed;font-family:cardo,sans-serif;right:2vw;top:4vh;z-index:5;font-size:3.5rem;font-weight:800;line-height:1;color:var(--text-color);transition:transform .3s cubic-bezier(.175,.885,.32,1.275);transform-origin:center;opacity:.1;height:3.25rem;width:3.25rem;outline:2px double #000;text-align:center;box-shadow:var(--inset1);background-image:var(--paper-noise);background-blend-mode:multiply;background-color:color-mix(in srgb,#203727 15%,transparent);&:hover{opacity:.8;transition:cubic-bezier(.075,.82,.165,1).3s}&:hover, &.is-active{opacity:1}}.alphabet-menu{position:fixed;right:2vw;top:calc(4vh + 4.5rem);z-index:99;display:flex;flex-direction:column;gap:.25rem;padding:.75rem .5rem;background-color:var(--bg-color);background-image:var(--paper-noise);background-size:2rem;border:1px solid color-mix(in srgb,var(--text-color) 20%,transparent);box-shadow:var(--shadow-light);border-radius:4px;max-height:80vh;overflow-y:auto;opacity:0;visibility:hidden;transform:translateY(-10px);transition:all .3s cubic-bezier(.16,1,.3,1);scrollbar-width:none;&::-webkit-scrollbar{display:none}&.is-open{opacity:1;visibility:visible;transform:translateY(0)}button{background:0 0;border:none;font-family:cardo,sans-serif;font-weight:700;font-size:1.1rem;color:var(--text-color);cursor:pointer;opacity:.4;transition:all .2s cubic-bezier(.16,1,.3,1);&:not(:disabled):hover{opacity:1;transform:scale(1.3)translateX(-2px);color:var(--color-green)}&:disabled{opacity:.05;cursor:not-allowed}}}.alumni-row{display:flex;justify-content:space-between;align-items:baseline;padding:calc(3vh * var(--list-scale,1))2rem;border-top:1px solid var(--border-color);cursor:pointer;background-image:var(--paper-noise);background-size:2rem;position:relative;opacity:0;transform:translateY(20px);transition:opacity .4s cubic-bezier(.16,1,.3,1)calc(var(--stagger-idx,0) * 30ms),transform .4s cubic-bezier(.16,1,.3,1)calc(var(--stagger-idx,0) * 30ms)}.alumni-row.disabled{cursor:default}.alumni-row.is-visible{opacity:1;transform:translateY(0)}.alumni-content{display:flex;justify-content:space-between;align-items:baseline;width:100%}.alumni-row::before{content:"";position:absolute;left:-2vw;top:50%;width:12px;height:12px;background-color:initial;border:1px solid color-mix(in srgb,var(--text-color),transparent 70%);border-radius:50%;opacity:0;transform:translateY(-50%)scale(0);transition:all .3s ease;box-sizing:border-box}.alumni-row:hover::before{opacity:1;border-color:var(--color-green);background-color:color-mix(in srgb,var(--color-green),var(--bg-color) 80%);transform:translateY(-50%)scale(1.3)}.preview-text-fallback{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-family:cardo,serif;font-size:clamp(1rem,4vw,6rem);font-weight:400;text-shadow:var(--border-color)2px 1px,var(--bg-color)-2px -1px;letter-spacing:-.1rem;font-style:italic;text-align:center;padding:2rem;color:var(--text-color);line-height:1.2}@keyframes dot-cycle{0%,100%{opacity:0;transform:translateY(-50%)scale(0)}40%,60%{opacity:.4;transform:translateY(-50%)scale(1)}}@keyframes reveal-in{from{opacity:0;transform:scale(.9)translateY(60px);filter:blur(10px)}to{opacity:1;transform:scale(1)translateY(0);filter:blur(0)}}@keyframes roll-out{from{opacity:1;transform:scale(1)translateY(0);filter:blur(0)}to{opacity:0;transform:scale(.95)translateY(-40px);filter:blur(8px)}}@supports(animation-timeline:view()){.alumni-row::before{animation:dot-cycle linear both;animation-timeline:view();animation-range:entry 10% exit 90%}.alumni-content{view-timeline-name:--row-scroll;view-timeline-axis:block;animation:reveal-in linear both,roll-out linear both;animation-timeline:--row-scroll,--row-scroll;animation-range:entry 0% entry 35%,exit 0% exit 30%}}.alumni-row:last-child{border-bottom:1px solid var(--border-color)}.alumni-row:hover{background-color:color-mix(in srgb,var(--text-color) 2%,transparent)}.alumni-name{font-size:calc(clamp(2rem,6vw,8rem) * var(--list-scale,1));font-weight:100;letter-spacing:-.04em;font-family:cardo,serif;transform-origin:left center}.alumni-row[data-phd=true] .alumni-name::before{content:"Dr. ";display:inline-flex;opacity:0;width:0;overflow:hidden;white-space:pre;transition:width 1.2s cubic-bezier(.16,1,.3,1)0s,opacity .9s cubic-bezier(.16,1,.3,1)0s}@media(hover:hover){.alumni-row[data-phd=true]:hover .alumni-name::before{opacity:1;width:1.6em;transition-delay:1.5s}}.alumni-meta{font-size:calc(.5rem + (.3rem * var(--list-scale,1)));text-transform:uppercase;font-weight:500;opacity:0;transform:translateX(-10px);transition:all .3s ease}.alumni-row:hover .alumni-meta{opacity:1;transform:translateX(0)}.list-controls{display:flex;flex-wrap:wrap;padding-block:1rem;padding-inline:2rem;margin-bottom:4vh;margin-left:2rem;border-radius:4px;font-family:cardo,serif;position:sticky;top:10vh;background-size:2rem;box-shadow:var(--elevation-1);pointer-events:auto;z-index:10;max-width:92dvw;opacity:.98;background-image:var(--paper-noise);background-size:4rem;.control-group{display:flex;align-items:center;gap:1rem;flex-wrap:inherit}.control-label{font-size:.7rem;font-weight:800;text-transform:uppercase;opacity:.4;letter-spacing:.1em}.filter-chip{font-family:cardo,serif;background:0 0;border:1px solid color-mix(in srgb,var(--text-color) 20%,transparent);color:var(--text-color);padding:.3rem .8rem;border-radius:50px;font-size:.8rem;font-weight:600;cursor:pointer;transition:all .2s ease;&:hover{border-color:var(--text-color)}&.active{background:var(--text-color);color:var(--bg-color);border-color:var(--text-color)}}.filter-collapser{display:grid;grid-template-rows:1fr;transition:grid-template-rows .3s cubic-bezier(.16,1,.3,1);&.is-closed{grid-template-rows:0fr;.filter-reset{display:none}}}.mobile-filter-search{display:none}.filter-body{overflow:hidden;display:flex;flex-wrap:wrap;gap:1.5rem}.filter-actions{display:flex;align-items:center;gap:1rem;margin-left:auto;width:100%;justify-content:space-between;h3{font-family:cardo,serif;font-size:.75rem;color:var(--text-color);opacity:.6;align-self:baseline}button{background:0 0;border:none;font-family:syne,sans-serif;font-size:.75rem;letter-spacing:.05em;color:var(--text-color);cursor:pointer;opacity:.5;transition:opacity .2s ease;&:hover{opacity:1}}} #filter-close, #filter-reset { background: transparent; border: none; color: var(--text-color); font-size: 0.75rem; letter-spacing: 0.05em; font-family: 'Syne', sans-serif; text-transform: uppercase; cursor: pointer; opacity: 0.6; transition: opacity 0.2s ease, border-bottom 0.3s ease; margin-left: auto; border-block: 1px solid transparent; padding-inline: 0.5rem; padding-block: 0.25rem; &:hover { opacity: 1; border-block: 1px solid var(--text-color); transition: border-block 0.6s ease-in-out; } } #filter-reset{ margin-bottom: auto; margin-top: 0.75rem; border-inline: 0.5px color-mix(var(--text-color) 80%, transparent) solid; } #filter-close{ margin-bottom: 0.75rem; width: 50%; display: flex; flex-flow: row-reverse; padding-bottom: 0.25rem; align-self: baseline; }}#filter-bar:has(.filter-collapser.is-closed){background-color:color-mix(var(--bg-color) 60%,transparent 40%);backdrop-filter:blur(5px)contrast(1.2);outline:inset 1px #f5f5f522;opacity:.98;.filter-close{margin-bottom:0;width:33vw;display:flex;flex-flow:row-reverse;padding-block:.25rem;margin-top:0}}#hover-image-display{position:fixed;top:0;right:10vw;width:auto;max-width:440px;min-width:250px;height:auto;aspect-ratio:var(--img-ratio,inherit);display:flex;flex-direction:column;padding:2.5rem;padding-bottom:5rem;pointer-events:none;z-index:10;opacity:0;visibility:hidden;background-color:var(--bg-color);background-image:var(--paper-noise);background-size:2rem;outline:1px solid color-mix(in srgb,var(--color-on-surface) 10%,transparent);box-shadow:var(--shadow-light);transform:translate(-50%,-50%)scale(.98);transition:opacity .4s cubic-bezier(.16,1,.3,1),transform .4s cubic-bezier(.16,1,.3,1),visibility .4s;img{display:block;width:100%;height:auto;max-height:50vh;aspect-ratio:var(--img-ratio,1);object-fit:contain;display:block;outline:1px solid color-mix(in srgb,var(--color-on-surface) 5%,transparent)}&::after{content:"";position:absolute;top:2.5rem;left:2.5rem;right:2.5rem;bottom:5rem;pointer-events:none;box-shadow:var(--inset1);border:.5px solid color-mix(in srgb,var(--color-on-surface) 5%,transparent);filter:contrast(1.02)saturate(1.05);inset:1.25rem;border:.5px solid color-mix(in srgb,var(--color-on-surface) 2%,transparent);pointer-events:none;padding-bottom:5rem;margin-bottom:2.5rem}&.is-visible{opacity:1;visibility:visible}}[data-theme=dark] #hover-image-display{box-shadow:var(--shadow-dark);outline-color:rgba(255,255,255,.1)}.profile-header{margin-top:8vh;margin-bottom:4vh}.profile-name{font-size:clamp(1.75rem,7vw,8rem);font-weight:600;font-family:cardo,serif;text-transform:uppercase;line-height:1;margin-bottom:1rem}.profile-metadata{display:flex;gap:2rem;text-transform:uppercase;font-weight:800;border-top:1px solid var(--text-color);padding-top:1rem}.profile-hero-image img{width:100%;height:auto;max-height:70vh;object-fit:cover;margin-bottom:4vh}.profile-content{display:grid;grid-template-columns:2fr 1fr;gap:4vw;padding-bottom:5vh}.profile-bio{font-size:1.2rem;font-weight:300;max-width:700px}.profile-bio p{margin-bottom:1.5rem}.profile-links{display:flex;flex-direction:column;gap:1rem;font-weight:800;text-transform:uppercase;position:sticky;top:20vh;a{width:fit-content}}.profile-links a:hover{text-decoration:underline}.standard-page a,.profile-bio a{position:relative;text-decoration:none!important;isolation:isolate;font-weight:700;&::before{position:absolute;content:'';width:0%;left:-.2ch;height:110%;top:-5%;border-bottom-right-radius:20px 30px;background-color:var(--color-yellow);opacity:0;filter:url(#filter-rough);z-index:-1;transition:width .25s cubic-bezier(.16,1,.3,1),opacity .15s}&:hover::before, &:focus::before{width:calc(100% + .4ch);opacity:.75;box-shadow:inset -2px 0 1px hsl(from var(--color-yellow) h s calc(l - 15)),inset -4px 0 5px hsl(from var(--color-yellow) h s calc(l - 15))}}.alumni-directory{display:flex;flex-direction:column;padding-bottom:40vh;padding-left:2vw}.search-container{position:relative;display:flex;align-items:center;margin-left:2rem;backdrop-filter:blur(5px)}#search-input{background:0 0;border:none;border-bottom:1px solid var(--text-color);padding:.2rem 0;font-family:syne,sans-serif;font-size:.9rem;color:var(--text-color);outline:none;width:120px;text-transform:uppercase;transition:width .3s ease;&::placeholder{opacity:.4}&:focus{width:200px;border-bottom-width:2px}}.search-results{display:none;position:absolute;top:150%;right:0;width:300px;max-height:60vh;overflow-y:auto;border-radius:4px;box-shadow:var(--shadow-light);z-index:11;overflow:clip}[data-theme=dark] .search-results{box-shadow:var(--shadow-dark)}.search-item{display:flex;flex-direction:column;padding:1rem 1.5rem;border-bottom:1px solid color-mix(in srgb,var(--text-color) 10%,transparent);text-decoration:none!important;transition:background .2s ease;&:last-child{border-bottom:none}&:hover{background:color-mix(in srgb,var(--text-color) 5%,transparent)}}.search-title{font-family:syne,sans-serif;font-weight:700;font-size:1rem;margin-bottom:.2rem}.search-meta,.search-empty{font-family:cardo,serif;font-size:.75rem;text-transform:uppercase;opacity:.6}.search-empty{padding:1.5rem;text-align:center}.page-links{margin-top:10vh;padding-top:5vh;border-top:1px solid var(--border-color);display:flex;flex-direction:column;gap:4rem;padding-bottom:15vh;outline:none;.page-links-title{text-transform:uppercase;font-size:.8rem;letter-spacing:.1em;opacity:.5;display:block;margin-bottom:2rem}}.icon{outline:none;svg{fill:currentColor}}.share-buttons{display:flex;gap:1rem;margin-bottom:2rem;outline:none;svg{width:24px;height:24px;fill:none;stroke:currentColor;outline:none}}.action-buttons{display:flex;gap:1rem;.button{display:flex;align-items:center;gap:.5rem;padding:.6rem 1.2rem;border:.5px solid var(--text-color);border-radius:50px;font-family:syne,sans-serif;font-weight:700;font-size:.8rem;text-transform:uppercase}}#related-pages,#backlinks{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:1.5rem}.card.elevated{background:var(--bg-color);padding:1.5rem;box-shadow:var(--shadow-light);outline:1px solid color-mix(in srgb,var(--color-on-surface) 10%,transparent);.card-title{font-family:syne,sans-serif;font-weight:700;display:block;margin-bottom:.5rem}.card-description{font-size:.9rem;opacity:.7}}[data-theme=dark] .card.elevated{box-shadow:var(--shadow-dark)}.marquee-wrapper{overflow:hidden;white-space:nowrap;padding:2rem 0;margin-top:10vh;border-top:1px solid var(--text-color);background-color:var(--text-color);color:var(--bg-color);bottom:0;position:fixed;z-index:4}.marquee-inner{display:inline-block;animation:marquee 100s linear infinite;font-size:1.5rem;font-weight:600;&:hover{animation-play-state:paused}}.marquee-inner span{margin-right:4rem}@keyframes marquee{0%{transform:translateX(0)}100%{transform:translateX(-50%)}}#mobile-nav{display:none}@media(max-width:1800px){.main-header{flex-wrap:wrap;row-gap:1rem}.list-controls{order:3}}@media(max-width:768px){.content-wrapper{padding:6vh 0 0 4vw}.standard-page{margin-top:2vh;padding-bottom:10vh}.aoc-page{padding:2vh 2vw 2vh 10vw;width:100vw;height:100vh;p:last-of-type{margin-block:2rem;margin-top:2rem;padding:1rem}.aoc-lead{margin-bottom:1rem}.aoc-actions{margin-top:0;padding-bottom:10vh}}.alumni-row{flex-direction:column}.alumni-meta{opacity:1;transform:translateX(0);margin-top:.5rem;color:#666}.profile-content{grid-template-columns:1fr}.list-controls{top:2vh;position:fixed;width:80vw;left:-3vw;padding:1rem;.filter-actions{h3{display:none}}}.mobile-filter-search{display:none}#search-input{&:focus{width:200px}.search-results{translate:-25%}}.list-controls.is-closed .mobile-filter-search{display:block;position:absolute;left:1.5rem;top:50%;transform:translateY(-50%);z-index:10;background:0 0;border:none;border-bottom:1px solid var(--text-color);padding:.2rem 0;font-family:syne,sans-serif;font-size:.9rem;color:var(--text-color);outline:none;width:120px;text-transform:uppercase;transition:width .3s ease;&::placeholder{opacity:.4}&:focus{width:180px;border-bottom-width:2px}}.search-results{translate:25%}.site-title{display:none}#hover-image-display{display:none}.main-header{gap:1rem;padding:1rem 2vw;flex-wrap:wrap;flex-direction:column-reverse}.nav-links{transform:translateY(-100%);transition:transform .3s ease,opacity .3s ease;opacity:0;top:5vh}.nav-links.nav-open{display:flex;flex-direction:column;flex-wrap:wrap;transform:translateY(0%);transition:transform .3s ease,opacity .3s ease;opacity:1;z-index:12;box-shadow:var(--elevation-2);background-color:var(--bg-color);background-image:var(--paper-noise);padding:1rem;border-radius:4px;background-size:1rem;width:calc(100% - 2vw);margin-left:auto}.action-buttons{padding-left:4vw}.theme-toggle{order:-1}#mobile-nav{display:block;position:absolute;top:2vh;right:1vw;height:2rem;width:2rem;padding:.4rem;cursor:pointer;z-index:1001;pointer-events:auto;background-color:var(--bg-color);box-shadow:var(--elevation-1);background-image:var(--paper-noise);opacity:.7;border:none;border-radius:4px;span{display:block;height:1.5px;background-color:var(--text-color);margin-bottom:.4rem;border-radius:2px;transition:transform .4s cubic-bezier(.16,1,.3,1),opacity .3s ease;transform-origin:center;&:last-child{margin-bottom:0}}&.open{opacity:.98;span:nth-child(1){transform:translateY(5.5px)rotate(45deg)}span:nth-child(2){opacity:0;transform:scaleX(0)}span:nth-child(3){transform:translateY(-5.5px)rotate(-45deg)}}}.alphabet-indicator{top:8vh;font-size:2.5rem;height:2.5rem;width:2.25rem}.archive-form{padding:1.5rem;.field-row{flex-direction:column;gap:2rem}}.list-zoom-container{display:none}.profile-header{margin-top:4vh}}.mobile-preview-drawer{display:none}@media(max-width:768px),(hover:none){.alumni-row{flex-direction:column;align-items:stretch}.mobile-preview-drawer{display:block;max-height:0;opacity:0;overflow:hidden;width:100%;margin-top:0;transition:max-height .5s cubic-bezier(.16,1,.3,1),opacity .4s ease,margin-top .5s cubic-bezier(.16,1,.3,1);img{width:100%;height:auto;max-height:250px;object-fit:cover;border-radius:2px;outline:1px solid color-mix(in srgb,var(--color-on-surface) 10%,transparent)}.mobile-fallback-text{font-family:cardo,serif;font-weight:700;font-style:italic;font-size:1.5rem;padding:2rem;display:flex;align-items:center;justify-content:center;border:1px dashed color-mix(in srgb,var(--text-color) 20%,transparent)}}.alumni-row.mobile-expanded{.mobile-preview-drawer{max-height:300px;opacity:1;margin-top:1.5rem}}.alumni-meta{display:inline-flex;align-items:center;gap:.5rem}.alumni-meta::after{content:"▾";font-family:syne,sans-serif;font-size:.9rem;display:inline-block;transition:transform .3s cubic-bezier(.16,1,.3,1);transform-origin:center}.alumni-row.mobile-expanded .alumni-meta::after{transform:rotate(180deg)}}.copyright-notice{position:fixed;transform:translate(-100%,-100%);position:absolute;z-index:1000;pointer-events:none;background-color:var(--bg-color);background-image:var(--paper-noise);padding:1rem 1.5rem;border-radius:4px;font-family:syne,sans-serif;font-size:.85rem;font-weight:700;text-transform:uppercase;line-height:1.3;outline:1px solid color-mix(in srgb,var(--color-on-surface) 15%,transparent);box-shadow:var(--shadow-light);transition:opacity .3s ease}[data-theme=dark] .copyright-notice{box-shadow:var(--shadow-dark)}.notice-content{color:var(--text-color)}.content-wrapper{opacity:1;transition:opacity .9s cubic-bezier(.16,1,.3,1),transform .4s cubic-bezier(.16,1,.3,1)}.htmx-request.content-wrapper{opacity:.8}html[data-nav-dir=next] .content-wrapper.htmx-swapping{opacity:0}html[data-nav-dir=prev] .htmx-swapping .content-wrapper{opacity:0}html[data-nav-dir=next] .content-wrapper.htmx-settling{opacity:0}html[data-nav-dir=prev] .content-wrapper.htmx-swapping{opacity:0}body:not(:has(#alumni-list)) #filter-bar{display:none!important}