/* Last update 2026-02-08 17:20:48 +00:00 by scssphp */
@charset "UTF-8";html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{border:0;font-size:1rem;font:inherit;vertical-align:baseline;margin:0;padding:0}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}body{line-height:1}ol,ul{list-style:none}blockquote,q{quotes:none}blockquote:before,blockquote:after,q:before,q:after{content:none}table{border-collapse:collapse;border-spacing:0}*,*::before,*::after{box-sizing:border-box}@font-face{font-family:"Name Sans";src:url(../fonts/AT-NameSansVariable.woff2)format("woff2")}h1,h2,h3,h4,h5,h6{font-family:"Name Sans";color:#333333}body{color:#333333;font-family:-apple-system,BlinkMacSystemFont,"Avenir Next",Avenir,"Segoe UI","Helvetica Neue",Helvetica,Ubuntu,Roboto,Noto,Arial,sans-serif;font-weight:400;line-height:1.6;background-color:#fbfbfb}h1{font-size:2.441rem;font-weight:500;line-height:1.2;color:#1a1a1a;text-align:left}h2{font-size:1.563rem;font-weight:500;margin-bottom:1rem;color:#1a1a1a;letter-spacing:.4px}h3{font-size:1.25rem;font-weight:500;line-height:1.2}h4{font-weight:400;color:#555555}h5{font-weight:400;font-size:.8rem;color:#777777;text-align:center}mark{background:rgba(246,198,0,.4);border-radius:4px;padding:2px 1px;box-shadow:2px 0 0 rgba(246,198,0,.4),-2px 0 0 rgba(246,198,0,.4)}em{font-style:italic}strong{font-weight:bold}sup{vertical-align:super}a:link,a:visited{text-decoration:none}h1 a{color:#1a1a1a}.post p a:hover,.aboutme a:hover,.page p a:hover,.sitenav a:hover{border-bottom:1px dashed #777777;color:#d25630}#container{display:grid;margin:0 auto;width:100%;background-color:#fbfbfb}.home,.page{max-width:68rem;margin:1rem}.post{max-width:84rem;margin:4rem auto}.post h1,.post h2,.post h3,.post h4,.post h5,.post h6{text-align:center}.post h1 h2,.post h2 h2,.post h3 h2,.post h4 h2,.post h5 h2,.post h6 h2,.post h1 h3,.post h2 h3,.post h3 h3,.post h4 h3,.post h5 h3,.post h6 h3,.post h1 h4,.post h2 h4,.post h3 h4,.post h4 h4,.post h5 h4,.post h6 h4{margin:2rem auto}.project{max-width:68rem}hr{border:0;border-bottom:1px dashed #d4d4d4;max-width:80%;margin:2rem auto}.center{text-align:center}.text .codeblock{display:grid;line-height:1.5}.grid{--columns:12;--gutter:3rem;display:grid;gap:var(--gutter);grid-template-columns:1fr;justify-items:center;align-items:center}.grid > .column{margin-bottom:var(--gutter)}.autogrid{--gutter:3rem;--min:10rem;display:grid;gap:var(--gutter);grid-template-columns:repeat(auto-fit,minmax(var(--min),1fr));grid-auto-flow:dense}.twogrid .experience p{margin:1.5rem 0;color:#333333;line-height:1.6}.twogrid .experience p a{color:#d25630}#menu{margin:0;position:sticky;bottom:0;z-index:10;order:5;border-radius:0;font-family:"Name Sans";background:rgba(242,242,242,.7);backdrop-filter:saturate(180%)blur(12px)}#menu nav{position:relative}#menu ul{padding:0;display:flex;justify-content:space-evenly;align-items:center}#menu li{list-style-type:none;padding:.75rem .5rem;display:grid;justify-items:center;align-items:center}#menu span{display:block;font-size:.8rem;text-transform:uppercase;letter-spacing:.5px}#menu i{padding-bottom:4px;display:block;text-align:center;width:100%;font-size:1rem}#menu .Home::before{content:"🏠"}#menu .Personal::before{content:"🖼"}#menu .Work::before{content:"🗃"}#menu .About::before{content:"🤑"}#menu a{transition:color .3s ease;position:relative;z-index:2}#menu li a{color:#555555}#menu li a:hover{color:#1a1a1a}#menu li > .currentpage{color:#1a1a1a}#menu #menu-pill{position:absolute;bottom:0;height:2px;background:#1a1a1a;border-radius:1px;transition:left .35s cubic-bezier(.4,0,.2,1),width .35s cubic-bezier(.4,0,.2,1);z-index:1;pointer-events:none}.pin::before{content:"📍"}img{width:100%}.device img{padding:0 1rem}.error{width:100%;margin:3rem auto;max-width:700px}figure{position:relative;text-align:center}.figcaption{position:absolute;bottom:-1rem;color:#777777;left:0;max-width:64rem}figcaption a{color:#fbfbfb !important}.post img{max-width:64rem;margin:0 auto}iframe{display:block;margin:1rem auto;width:100%;height:240px}audio{display:block;padding:0 0 3rem}blockquote{background-color:#f7f7f7;line-height:1.5;font-size:1.563rem;padding:1rem 0;font-style:italic;display:block;width:100%}.headline,.articletop{margin:1.5rem 0}.headline h1,.articletop h1{font-weight:700;font-variation-settings:"opsz" 72;margin-bottom:1.5rem}.articletop .subheadline{color:#555555;font-size:1rem;margin-bottom:.5rem}.articletop h4{font-family:inherit;font-weight:400;color:#555555;font-size:.8rem}.gridholder{margin:2rem 0}.link{color:#d25630;float:right;font-size:1rem;letter-spacing:0}.albumgrid,.projectsgrid{display:grid;grid-template-columns:1fr;gap:1.5rem;max-width:100%;position:relative}.projectsgrid > .child{border-radius:12px;background-color:#f7f7f7;color:#555555;overflow:hidden}.projectsgrid > .child img{aspect-ratio:16/9}.projectsgrid > .child .projectmeta{padding:1rem}.projectsgrid > .child .projectheader{display:flex;justify-content:space-between;align-items:baseline}.projectsgrid > .child h4{text-align:left;margin:0 0 .5rem}.projectsgrid > .child h5{margin:0;text-align:left}.projectsgrid > .child ul{margin-top:1rem;margin-bottom:0}.projectsgrid > .child li{line-height:1.5;list-style:circle;list-style-position:inside}.projectsgrid > .child a{color:#333333}.albumgrid > .child{position:relative;text-align:center;overflow:hidden;border-radius:12px}.albumgrid > .child figure{margin:0;aspect-ratio:3/2}.albumgrid img{width:100%;display:block;aspect-ratio:3/2;object-fit:cover;filter:blur(8px);opacity:0;transition:filter .4s ease,opacity .4s ease}.albumgrid img.loaded{filter:blur(0);opacity:1}.albumgrid > .child h3{text-shadow:0 0 .3em rgba(0,0,0,.6);position:absolute;margin:0 auto;max-width:90%;left:1rem;bottom:1rem;white-space:nowrap;overflow-x:hidden;text-overflow:ellipsis;color:#f7f7f7}.gridimg:hover::after{opacity:1}.album-text{max-width:40rem;margin:0 auto 2rem;line-height:1.6;color:#555555}.album-gallery{display:grid;grid-template-columns:1fr;gap:1rem}.album-gallery a{display:block}.album-gallery figure{margin:0}.album-gallery img{border-radius:8px;object-fit:cover;width:100%}.album-gallery h2{margin-top:1rem;font-size:2.441rem;font-weight:600}.album-gallery hr{border:none;border-top:1px solid #d4d4d4;margin:1rem 0 0}.home .gridholder{position:relative;margin:4rem 0}.home .albumgrid::after{content:"";position:absolute;z-index:1;top:0;right:0;bottom:0;pointer-events:none;background:linear-gradient(90deg,rgba(255,255,255,0),rgba(247,247,247,.6));width:2%}.home h2{max-width:68rem;margin:1rem auto;color:#555555}.home .albumgrid{grid-template-columns:repeat(6,88%);overflow-x:auto;max-width:100vw;scroll-snap-type:x mandatory}.home .albumgrid .child{scroll-snap-align:start}.home .projectsgrid{grid-template-columns:1fr;overflow-x:auto;max-width:100vw}.side{background:#f2f2f2;font-size:1rem;padding:1.5rem;border-radius:12px;align-self:center}.side ul{padding:.5rem 0 0;list-style:circle;margin-bottom:0}.side ul li{line-height:1.6;list-style-position:inside}.experience p{margin:1.5rem 0;color:#333333;line-height:1.6}.experience p a{color:#d25630}.post,.albumgrid{font-size:1rem;line-height:1.6}.post p,.post ul,.post ol,audio,.aboutme p,.contactme p{max-width:40rem;margin:1rem auto;padding:0 1rem}.aboutme p,.contactme p{max-width:64rem !important}blockquote p{padding:2rem;text-align:center;max-width:45rem !important}.post ul{margin:1rem auto 3rem}.post ul li{list-style:circle;margin-bottom:1rem;padding-left:1em;text-indent:-1em}ol li{margin-bottom:1rem}article{max-width:100%}article > ul{list-style:circle;margin-bottom:1rem;padding-left:1em;padding-top:1rem}article > ul li{color:#555555}.work .twogrid{padding-bottom:2rem;border-bottom:1px #d4d4d4 solid}.work h2,.work .twogrid{margin-top:2rem}.work section p{max-width:40rem;margin:1rem 0;line-height:1.5}.work h5{text-align:left;margin:0}.work .side p{font-size:1rem;font-weight:400}.work .side p:last-child{margin-bottom:0}.work figure{margin:1.5rem 0}.work figure img{max-width:100%;padding:.5rem;border-radius:8px}.project figure{margin:4rem auto}.backnav{margin-bottom:.5rem;text-align:left}.backnav a{color:#d25630;font-size:1.25rem;font-weight:500}.bottomnav ul{display:flex;justify-content:space-between;align-items:center;margin:3rem auto;text-decoration:none;max-width:68rem}.bottomnav a{color:#d25630}.bottomnav li{line-height:2;list-style-type:none;position:relative;margin:0 1rem}.bottomnav li i{position:relative;top:3px}.extra{display:none}.right{text-align:right;clear:both}.minigrid{display:grid;grid-auto-flow:column;grid-auto-columns:88%;gap:.5rem;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;scroll-padding:.5rem;scrollbar-width:none}.minigrid figure,.minigrid a{scroll-snap-align:start}.minigrid > img{margin:0}.minigrid::-webkit-scrollbar{display:none}.reveal{opacity:0;transform:translateY(24px);transition:opacity .6s cubic-bezier(.16,1,.3,1),transform .6s cubic-bezier(.16,1,.3,1)}.reveal.visible{opacity:1;transform:translateY(0)}.songs-hero{position:relative;height:200vh;background:#f2f2f2}.songs-hero-sticky{position:sticky;top:0;height:100vh;overflow:hidden}.songs-hero-content{position:absolute;inset:0;z-index:1;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:2rem}.songs-hero-content h1{font-size:3.052rem;font-weight:900;margin:0;line-height:1;color:#1a1a1a;letter-spacing:-.02em}.songs-hero-content h4{color:#555555;font-weight:400;margin:.5rem 0 0}.songs-hero-mosaic{position:absolute;inset:0;z-index:2;display:grid;grid-template-columns:repeat(12,1fr);grid-template-rows:repeat(8,1fr);gap:3px}.songs-hero-tile{object-fit:cover;width:100%;height:100%;opacity:0;will-change:transform,opacity}.songs-hero-tile--1{grid-area:1/1/4/6}.songs-hero-tile--2{grid-area:1/6/4/10}.songs-hero-tile--3{grid-area:1/10/3/13}.songs-hero-tile--4{grid-area:4/1/7/5}.songs-hero-tile--5{grid-area:3/5/5/8}.songs-hero-tile--6{grid-area:5/5/7/8}.songs-hero-tile--7{grid-area:4/8/7/11}.songs-hero-tile--8{grid-area:7/1/9/5}.songs-hero-tile--9{grid-area:7/5/9/9}.songs-hero-tile--10{grid-area:3/11/5/13}.songs-hero-tile--11{grid-area:5/11/7/13}.songs-hero-tile--12{grid-area:7/9/9/13}@media(max-width:639px){.songs-hero-mosaic{grid-template-columns:repeat(6,1fr);grid-template-rows:repeat(6,1fr)}.songs-hero-tile--1{grid-area:1/1/3/4}.songs-hero-tile--2{grid-area:1/4/3/7}.songs-hero-tile--3{grid-area:4/1/7/3}.songs-hero-tile--4{grid-area:4/3/7/7}.songs-hero-tile--5,.songs-hero-tile--6,.songs-hero-tile--7,.songs-hero-tile--8,.songs-hero-tile--9,.songs-hero-tile--10,.songs-hero-tile--11,.songs-hero-tile--12{display:none}}.songs-page{max-width:84rem;margin:1rem auto;padding:0 1rem}.rankings-list{display:grid;grid-template-columns:1fr;gap:1.25rem}.song-card{position:relative;border-radius:12px;overflow:hidden;cursor:pointer;transition:transform .25s cubic-bezier(.16,1,.3,1),box-shadow .25s ease}.song-card:hover{transform:scale(1.02);box-shadow:0 8px 24px rgba(0,0,0,.15)}.song-card:hover .song-card-play{opacity:1}.song-card:nth-child(1){transition-delay:.04s}.song-card:nth-child(2){transition-delay:.08s}.song-card:nth-child(3){transition-delay:.12s}.song-card:nth-child(4){transition-delay:.16s}.song-card:nth-child(5){transition-delay:.2s}.song-card:nth-child(6){transition-delay:.24s}.song-card:nth-child(7){transition-delay:.28s}.song-card:nth-child(8){transition-delay:.32s}.song-card:nth-child(9){transition-delay:.36s}.song-card:nth-child(10){transition-delay:.4s}.song-card:nth-child(11){transition-delay:.44s}.song-card:nth-child(12){transition-delay:.48s}.song-card:nth-child(13){transition-delay:.52s}.song-card:nth-child(14){transition-delay:.56s}.song-card:nth-child(15){transition-delay:.6s}.song-card:nth-child(16){transition-delay:.64s}.song-card:nth-child(17){transition-delay:.68s}.song-card:nth-child(18){transition-delay:.72s}.song-card:nth-child(19){transition-delay:.76s}.song-card:nth-child(20){transition-delay:.8s}.song-card-art{position:relative}.song-card-art img{display:block;width:100%;aspect-ratio:1/1;object-fit:cover}.song-card-rank{position:absolute;top:.75rem;left:.75rem;background:rgba(0,0,0,.55);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border-radius:8px;padding:.2rem .5rem;font-family:"Name Sans";font-weight:800;font-size:1.25rem;line-height:1.2;font-variant-numeric:tabular-nums;color:#f7f7f7;z-index:2}.rank-tier-gold .song-card-rank span{color:#c8a415}.rank-tier-silver .song-card-rank span{color:#8a8d90}.rank-tier-bronze .song-card-rank span{color:#a0673a}.song-card-overlay{position:absolute;bottom:0;left:0;right:0;padding:3rem 1rem 1rem;background:linear-gradient(transparent,rgba(0,0,0,.75));z-index:1}.song-card-overlay h3{color:#f7f7f7;font-size:1rem;font-weight:600;margin:0;text-shadow:0 1px 4px rgba(0,0,0,.4)}.song-card-overlay h4{color:rgba(255,255,255,.8);font-size:.8rem;font-weight:400;margin:.15rem 0 0;text-align:left;text-shadow:0 1px 4px rgba(0,0,0,.4)}.song-card-play{position:absolute;bottom:.75rem;right:.75rem;width:2.5rem;height:2.5rem;border-radius:50%;border:none;background:rgba(255,255,255,.9);cursor:pointer;z-index:3;opacity:0;transition:opacity .2s ease,transform .15s ease;display:flex;align-items:center;justify-content:center}.song-card-play:hover{transform:scale(1.1)}.song-card-play:active{transform:scale(.95)}.song-card-play.playing{opacity:1;background:#f7f7f7}.play-icon{display:block;width:0;height:0;border-style:solid;border-width:6px 0 6px 10px;border-color:transparent transparent transparent #333333;margin-left:2px}.playing .play-icon{border:none;width:10px;height:12px;border-left:3px solid #333333;border-right:3px solid #333333;margin-left:0}.song-detail .rank-hero{text-align:center;margin-bottom:.5rem;animation:rank-enter .8s cubic-bezier(.16,1,.3,1)forwards}.song-detail .rank-number{font-family:"Name Sans";font-weight:900;font-size:3.815rem;line-height:1;font-variant-numeric:tabular-nums;color:#777777}.song-detail .rank-tier-gold .rank-number{color:#c8a415}.song-detail .rank-tier-silver .rank-number{color:#8a8d90}.song-detail .rank-tier-bronze .rank-number{color:#a0673a}.song-detail .song-artist{text-align:center;font-size:1.563rem;color:#555555;margin-bottom:1rem}.song-detail h1{text-align:center}@keyframes rank-enter{from{opacity:0;transform:scale(.5)}to{opacity:1;transform:scale(1)}}.song-album-art{max-width:20rem;margin:2rem auto}.song-album-art img{border-radius:8px;box-shadow:rgba(0,0,0,.1)0px 10px 50px}.song-data{max-width:40rem;margin:2rem auto;padding:1.5rem;background:#f7f7f7;border-radius:12px;border:1px solid #d4d4d4}.song-data-grid{display:grid;grid-template-columns:1fr;gap:0}.song-data-row{display:flex;justify-content:space-between;padding:.5rem 0;border-bottom:1px solid rgba(212,212,212,.5);font-size:.8rem}.song-data-row:last-child{border-bottom:none}.song-data-row dt{color:#777777;text-transform:uppercase;font-size:.75rem;letter-spacing:.5px;font-weight:500}.song-data-row dd{color:#333333;text-align:right}.song-data-row .mono{font-variant-numeric:tabular-nums;font-family:"SF Mono","Menlo","Monaco","Courier New",monospace;font-size:.8rem}.song-data-firstlisten dd{font-style:italic;color:#555555}.song-side-note{max-width:40rem;margin:2rem auto;padding:1.5rem 2rem;background:rgba(246,198,0,.06);border-left:3px solid #f6c600;border-radius:0 8px 8px 0}.song-side-note h2{font-size:.8rem;text-transform:uppercase;letter-spacing:1px;color:#555555;margin-bottom:.75rem}.song-side-note p{max-width:100% !important;padding:0 !important;line-height:1.7;color:#333333;margin:.75rem 0 !important}.song-pull-quote{max-width:40rem;margin:2rem auto;background:none;border-left:none}.song-pull-quote p{font-family:"Name Sans";font-weight:500;font-size:1.953rem;line-height:1.4;text-align:center;font-style:italic;color:#1a1a1a;padding:1rem !important}.song-fun-fact{max-width:40rem;margin:1rem auto;padding:1rem 1.5rem;background:rgba(27,46,103,.04);border-radius:8px;font-size:.8rem;color:#555555;line-height:1.5}.song-fun-fact strong{color:#333333}.song-links{display:flex;justify-content:center;gap:1rem;margin:2rem auto;max-width:40rem}.song-link{display:inline-block;padding:.6rem 1.5rem;border-radius:100px;font-size:.8rem;font-weight:500;color:#f7f7f7;text-align:center;transition:transform .2s ease-in-out,opacity .2s ease}.song-link:hover{transform:translateY(-2px);opacity:.9}.song-link.spotify{background:#1db954}.song-link.apple{background:#fc3c44}.song-link.youtube{background:#ff0000}.song-nav{max-width:40rem;margin:0 auto}.song-tags{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center;max-width:40rem;margin:1.5rem auto}.song-tag{display:inline-block;background-color:#f7f7f7;color:#555555;padding:.25rem .75rem;border-radius:100px;font-size:.8rem;border:1px solid #d4d4d4;transition:background-color .2s ease,color .2s ease}.song-tag:hover{background-color:#1a1a1a;color:#f7f7f7;border-color:#1a1a1a}.song-fav-lyric{max-width:40rem;margin:2rem auto;padding:1.5rem 2rem;text-align:center}.song-fav-lyric .song-fav-label{display:block;font-size:.75rem;text-transform:uppercase;letter-spacing:1.5px;color:#777777;margin-bottom:.75rem;font-weight:500}.song-fav-lyric .song-fav-lyric-text{font-family:"Name Sans";font-weight:500;font-size:1.953rem;line-height:1.5;font-style:italic;color:#1a1a1a;background:none;padding:0;margin:0}.song-fav-lyric .song-fav-timestamp{display:inline-block;margin-top:.75rem;font-size:.75rem;font-variant-numeric:tabular-nums;font-family:"SF Mono","Menlo","Monaco","Courier New",monospace;color:#777777;background:rgba(212,212,212,.5);padding:.15rem .5rem;border-radius:4px}.song-fav-part{max-width:40rem;margin:1.5rem auto;padding:1rem 1.5rem;background:rgba(210,86,48,.04);border-left:3px solid #d25630;border-radius:0 8px 8px 0}.song-fav-part .song-fav-label{display:block;font-size:.75rem;text-transform:uppercase;letter-spacing:1.5px;color:#777777;margin-bottom:.5rem;font-weight:500}.song-fav-part .song-fav-part-desc{max-width:100% !important;padding:0 !important;margin:0 !important;font-weight:500;color:#333333}.song-fav-part .song-fav-timestamp{display:inline-block;margin-top:.5rem;font-size:.75rem;font-variant-numeric:tabular-nums;font-family:"SF Mono","Menlo","Monaco","Courier New",monospace;color:#777777}.song-fav-part .song-fav-play{display:inline-block;margin-top:.5rem;margin-left:.5rem;font-size:.8rem;color:#d25630;font-weight:500;transition:opacity .2s ease}.song-fav-part .song-fav-play:hover{opacity:.7}.song-categories-section{max-width:40rem;margin:2rem auto;display:flex;flex-direction:column;gap:1rem}.song-category-card{padding:1.25rem 1.5rem;background:rgba(47,109,36,.04);border-left:3px solid rgba(47,109,36,.4);border-radius:0 8px 8px 0}.song-category-name{font-size:.75rem;text-transform:uppercase;letter-spacing:1.5px;color:#555555;margin-bottom:.75rem;font-weight:600}.song-category-desc{font-size:.8rem;color:#777777;margin-bottom:.5rem}.song-category-list{list-style:none;padding:0;margin:0}.song-category-list li{padding:.35rem 0;font-size:.8rem;line-height:1.4;display:flex;align-items:baseline;gap:.5rem;border-bottom:1px solid rgba(212,212,212,.3);margin:0}.song-category-list li:last-child{border-bottom:none}.song-category-list li a{display:flex;align-items:baseline;gap:.5rem;color:#333333;transition:color .15s ease}.song-category-list li a:hover{color:#d25630}.song-category-list .song-category-current{font-weight:700;background:rgba(47,109,36,.06);margin:0 -.75rem;padding-left:.75rem;padding-right:.75rem;border-radius:4px;border-bottom-color:transparent}.song-category-list .song-category-rank{font-variant-numeric:tabular-nums;color:#777777;min-width:1.25rem;font-weight:500}.song-category-current .song-category-list .song-category-rank{color:#333333}.song-category-list .song-category-title{font-weight:inherit}.song-category-list .song-category-artist{color:#777777}.song-category-list .song-category-artist::before{content:"— "}.song-essay{max-width:40rem;margin:2rem auto}.song-essay p{max-width:100% !important;padding:0 !important;line-height:1.7;margin:1rem 0 !important}.song-essay h2,.song-essay h3{margin:2rem 0 .75rem}.song-essay blockquote{border-left:3px solid #d4d4d4;padding-left:1rem;font-style:italic;color:#555555}.song-essay img{border-radius:8px;margin:1.5rem auto}.song-fav-audio{display:block;width:100%;margin-top:.75rem;border-radius:8px}.song-takeover{display:none;position:fixed;inset:0;z-index:100}.song-takeover.active{display:block}.song-takeover-backdrop{position:absolute;inset:0;background:rgba(13,13,13,0);transition:background .4s cubic-bezier(.16,1,.3,1)}.song-takeover.visible .song-takeover-backdrop{background:rgba(13,13,13,.5)}.song-takeover-panel{position:absolute;bottom:0;left:0;right:0;max-height:92vh;background:#f7f7f7;border-radius:16px 16px 0 0;transform:translateY(100%);transition:transform .4s cubic-bezier(.16,1,.3,1);box-shadow:0 -4px 40px rgba(13,13,13,.15)}.song-takeover.visible .song-takeover-panel{transform:translateY(0)}.song-takeover-close{position:sticky;top:0;z-index:2;float:right;margin:1rem 1.25rem 0 0;background:rgba(212,212,212,.6);border:none;border-radius:50%;width:2rem;height:2rem;font-size:1.563rem;line-height:1;color:#555555;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s ease;backdrop-filter:blur(8px)}.song-takeover-close:hover{background:rgba(119,119,119,.4)}.song-takeover-scroll{overflow-y:auto;max-height:92vh;padding:0 1rem 3rem;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}.song-takeover-scroll .song-detail{max-width:56rem;margin:0 auto;padding-top:1rem}.song-takeover-scroll .rank-hero{animation:rank-enter .6s cubic-bezier(.16,1,.3,1).2s forwards;opacity:0}.song-takeover-scroll .song-album-art{max-width:20rem;margin:1.5rem auto}.song-takeover-scroll .song-data,.song-takeover-scroll .song-essay,.song-takeover-scroll .song-fav-lyric,.song-takeover-scroll .song-fav-part,.song-takeover-scroll .song-fun-fact,.song-takeover-scroll .song-category-card,.song-takeover-scroll .song-pull-quote,.song-takeover-scroll .song-links,.song-takeover-scroll .song-tags{max-width:100%}.left a,.right a{transition:transform .2s ease-in-out}.projectsgrid .child{transition:transform .2s ease-in-out,box-shadow .2s ease-in-out}.projectsgrid .child:hover{transform:translateY(-2px);box-shadow:rgba(0,0,0,.1)0px 10px 50px}.albumgrid .child{transition:transform .2s ease-in-out}.albumgrid .child:hover{transform:translateY(-2px)}.left a:hover{transform:translateX(-.2rem)}.right a:hover{transform:translateX(.2rem)}.logo:hover{height:6.5rem;transform:translateY(-.5rem)}.elevator{position:sticky;padding:2rem;background-color:#333333;display:block;text-align:center;width:30px;bottom:1rem;right:1rem;transition:bottom .2s ease-in-out}.elevator:hover{bottom:2.25rem}.elevator a:hover{text-decoration:none}.elevator-button{cursor:pointer}.tags{text-align:center;display:block;font-size:.8rem}.type-tag{background-color:#f7f7f7;color:rgba(84,82,78,.8);padding:.25rem .5rem;margin:.25rem;border-radius:3px;display:inline-block;font-size:.8rem;text-transform:uppercase}@media(min-width:40rem){h1{font-size:3.815rem}hr{max-width:40%}.headline,.articletop{margin:2rem 0}.page,.home{width:100%;margin:4rem 0;justify-self:center}.home + article{margin-bottom:4rem}#menu{position:sticky;top:1.5rem;bottom:auto;margin:0 auto;padding:0 .5rem;border-radius:100px;width:fit-content;order:-1;box-shadow:inset 0 1px 20px rgba(242,242,242,.1)}#menu ul{gap:.25rem}#menu ul span{display:block;font-size:1rem;white-space:nowrap}#menu ul li a{padding:.5rem 1rem;border-radius:100px}#menu ul i{display:none}#menu #menu-pill{bottom:auto;top:.5rem;height:calc(100% - 1rem);background:rgba(119,119,119,.2);border-radius:100px}nav{margin:0 auto;max-width:40rem}.grid{grid-template-columns:repeat(12,1fr)}.grid > .column{grid-column:span var(--columns)}.twogrid{display:grid;grid-template-columns:2fr 1fr;max-width:74rem;font-size:1.25rem}.twogrid .experience p{margin-right:4rem}.role-excerpt{display:grid;grid-template-columns:1fr 1fr}.albumgrid li{box-shadow:rgba(0,0,0,.18)0px 2px 4px;border-radius:8px}.page .albumgrid{grid-template-columns:repeat(3,1fr)}.page .projectsgrid{gap:4rem}.home .albumgrid{grid-template-columns:repeat(6,36%);scroll-margin:0 0 0 50px}.home .projectsgrid{gap:3rem}.minigrid{grid-auto-columns:calc(33.333% - .33rem);overflow:hidden}.minigrid.two{grid-auto-columns:calc(50% - .25rem)}.minigrid figure{margin:0}.post p,.post ul,.post ol,audio,.aboutme p,.albumgrid ul,.projectsgrid ul{padding:0}.post img{margin:2rem auto 0;border-radius:2px}figure.em{max-width:64rem;display:block;margin:2rem auto 0;border-radius:0}.em:nth-of-type(odd)> img{width:50%;float:right;margin-top:0}.em:nth-of-type(even)> img{width:50%;margin-top:0;float:left}.third > img{width:33.3334%;float:left}.strong img,figure.strong{max-width:100%;max-height:100vh;padding:0;margin-bottom:3rem}figure.third{margin:0 auto;padding:0}figure.third img{padding:1rem .5rem;background-color:transparent}.medium img{max-width:40rem;margin:2rem auto;display:block}.project img{display:block;margin:0 auto}.browser img{box-shadow:rgba(0,0,0,.078)0px 5px 10px 1px,rgba(0,0,0,0)0px 0px 0px 0px,rgb(246,248,249)0px 0px 2px 0px inset}.device img{box-shadow:none;padding:1rem !important}.projectcover img{vertical-align:top;margin:0 auto;position:relative}.small img{max-width:25rem;margin:auto}figure.device.third{max-width:64rem}.aboutme{margin:2rem 1rem 0}footer{margin:0 auto}.elevator{bottom:2rem}.gridbox{margin:2rem}iframe{height:480px;padding:0}.extra{display:inline}.bottomnav{white-space:nowrap;text-overflow:ellipsis}.bottom{float:right;text-align:right;margin-right:4rem}div.guggenheim.gallery.zoom{margin:0 auto}.songs-hero-content h1{font-size:3.815rem}.rankings-list{grid-template-columns:repeat(2,1fr)}.song-card-play{opacity:.7}.song-detail .rank-number{font-size:4.768rem}.song-album-art{max-width:24rem}}@media(min-width:64rem){.songs-hero-content h1{font-size:4.768rem}.rankings-list{grid-template-columns:repeat(3,1fr)}iframe{width:850px;height:480px}.aboutme{margin:2rem auto 4rem}.safari{border:1px #f2f2f2 solid;border-top:24px #f2f2f2 solid;border-radius:8px 8px 0 0}.safari::before{content:"";height:8px;width:8px;background-color:#f6c600;position:absolute;border-radius:50%;left:8px;top:-16px}.safari::after{content:"";height:8px;width:8px;background-color:#2f6d24;position:absolute;border-radius:50%;left:24px;top:-16px}.iphone img{border:10px #f2f2f2 solid !important;border-top:30px #f2f2f2 solid !important;border-bottom:30px #f2f2f2 solid !important;padding:0 !important;width:calc(33.3334% - 40px)!important;border-radius:8px;margin:2rem 10px}}@media screen and (prefers-color-scheme:dark){body{background-color:black}body,h1,h2,h3,h4,footer,p,li,mark,.experience p,.projectsgrid a,h1 a,article ul li{color:#f2f2f2}#menu li a{color:rgba(119,119,119,.7)}#menu li > .currentpage{color:#f7f7f7 !important}.projectsgrid .child,.side{background:#1a1a1a;border:0}.projectsgrid .child ul,.side ul{list-style:circle}.projectsgrid .child:hover{box-shadow:rgba(255,255,255,.05)0px 10px 50px}#menu{background:rgba(51,51,51,.6);border:1px solid rgba(26,26,26,.4)}#menu-pill{background:#f7f7f7}.safari{border:1px #333333 solid !important;border-top:24px #333333 solid !important}.albumgrid::after{background:linear-gradient(90deg,rgba(0,0,0,0),rgba(13,13,13,.6))!important}#container{background-color:#1a1a1a}blockquote{background-color:#333333}.type-tag{background-color:#333333;color:rgba(119,119,119,.8)}.iphone img{border-color:#333333 !important}.songs-hero{background:#0d0d0d}.songs-hero-content h1{color:#f7f7f7}.songs-hero-content h4{color:rgba(255,255,255,.7)}.song-card:hover{box-shadow:0 8px 24px rgba(0,0,0,.4)}.song-card-play{background:rgba(119,119,119,.3)}.song-card-play .play-icon{border-color:transparent transparent transparent #f2f2f2}.song-card-play.playing .play-icon{border-color:transparent;border-left-color:#f2f2f2;border-right-color:#f2f2f2}.projectsgrid .child,.side{background:#333333;border:0}.projectsgrid .child ul,.side ul{list-style:circle}.twogrid .experience p{color:#f2f2f2}.projectsgrid .child:hover{box-shadow:rgba(255,255,255,.05)0px 10px 50px}.song-data{background:#1a1a1a;border-color:rgba(119,119,119,.2)}.song-data-row{border-bottom-color:rgba(119,119,119,.15)}.song-data-row dd{color:#f2f2f2}.song-data-row .mono{color:#f2f2f2}.song-side-note{background:rgba(246,198,0,.04)}.song-side-note p{color:#f2f2f2 !important}.song-pull-quote p{color:#f2f2f2}.song-fun-fact{background:rgba(27,46,103,.08);color:rgba(119,119,119,.8)}.song-fun-fact strong{color:#f2f2f2}.song-detail .rank-number{color:rgba(119,119,119,.6)}.song-detail .rank-tier-gold .rank-number{color:#c8a415}.song-detail .rank-tier-silver .rank-number{color:#8a8d90}.song-detail .rank-tier-bronze .rank-number{color:#a0673a}.song-tag{background:#1a1a1a;border-color:rgba(119,119,119,.3);color:rgba(119,119,119,.8)}.song-tag:hover{background:#f2f2f2;color:#1a1a1a;border-color:#f2f2f2}.song-fav-lyric .song-fav-lyric-text{color:#f2f2f2}.song-fav-part{background:rgba(210,86,48,.06)}.song-fav-part .song-fav-part-desc{color:#f2f2f2}.song-category-card{background:rgba(47,109,36,.06)}.song-category-list li a{color:#f2f2f2}.song-category-list .song-category-current{background:rgba(47,109,36,.1)}.song-essay p{color:#f2f2f2 !important}.song-essay blockquote{border-left-color:rgba(119,119,119,.3)}.song-fav-audio{filter:invert(1)}.song-takeover-panel{background:#0d0d0d}.song-takeover-close{background:rgba(119,119,119,.2);color:#f2f2f2}.song-takeover-close:hover{background:rgba(119,119,119,.35)}}@view-transition{navigation:auto}::view-transition-group(root){animation-duration:.15s}