@font-face{font-family:Bodoni;src:url(/fonts/bodoni.ttf) format("truetype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:GillSans;src:url(/fonts/gillsans.ttf) format("truetype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:GillSans;src:url(/fonts/gillsans-italic.ttf) format("truetype");font-weight:400;font-style:italic;font-display:swap}@font-face{font-family:GillSans;src:url(/fonts/gillsans-bolditalic.ttf) format("truetype");font-weight:400;font-style:italic;font-display:swap}@font-face{font-family:GillSans;src:url(/fonts/gillsans-semibolditalic.ttf) format("truetype");font-weight:400;font-style:italic;font-display:swap}:root{--accent: #6b5b4a;--accent-dark: #4a3b2a;--color-bg: #fafafa;--color-surface: #ffffff;--color-text: #1a1a1a;--color-text-soft: #4a4a4a;--color-text-muted: #767676;--color-border: #e0ddd8;--color-nav-bg: rgba(250, 250, 250, .92);--font-serif: "Bodoni", Georgia, "Times New Roman", serif;--font-body: "GillSans", "Helvetica Neue", Arial, sans-serif;--max-width: 1100px;--max-width-narrow: 720px}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:80px;font-size:16px}body{font-family:var(--font-body);background-color:var(--color-bg);color:var(--color-text);font-weight:300;line-height:1.7;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{color:var(--accent);text-decoration:none;transition:color .3s ease}a:hover{color:var(--accent-dark)}img{max-width:100%;display:block}h1,h2,h3,h4,h5,h6{font-family:var(--font-serif);color:var(--color-text);font-weight:500;line-height:1.2}h1{font-size:3.5rem;letter-spacing:-.02em}h2{font-size:2.25rem;letter-spacing:-.01em}h3{font-size:1.5rem}h4{font-size:1.25rem}p{margin-bottom:1rem;color:var(--color-text-soft)}main{min-height:calc(100vh - 200px)}.container{max-width:var(--max-width);margin:0 auto;padding:0 2rem}.container-narrow{max-width:var(--max-width-narrow);margin:0 auto;padding:0 2rem}.section{padding:6rem 0}header{position:fixed;top:0;left:0;right:0;z-index:100;background-color:var(--color-nav-bg);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid var(--color-border)}nav{max-width:var(--max-width);margin:0 auto;padding:1.25rem 2rem;display:flex;align-items:center;justify-content:space-between}nav h2{margin:0;font-size:1.4rem;font-weight:500;letter-spacing:.02em}nav h2 a{color:var(--color-text)}nav h2 a:hover{color:var(--accent)}.nav__logo{height:40px;width:auto;display:block}.nav__logo-link{display:flex;align-items:center;gap:.75rem}.internal-links{display:flex;gap:2.5rem;list-style:none}.internal-links a{padding:.5em 0;color:var(--color-text-soft);font-size:.85rem;letter-spacing:.08em;text-transform:uppercase;border-bottom:2px solid transparent;font-weight:400}.internal-links a:hover{color:var(--color-text)}.internal-links a.active{color:var(--color-text);border-bottom-color:var(--accent)}.lang-switch{font-weight:700;color:var(--accent);font-size:.85rem;letter-spacing:.08em;text-transform:uppercase;padding:.5em 0}.lang-switch:hover{color:var(--accent-dark)}.nav-actions{display:flex;align-items:center;gap:1.25rem}.nav-toggle{display:none;flex-direction:column;gap:5px;cursor:pointer;background:none;border:none;padding:0}.nav-toggle span{width:24px;height:1px;background-color:var(--color-text);transition:.3s}.hero{min-height:100vh;display:flex;align-items:center;justify-content:center;text-align:center;position:relative;overflow:hidden}.hero__content{max-width:700px;padding:0 2rem}.hero__name{font-family:var(--font-serif);font-size:4.5rem;font-weight:400;letter-spacing:-.02em;margin-bottom:1rem;color:var(--color-text)}.hero__title{font-family:var(--font-body);font-size:1rem;letter-spacing:.3em;text-transform:uppercase;color:var(--color-text-muted);margin-bottom:3rem}.hero__quote{font-family:var(--font-serif);font-style:italic;font-size:1.5rem;color:var(--color-text-soft);line-height:1.6;max-width:500px;margin:0 auto}.hero__scroll{position:absolute;bottom:2rem;left:50%;transform:translate(-50%);font-size:.75rem;letter-spacing:.2em;text-transform:uppercase;color:var(--color-text-muted);animation:fadeInOut 2s ease-in-out infinite}@keyframes fadeInOut{0%,to{opacity:.3}50%{opacity:1}}.page-header{padding:10rem 0 4rem;text-align:center}.page-header h1{margin-bottom:1rem}.page-header__subtitle{font-size:1rem;letter-spacing:.15em;text-transform:uppercase;color:var(--color-text-muted)}.about{display:grid;grid-template-columns:1fr 1.5fr;gap:4rem;align-items:start}.about__image{width:100%;aspect-ratio:3/4;background-color:var(--color-border);border-radius:2px;overflow:hidden}.about__image img{width:100%;height:100%;object-fit:cover}.about__text p{font-size:1.05rem;line-height:1.9;margin-bottom:1.5rem}.about__highlights{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem;margin-top:3rem;padding-top:3rem;border-top:1px solid var(--color-border)}.about__highlight{text-align:center}.about__highlight-number{font-family:var(--font-serif);font-size:2.5rem;color:var(--accent);display:block;margin-bottom:.5rem}.about__highlight-label{font-size:.8rem;letter-spacing:.1em;text-transform:uppercase;color:var(--color-text-muted)}.portfolio__tabs{display:flex;justify-content:center;gap:0;margin-bottom:4rem;border-bottom:1px solid var(--color-border);list-style:none}.portfolio__tab{padding:1rem 2.5rem;font-size:.85rem;letter-spacing:.1em;text-transform:uppercase;color:var(--color-text-muted);cursor:pointer;transition:color .3s ease;position:relative;background:none;border:none;font-family:var(--font-body)}.portfolio__tab:hover,.portfolio__tab.active{color:var(--color-text)}.portfolio__tab.active:after{content:"";position:absolute;bottom:-1px;left:0;right:0;height:2px;background-color:var(--accent)}.portfolio__section{padding:3rem 0 5rem;scroll-margin-top:80px}.portfolio__section-title{font-family:var(--font-serif);font-size:2rem;margin-bottom:.5rem}.portfolio__section-desc{color:var(--color-text-muted);font-size:.95rem;margin-bottom:3rem}.cards-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2.5rem}.card{background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:2px;overflow:hidden;transition:transform .3s ease,box-shadow .3s ease}.card:hover{transform:translateY(-4px);box-shadow:0 12px 40px #0000000f}.card__image{width:100%;aspect-ratio:1/1;background-color:var(--color-border);overflow:hidden}.card__image img{width:100%;height:100%;object-fit:cover}.card__body{padding:1.5rem}.card__title{font-family:var(--font-serif);font-size:1.25rem;margin-bottom:.5rem}.card__meta{font-size:.8rem;letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-muted);margin-bottom:.75rem}.card__desc{font-size:.9rem;color:var(--color-text-soft);line-height:1.6}.concerts-list{list-style:none}.concert-item{display:grid;grid-template-columns:140px 1fr;gap:2rem;align-items:center;padding:1.75rem 0;border-bottom:1px solid var(--color-border)}.concert-item__date{font-family:var(--font-serif);font-size:1.1rem}.concert-item__date-year{font-family:var(--font-serif);font-size:1.1rem;color:var(--accent);white-space:nowrap}.concert-item__details h3{font-size:1.2rem;margin-bottom:.25rem}.concert-item__role{font-style:italic;color:var(--color-text-soft);font-size:.9rem;margin:.15rem 0 .3rem}.concert-item__venue{font-size:.9rem;color:var(--color-text-muted)}.discography-item{display:grid;grid-template-columns:200px 1fr;gap:2.5rem;align-items:center;padding:2.5rem 0;border-bottom:1px solid var(--color-border)}.discography-item__cover{width:200px;height:200px;background-color:var(--color-border);border-radius:2px;overflow:hidden}.discography-item__cover img{width:100%;height:100%;object-fit:cover}.discography-item__info h3{font-size:1.4rem;margin-bottom:.5rem}.discography-item__year{font-size:.85rem;letter-spacing:.1em;text-transform:uppercase;color:var(--color-text-muted);margin-bottom:1rem}.discography-item__tracks{list-style:none;margin-top:1rem}.discography-item__tracks li{padding:.4rem 0;font-size:.9rem;color:var(--color-text-soft);display:flex;justify-content:space-between}.track-number{color:var(--color-text-muted);width:2rem}.teaching{display:grid;grid-template-columns:1fr 1fr;gap:4rem}.teaching__info p{font-size:1.05rem;line-height:1.9;margin-bottom:1.5rem}.teaching__offerings{list-style:none;margin-top:2rem}.teaching__offerings li{padding:1rem 0;border-bottom:1px solid var(--color-border);display:grid;grid-template-columns:2rem 1fr;align-items:start;gap:1rem}.teaching__offering-icon{font-family:var(--font-serif);font-size:1.5rem;color:var(--accent)}.teaching__offering-text h4{font-family:var(--font-serif);font-size:1.15rem;margin-bottom:.25rem}.teaching__offering-text p{font-size:.9rem;color:var(--color-text-muted);margin:0}.teaching__image{width:100%;aspect-ratio:3/4;background-color:var(--color-border);border-radius:2px;overflow:hidden}.teaching__image img{width:100%;height:100%;object-fit:cover}.contact{text-align:center}.contact__info{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem;margin-top:4rem}.contact__item{padding:2rem;border:1px solid var(--color-border);border-radius:2px;background-color:var(--color-surface)}.contact__item h3{font-size:1.1rem;margin-bottom:.75rem}.contact__item p{font-size:.9rem;color:var(--color-text-muted);margin:0}.contact__item a{color:var(--accent);transition:color .3s ease}.contact__item a:hover{color:var(--color-text)}footer{padding:3rem 0;border-top:1px solid var(--color-border);text-align:center}.footer__name{font-family:var(--font-serif);font-size:1.2rem;margin-bottom:.5rem}.footer__text{font-size:.8rem;color:var(--color-text-muted);letter-spacing:.05em;margin:0}.footer__social{display:flex;justify-content:center;gap:1.5rem;margin-top:1.5rem;list-style:none}.footer__social a{font-size:.8rem;letter-spacing:.1em;text-transform:uppercase;color:var(--color-text-muted);transition:color .3s ease}.footer__social a:hover{color:var(--color-text)}.btn{display:inline-block;margin-top:2rem;padding:.9rem 2.5rem;border:1px solid var(--accent);color:var(--accent);font-size:.85rem;letter-spacing:.15em;text-transform:uppercase;transition:all .3s ease}.btn:hover{background-color:var(--accent);color:#fff}@media(max-width:900px){h1{font-size:2.5rem}.hero__name{font-size:3rem}.internal-links{display:none;position:absolute;top:100%;left:0;right:0;flex-direction:column;background-color:var(--color-surface);padding:1.5rem 2rem;gap:1.5rem;border-bottom:1px solid var(--color-border)}.internal-links.open,.nav-toggle{display:flex}.about{grid-template-columns:1fr;gap:2rem}.about__highlights{grid-template-columns:1fr;gap:1.5rem}.cards-grid{grid-template-columns:repeat(2,1fr);gap:1.5rem}.concert-item{grid-template-columns:80px 1fr;gap:1rem}.concert-item__link{grid-column:1 / -1;justify-self:start}.discography-item{grid-template-columns:1fr;gap:1.5rem}.discography-item__cover{width:150px;height:150px}.teaching{grid-template-columns:1fr;gap:2rem}.contact__info{grid-template-columns:1fr}.section{padding:4rem 0}}@media(max-width:600px){h1{font-size:2rem}.hero__name{font-size:2.25rem}.hero__quote{font-size:1.1rem}.cards-grid{grid-template-columns:1fr}.portfolio__tabs{flex-wrap:wrap}.portfolio__tab{padding:.75rem 1.25rem;font-size:.75rem}.container,.container-narrow{padding:0 1.25rem}}a[data-astro-cid-eimmu3lg]{display:inline-block;text-decoration:none}a[data-astro-cid-eimmu3lg].active{font-weight:bolder;text-decoration:none}.nav-actions[data-astro-cid-3ef6ksr2]{display:flex;align-items:center;gap:1.25rem}.nav-toggle[data-astro-cid-3ef6ksr2]{display:none;flex-direction:column;gap:5px;cursor:pointer;background:none;border:none;padding:0}.nav-toggle[data-astro-cid-3ef6ksr2] span[data-astro-cid-3ef6ksr2]{width:24px;height:1px;background-color:var(--color-text);transition:.3s}@media(max-width:900px){.nav-toggle[data-astro-cid-3ef6ksr2]{display:flex}}footer[data-astro-cid-sz7xmlte]{padding:3rem 0;border-top:1px solid var(--color-border);text-align:center}.footer__name[data-astro-cid-sz7xmlte]{font-family:var(--font-serif);font-size:1.2rem;margin-bottom:.5rem}.footer__text[data-astro-cid-sz7xmlte]{font-size:.8rem;color:var(--color-text-muted);letter-spacing:.05em;margin:0}.footer__social[data-astro-cid-sz7xmlte]{display:flex;justify-content:center;gap:1.5rem;margin-top:1.5rem;list-style:none}.footer__social[data-astro-cid-sz7xmlte] a[data-astro-cid-sz7xmlte]{font-size:.8rem;letter-spacing:.1em;text-transform:uppercase;color:var(--color-text-muted);transition:color .3s ease}.footer__social[data-astro-cid-sz7xmlte] a[data-astro-cid-sz7xmlte]:hover{color:var(--color-text)}
