@import"https://fonts.googleapis.com/css2?family=EB+Garamond&family=Lora&family=Noto+Serif+Display&display=swap";@import"https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@400;500&display=swap";@font-face{font-family:TAN Mon Cheri;src:url(/fonts/TAN-Mon-Cheri.otf) format("opentype");font-weight:400;font-style:normal}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.prose img,.markdown-body img{max-width:100%;height:auto;display:block;margin:20px auto;border-radius:8px}:root{--bg-color: #fdfaf6;--text-color: #7a5c34;--btn-bg: #f0dfcd}body{margin:0;background-color:var(--bg-color);color:var(--text-color);font-family:Lora,serif;overflow-x:hidden}.portfolio-container{max-width:1200px;margin:0 auto;padding:2rem 4rem;min-height:100vh;display:flex;flex-direction:column}.navbar{display:flex;justify-content:space-between;align-items:center;padding:1rem 0;font-family:"Noto Serif Display",serif}.logo{font-size:2.2rem;font-weight:500;margin:0;letter-spacing:-.5px}.nav-links{display:flex;gap:3.5rem}.nav-links a{text-decoration:none;color:var(--text-color);font-size:1.4rem;transition:opacity .2s}.nav-links a:hover{opacity:.7}.hero{display:flex;align-items:center;justify-content:center;flex:1;margin-top:4rem;position:relative}.image-wrapper{flex:0 0 55%;max-width:650px;z-index:1}.profile-img{width:100%;height:auto;display:block}.hero-content{flex:1;display:flex;flex-direction:column;align-items:flex-start;margin-left:-5%;z-index:2;padding-top:2rem}.title{font-family:TAN Mon Cheri,serif;font-size:7.5rem;line-height:1.2;margin:0 0 3rem;font-weight:400;white-space:nowrap}.subtitle{font-family:Lora,serif;font-size:1.2rem;letter-spacing:3px;margin-bottom:2rem;text-transform:uppercase;margin-left:2%}.cv-button{font-family:Lora,serif;background-color:var(--btn-bg);color:var(--text-color);border:none;padding:1.2rem 3.5rem;font-size:1.1rem;border-radius:0;cursor:pointer;letter-spacing:1px;align-self:flex-end;margin-right:5%;transition:color .4s ease-in-out;position:relative;overflow:hidden;z-index:1}.cv-button:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background-color:var(--text-color);z-index:-1;transition:left .4s ease-in-out}.cv-button:hover{color:var(--btn-bg)}.cv-button:hover:before{left:0}.footer{width:100%;text-align:center;padding:4rem 0 2rem;font-family:EB Garamond,serif;letter-spacing:2px;font-size:1rem;text-transform:uppercase}.evaluations-container{padding:2rem;color:#8a4d1f}.evaluations-container h1{font-family:TAN Mon Cheri,serif;font-size:2.5rem;text-transform:uppercase;border-bottom:2px solid #D9CBBF;padding-bottom:1rem;margin-bottom:2rem}.reviews-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem}.music-card{background-color:#f2e8df;padding:1rem;border-radius:8px;display:flex;align-items:center;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}.music-card:hover{transform:translateY(-5px);box-shadow:0 4px 12px #0000001a}.artist-image{width:6rem;height:6rem;border-radius:4px;object-fit:cover;margin-right:1.5rem}.music-card-text{display:flex;flex-direction:column;justify-content:center}.music-card h3{margin-top:0;font-size:1.25rem;margin-bottom:.2rem}.music-card p{font-size:.9rem;line-height:1.4;margin-bottom:0}.detail-modal{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#ffffffd9;display:flex;justify-content:center;align-items:center;z-index:1000}.modal-content.large-modal{background-color:#f1e5d6;border-radius:8px;width:90vw;max-width:1100px;max-height:85vh;padding:3rem;position:relative;overflow-y:auto;box-shadow:0 10px 30px #0000001a}.close-button{position:absolute;top:1.5rem;right:2rem;background:none;border:none;font-size:2.5rem;cursor:pointer;color:#9c7a58}.modal-grid-layout{display:grid;grid-template-columns:300px 1fr;gap:4rem;margin-top:1rem}.modal-left-col{display:flex;flex-direction:column}.detail-artist-image{width:100%;aspect-ratio:1 / 1;object-fit:cover;border-radius:4px;margin-bottom:2rem}.modal-keywords h3{font-size:1.4rem;color:#9c7a58;text-transform:uppercase;letter-spacing:2px;margin-bottom:1rem;margin-top:0}.keywords-list{list-style:disc;padding-left:1.5rem;color:#9c7a58;font-size:1.1rem;line-height:1.8}.keywords-list li::marker{color:#9c7a58}.modal-right-col{display:flex;flex-direction:column}.modal-title{font-size:2.5rem;color:#9c7a58;text-transform:uppercase;letter-spacing:3px;margin-top:0;margin-bottom:2rem;font-weight:600}.full-content p{font-size:1.1rem;line-height:1.8;color:#9c7a58;margin-bottom:.5rem}.review-date{font-size:.95rem;color:#b8a38e;font-style:italic;margin-top:-1.5rem;margin-bottom:2rem;letter-spacing:1px}
