@import"https://fonts.googleapis.com/css2?family=Space+Mono:ital,wght@0,400;0,700;1,400&display=swap";:root{--font-size-base: 16px;--font-sans: "Hoefler Text", "Big Caslon", "Baskerville Old Face", Baskerville, "Libre Baskerville", Georgia, "Times New Roman", serif;--bg-color: #f7f7f7;--window-bg: #ffffff;--border-color: rgba(0, 0, 0, .08);--text-primary: #1a1a1a;--text-secondary: #666666;--text-tertiary: #999999;--accent-blue: #3b82f6;--accent-green: #22c55e;--accent-yellow: #eab308;--accent-red: #ef4444;--shadow-sm: 0 2px 4px rgba(0, 0, 0, .02);--shadow-md: 0 4px 12px rgba(0, 0, 0, .05);--shadow-lg: 0 10px 25px rgba(0, 0, 0, .08);--radius-sm: 6px;--radius-md: 12px;--radius-lg: 16px}*{margin:0;padding:0;box-sizing:border-box}html{font-size:var(--font-size-base)}body{font-family:var(--font-sans);font-size:1rem;background-color:var(--bg-color);background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noiseFilter'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.65' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noiseFilter)'/%3E%3C/svg%3E");background-blend-mode:overlay;background-attachment:fixed;color:var(--text-primary);line-height:1.6;-webkit-font-smoothing:antialiased;letter-spacing:.01em;position:relative;min-height:100vh}.bg-animation{position:fixed;top:0;left:0;width:100%;height:100%;z-index:-1;overflow:hidden;pointer-events:none}.blob{position:absolute;width:500px;height:500px;background:#00000008;filter:blur(80px);border-radius:50%;animation:float 25s infinite alternate ease-in-out}.blob-1{top:-100px;left:-100px;animation-duration:30s}.blob-2{bottom:-100px;right:-100px;animation-delay:-5s;animation-duration:35s}.blob-3{top:40%;left:60%;animation-delay:-10s;animation-duration:40s;width:300px;height:300px}@keyframes float{0%{transform:translate(0) scale(1)}33%{transform:translate(30px,-50px) scale(1.1)}66%{transform:translate(-20px,20px) scale(.9)}to{transform:translate(0) scale(1)}}a{color:inherit;text-decoration:none;transition:all .2s cubic-bezier(.4,0,.2,1);border-bottom:1px solid transparent}a:hover{opacity:.8;border-bottom-color:currentColor}.now-playing-container{position:relative;display:flex;align-items:center;gap:1.25rem;background:#fff;padding:.6rem 1.5rem .6rem .8rem;border-radius:100px;border:1px solid rgba(0,0,0,.08);box-shadow:0 4px 6px -1px #0000000d,0 2px 4px -1px #00000008,inset 0 1px 1px #fffc;overflow:hidden;max-width:fit-content;transition:all .3s ease}.now-playing-container:before{content:"";position:absolute;top:0;left:0;right:0;height:50%;background:linear-gradient(to bottom,#fff6,#ffffff1a);pointer-events:none;z-index:10}.vinyl-player{position:relative;width:58px;height:58px;display:flex;align-items:center;justify-content:center;flex-shrink:0;z-index:5}.vinyl-record{width:100%;height:100%;background:#111;border-radius:50%;position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px #0006,inset 0 0 10px #ffffff0d;border:3px solid #1a1a1a}.vinyl-player.is-playing .vinyl-record{animation:spin 3s linear infinite}.album-art{width:52%;height:52%;border-radius:50%;z-index:2;object-fit:cover;border:1px solid rgba(0,0,0,.3);background:#222}.photo-overlay{position:fixed;inset:0;background:#ffffffd9;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:1000;display:flex;align-items:center;justify-content:center;padding:2rem}.expanded-polaroid-container{display:flex;align-items:center;justify-content:center;max-width:90vw;max-height:90vh}.polaroid.expanded{width:450px;max-width:85vw;padding:16px 16px 80px;transform:rotate(0)!important;box-shadow:0 25px 50px -12px #00000040}.polaroid.expanded .polaroid-label{bottom:20px;font-size:2.2rem}.polaroid.expanded .polaroid-date{font-size:1.2rem;margin-top:8px}.vinyl-grooves{position:absolute;inset:0;background:radial-gradient(circle at center,transparent 0,transparent 38%,rgba(255,255,255,.05) 39%,transparent 40%,rgba(255,255,255,.05) 43%,transparent 44%,rgba(255,255,255,.05) 48%,transparent 49%,rgba(255,255,255,.05) 53%,transparent 54%);z-index:1}.vinyl-record:after{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(255,255,255,.12) 0%,transparent 40%,rgba(255,255,255,.06) 50%,transparent 60%,rgba(255,255,255,.12) 100%);z-index:3;pointer-events:none}.vinyl-needle{position:absolute;top:0;right:-6px;width:20px;height:32px;z-index:5;transform-origin:top right;transform:rotate(-30deg);transition:transform .8s cubic-bezier(.4,0,.2,1);pointer-events:none}.vinyl-needle:before{content:"";position:absolute;top:0;right:4px;width:3px;height:28px;background:#cbd5e1;border-radius:4px;box-shadow:1px 1px 2px #00000026}.vinyl-needle:after{content:"";position:absolute;bottom:0;left:0;width:7px;height:10px;background:#334155;border-radius:1px;transform:rotate(30deg)}.vinyl-player.is-playing .vinyl-needle{transform:rotate(4deg)}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.song-info{display:flex;flex-direction:column;align-items:flex-start;gap:.1rem;z-index:20;min-width:0}.song-row{display:flex;align-items:center;gap:8px}.audio-wave{display:flex;align-items:flex-end;gap:2.5px;height:14px}.wave-bar{width:3px;height:6px;background:#1db954;border-radius:10px;animation:wave-pulse 1s ease-in-out infinite}.wave-bar:nth-child(2){animation-delay:.2s;height:12px}.wave-bar:nth-child(3){animation-delay:.4s;height:9px}.wave-bar:nth-child(4){animation-delay:.6s;height:13px}@keyframes wave-pulse{0%,to{transform:scaleY(1);opacity:.7}50%{transform:scaleY(1.4);opacity:1}}.song-name{font-size:.85rem;font-weight:700;color:#111;letter-spacing:-.01em;text-transform:uppercase;white-space:nowrap;overflow:visible;line-height:1}.artist-name{font-size:.8rem;font-weight:500;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.06em;opacity:.8}.container{max-width:720px;margin:0 auto;padding:2.5rem 1.5rem;position:relative;overflow-x:clip}.container-main{position:relative;z-index:1}.hero-banner{position:relative;width:100%;height:16rem;margin-bottom:1.25rem;overflow:hidden;border-radius:var(--radius-md)}.hero-banner__overlay{position:absolute;inset:0;z-index:2;display:flex;flex-direction:column;justify-content:space-between;align-items:stretch;width:100%;padding:.65rem 0 .75rem;box-sizing:border-box;overflow:hidden;pointer-events:none}.hero-banner__tools{display:flex;justify-content:flex-end;pointer-events:auto}.hero-banner__overlay .hero-heading__row{pointer-events:auto}.hero-mountain-banner{position:absolute;inset:0;z-index:0;pointer-events:none;overflow:hidden;background:var(--bg-color, #f7f7f7)}.hero-mountain-banner__media{position:absolute;inset:0;width:100%;height:100%}.hero-mountain-banner__media img{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 62%}.hero-mountain-banner__scrim{position:absolute;inset:0;pointer-events:none;border-radius:inherit;background:linear-gradient(180deg,transparent 0%,transparent 58%,rgba(247,247,247,.25) 78%,rgba(247,247,247,.72) 100%)}.hero-banner .hero-heading__h1{color:#0f0f0f;text-shadow:0 1px 3px rgba(255,255,255,.9)}.retro-window{background:#ffffffeb;border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:var(--shadow-md);overflow:hidden;margin-bottom:1.5rem;transition:transform .2s ease,box-shadow .2s ease}.retro-window:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)}.retro-header{padding:.75rem 1rem;background:var(--window-bg);border-bottom:1px solid var(--border-color);display:flex;align-items:center;gap:.5rem;font-size:.8rem;font-weight:500;color:var(--text-secondary);min-width:0}.reading-page .section-icon{min-width:0}.reading-page .section-icon span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.reading-page__body{padding-top:1rem;padding-bottom:1.25rem}.reading-page__intro{margin:0 0 1rem;font-size:1rem;line-height:1.55;color:var(--text-secondary);max-width:52ch}.reading-list{list-style:none;margin:0;padding:0}.reading-list__item{display:flex;gap:.85rem;align-items:flex-start;padding:.75rem 0;border-bottom:1px solid var(--border-color)}.reading-list__item:last-of-type{border-bottom:none}.reading-list__cover{flex-shrink:0;width:56px;aspect-ratio:2 / 3;border-radius:8px;overflow:hidden;background:#f1f1f1;border:1px solid var(--border-color);box-shadow:var(--shadow-sm);display:flex;align-items:center;justify-content:center}.reading-list__cover--placeholder{aspect-ratio:1;width:40px;height:40px}.reading-list__cover-img{width:100%;height:100%;object-fit:cover;display:block}.reading-list__meta{min-width:0}.reading-list__title{font-size:1rem;font-weight:600;color:var(--text-primary);letter-spacing:-.02em}.writing-list__link{display:flex;gap:.85rem;align-items:flex-start;text-decoration:none;color:inherit;width:100%}.writing-list__link:hover .reading-list__title{color:var(--accent-blue)}.writing-list__external{display:inline-block;vertical-align:middle;margin-left:.35rem;opacity:.45}.writing-list__link:hover .writing-list__external{opacity:.85}.reading-list__author{font-size:.85rem;color:var(--text-tertiary);margin-top:.15rem}.reading-page__footer{margin:1.25rem 0 0}.reading-page__home-link{color:var(--accent-blue);font-weight:500;text-decoration:underline;font-size:1rem}.section-icon{display:flex;align-items:center;gap:.5rem;color:var(--text-tertiary)}.retro-content{padding:.75rem 1.25rem}h1{font-size:2.1rem;font-weight:600;margin-bottom:.4rem;letter-spacing:-.03em;display:flex;align-items:center;gap:15px}.site-header{position:relative}.site-header--home{margin-bottom:2.5rem}.site-header__links{position:relative;z-index:3;display:flex;flex-wrap:wrap;align-items:center;gap:1.25rem;font-size:1rem;margin-bottom:1rem}.site-header__links a{color:#3b82f6;font-weight:500}.hero-banner__tools .now-playing-container{flex-shrink:0;margin:0;padding:.4rem 1rem .4rem .55rem;gap:.85rem}.hero-banner__tools .vinyl-player{width:48px;height:48px}.hero-banner__tools .song-name{font-size:.8rem}.hero-banner__tools .artist-name{font-size:.72rem}.site-header__bio{max-width:600px;font-size:1rem;color:#444;margin:0 0 1.25rem;position:relative;z-index:1}.site-header__bio a{color:#3b82f6;font-weight:500;text-decoration:underline}.site-header__social-pills{display:flex;flex-wrap:wrap;gap:.6rem;position:relative;z-index:1}.hero-heading__row{position:relative;z-index:1;display:flex;align-items:flex-end;width:100%}.hero-heading__avatar-wrap{flex-shrink:0;line-height:0}.hero-heading__avatar{width:88px;height:88px;border-radius:0;object-fit:cover;flex-shrink:0;border:1px solid rgba(0,0,0,.07);box-shadow:0 2px 8px #0000000f,0 8px 24px #00000014}.hero-heading__h1{position:relative;z-index:1;margin:0;flex:1;min-width:0;text-shadow:0 0 18px rgba(255,255,255,.95),0 0 8px rgba(255,255,255,.9),0 1px 0 rgba(255,255,255,.95)}.hero-heading__name{position:relative;display:block;margin-left:.65rem}h2{font-size:1.25rem;font-weight:600;margin-bottom:1rem}h3{font-size:1rem;font-weight:600}p{margin-bottom:1rem;font-size:1rem;color:var(--text-secondary)}.tag{display:inline-flex;align-items:center;gap:.4rem;padding:.4rem .8rem;background:#f1f1f1;border-radius:100px;font-size:.85rem;font-weight:500;color:var(--text-secondary)}.social-pill{position:relative;display:inline-flex;align-items:center;gap:.6rem;padding:.5rem 1.25rem;border-radius:100px;font-size:.95rem;font-weight:600;color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.3);border:1px solid rgba(255,255,255,.15);box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f,inset 0 1px 1px #ffffff4d,inset 0 -1px 1px #0003;overflow:hidden;transition:all .25s cubic-bezier(.4,0,.2,1)}.social-pill:before{content:"";position:absolute;top:0;left:0;right:0;height:50%;background:linear-gradient(to bottom,#ffffff40,#ffffff0d);pointer-events:none}.social-pill:hover{transform:translateY(-2px);box-shadow:0 10px 15px -3px #0003,0 4px 6px -2px #0000000d,inset 0 1px 1px #fff6}.social-pill.github{background:#24292e}.social-pill.x{background:#000}.social-pill.linkedin{background:#0077b5}.social-pill.instagram{background:linear-gradient(45deg,#f09433,#e6683c,#dc2743,#cc2366,#bc1888)}.social-pill.calendly{background:#3b82f6;padding:.5rem 1.1rem}.card{display:flex;gap:1rem;padding:.75rem 0;border-bottom:1px solid var(--border-color)}.card:last-child{border-bottom:none}.card-icon{width:40px;height:40px;border-radius:8px;background:#f1f1f1;display:flex;align-items:center;justify-content:center;flex-shrink:0}.card-info{flex-grow:1}.card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:.25rem}.card-header-end{display:flex;align-items:center;gap:.2rem;flex-shrink:0}.card-expand-chevron{display:inline-flex;align-items:center;justify-content:center;padding:.15rem;margin:-.15rem -.1rem -.15rem 0;border:none;background:transparent;border-radius:6px;color:var(--text-tertiary);cursor:pointer;line-height:0}.card-expand-chevron:hover{background:#0000000f;color:var(--text-secondary)}.card-expand-chevron svg{transition:transform .22s ease}.card-expand-chevron[aria-expanded=true] svg{transform:rotate(180deg)}.card-bullets-list{margin:.35rem 0 0;padding-left:1.15rem;font-size:1rem;color:var(--text-secondary);line-height:1.45}.card-bullets-list li{margin-bottom:.28rem}.card-bullets-list li:last-child{margin-bottom:0}.card-date{font-size:.8rem;color:var(--text-tertiary)}.card-subtitle{font-size:.85rem;color:var(--text-tertiary);margin-bottom:.15rem}.card-description{font-size:1rem;color:var(--text-secondary)}.card-bullets-oneline{margin-top:.35rem;font-size:1rem;color:var(--text-secondary);line-height:1.5}.card-bullets-oneline--comma{line-height:1.65;padding-bottom:.1rem}.places-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;padding:1.5rem;background:#00000005;border-radius:var(--radius-lg);justify-items:center;border:1px solid rgba(0,0,0,.03)}.polaroid{background:#fff;padding:8px 8px 52px;box-shadow:0 1px 3px #0000001a,0 10px 20px -5px #00000014;transition:all .4s cubic-bezier(.175,.885,.32,1.275);position:relative;width:140px;border:1px solid rgba(0,0,0,.03)}.polaroid:hover{transform:scale(1.1) rotate(0)!important;z-index:10;box-shadow:0 20px 25px -5px #00000026}.polaroid img{width:100%;aspect-ratio:1/1;object-fit:cover;filter:sepia(.2) contrast(1.1) brightness(1.05);border:1px solid rgba(0,0,0,.05);display:block}.polaroid-label{position:absolute;bottom:0;left:0;right:0;height:52px;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;font-family:var(--font-sans);font-size:.75rem;font-weight:500;line-height:1.25;color:#555;letter-spacing:.01em;padding:0 8px}.polaroid-date{font-size:.6rem;opacity:.6;display:block;font-weight:400;margin-top:2px}.place-item{width:100%;display:flex;justify-content:center}footer{text-align:center;padding-bottom:2.5rem;color:var(--text-tertiary);font-size:1rem}.footer-links{display:flex;justify-content:center;gap:1.5rem;margin-bottom:1rem}.photo-overlay{position:fixed;inset:0;background:#fffc;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:1000;display:flex;align-items:center;justify-content:center;cursor:zoom-out;padding:2rem}.expanded-polaroid-container{max-width:90vw;max-height:90vh;cursor:default}.polaroid.expanded{width:min(600px,85vw);padding:16px 16px 100px;transform:rotate(0)!important;box-shadow:0 30px 60px -12px #00000040,0 18px 36px -18px #0000004d}.polaroid.expanded .polaroid-label{height:100px;font-size:1.2rem;letter-spacing:.01em}.polaroid.expanded .polaroid-date{font-size:.8rem;margin-top:6px}.building-section .retro-content{padding-top:.25rem;padding-bottom:.25rem}.building-section .card{padding:.5rem 0}.building-section .card-bullets-oneline,.building-section .card-bullets-list{margin-top:.2rem}.building-section{background:#fff9!important;backdrop-filter:blur(12px) saturate(180%);-webkit-backdrop-filter:blur(12px) saturate(180%);border:1px solid rgba(255,255,255,.3)!important;position:relative;overflow:hidden}.building-section:before{content:"";position:absolute;top:0;left:0;right:0;height:50%;background:linear-gradient(to bottom,#fff6,#fff0);pointer-events:none;z-index:10}.building-section .retro-header{background:transparent!important;border-bottom:1px solid rgba(0,0,0,.04)}.building-section .card{border-bottom:1px solid rgba(0,0,0,.04)}.building-section .card-icon{background:#00000008;box-shadow:inset 0 1px 2px #0000000d}.building-section .card-icon.card-icon--logo-clean{background:#fff;box-shadow:none}.building-section .retro-header{position:relative;z-index:20}.experience-subsection+.experience-subsection{border-top:1px solid rgba(0,0,0,.06);margin-top:.35rem;padding-top:.5rem}.experience-section-heading{font-size:.68rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--text-tertiary);padding-bottom:.35rem}@media(max-width:640px){.container{padding:1.5rem 1rem}.site-header__links{margin-bottom:.75rem}.hero-banner{height:12.5rem;margin-bottom:1rem}.hero-banner__overlay{padding:.4rem 0 .55rem}.hero-banner__tools .now-playing-container{max-width:100%}.hero-heading__row{flex-direction:row;align-items:flex-start;justify-content:space-between;gap:.85rem}.hero-heading__h1{font-size:1.7rem}.hero-heading__avatar{width:64px;height:64px}h1{font-size:1.7rem}header p{font-size:1rem!important}.site-header__bio{font-size:1rem!important}header .site-header__links{flex-wrap:wrap;gap:.75rem!important;font-size:1rem!important}.now-playing-container{padding:.4rem 1rem .4rem .6rem;gap:.75rem}.vinyl-player{width:44px;height:44px}.song-name{font-size:.75rem}.artist-name{font-size:.7rem}.places-grid{grid-template-columns:repeat(2,1fr);padding:1rem;gap:.75rem}.polaroid{width:100%;padding-bottom:40px}.polaroid-label{height:40px;font-size:.65rem}.card{flex-direction:column;gap:.75rem}.card-header{flex-direction:column;gap:.25rem}.card-date{font-size:.75rem}.card-bullets-oneline{font-size:1rem}.social-pill{padding:.4rem 1rem;font-size:.85rem}.footer-links{gap:1rem;flex-wrap:wrap}.retro-header{padding:.6rem .85rem;font-size:.75rem}.retro-content{padding:.6rem 1rem}}@media(max-width:400px){.container{padding:1.25rem .75rem}.places-grid{grid-template-columns:1fr;padding:.75rem}h1{font-size:1.5rem}header p{font-size:1rem!important}.now-playing-container{padding:.35rem .75rem .35rem .5rem;gap:.5rem}.vinyl-player{width:38px;height:38px}.song-name{font-size:.7rem}.artist-name{font-size:.65rem}.expanded-polaroid-container{padding:1rem}.polaroid.expanded{padding-bottom:60px}.polaroid.expanded .polaroid-label{font-size:1.2rem;height:60px}.social-pill{padding:.35rem .85rem;font-size:.8rem}.retro-header{padding:.5rem .75rem;font-size:.7rem}}.place-item,.polaroid{transform:rotate(0)!important}
