@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;450;500;550;600&family=Italiana&display=swap');
:root{--paper:#f4f1e9;--ink:#292c24;--muted:#74766b;--olive:#626850;--line:#d9d8cc;--dark:#282b23;--accent:#bcc2a4;--serif:'Italiana','Bodoni MT',Didot,'Times New Roman',serif;--sans:'DM Sans',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:28px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:15px;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid #9b734c;outline-offset:6px}img{display:block;max-width:100%;object-fit:cover}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-weight:400}em{font-family:var(--serif);font-weight:400}p{line-height:1.8}.header{height:112px;padding:0 5.5%;display:flex;align-items:center;justify-content:space-between}.wordmark{font-family:var(--serif);font-size:35px;letter-spacing:1px}.logo-dot{color:var(--olive)}nav{display:flex;align-items:center;gap:36px;font-size:12px}nav>a{position:relative}nav>a:not(.nav-contact):after{content:'';position:absolute;bottom:-6px;left:0;width:0;height:1px;background:currentColor;transition:width .2s}nav>a:hover:after{width:100%}.nav-contact{border:1px solid #9d9f91;padding:13px 19px;margin-left:8px;display:flex;gap:30px}.nav-contact:hover{background:#e7e7dc}.menu-toggle{display:none}.hero{min-height:690px;height:min(760px,calc(100svh - 138px));margin:0 24px;position:relative;overflow:hidden;background:#252922;color:#f6f1e6}.hero-photo{position:absolute;right:0;width:53%;height:100%}.hero-photo img{width:100%;height:100%;object-position:50% 32%;filter:grayscale(100%) sepia(12%);opacity:.85}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,#252922 0%,#252922 33%,rgba(37,41,34,.93) 43%,rgba(37,41,34,.18) 68%,rgba(37,41,34,.04) 100%)}.hero-content{position:relative;padding:84px 0 0 6.2%;max-width:800px}.eyebrow{font-size:10px;font-weight:500;letter-spacing:2.1px;display:flex;gap:20px;align-items:center;color:#c7c9b9;line-height:1.5}.eyebrow.dark{color:#666c57}.eyebrow>span:first-child:not(.tiny-line){color:#979d87;letter-spacing:0}.tiny-line{display:inline-block;width:31px;height:1px;background:#a8ae94}h1{font-family:var(--serif);font-size:clamp(72px,6.5vw,108px);line-height:1.06;letter-spacing:-2px;margin-top:36px}h1 em{color:#c4c7ae}.hero-description{margin-top:28px;font-size:16px;color:#dcdfd1;line-height:1.8}.hero-actions{display:flex;align-items:center;gap:30px;margin-top:38px}.button{min-height:49px;padding:16px 22px;border:0;display:inline-flex;align-items:center;justify-content:space-between;gap:40px;font-size:12px;font-weight:500;transition:background .2s,transform .2s}.button:hover{transform:translateY(-2px)}.button-cream{background:#eeeede;color:#2b3026}.button-cream:hover{background:white}.text-link{display:inline-flex;align-items:center;gap:24px;border-bottom:1px solid #a4a68f;padding-bottom:8px;font-size:12px;font-weight:500;background:none;border-left:0;border-top:0;border-right:0}.text-link:hover{color:#7a704e}.text-link.light{color:#e3e5d7;border-color:#676c59}.text-link.light:hover{color:white}.hero-caption{position:absolute;left:6.2%;right:4%;bottom:28px;display:flex;justify-content:space-between;font-size:9px;letter-spacing:1.6px;color:#d0d3c1}.scroll-cue{position:absolute;right:32px;top:55px;writing-mode:vertical-rl;font-size:8px;letter-spacing:2px;color:#d4d6c9;display:flex;gap:20px}.credentials{display:flex;align-items:center;justify-content:space-around;padding:33px 8%;border-bottom:1px solid var(--line);gap:30px}.credentials p{font-size:10px;line-height:1.6;color:#7e8270}.credentials strong{display:block;font-family:var(--serif);font-size:20px;font-weight:400;color:#474c3b}.asterisk{font-size:21px;color:#9caa85}.section-pad{padding:110px 8%}h2{font-family:var(--serif);font-size:clamp(48px,4.5vw,68px);line-height:1.12;letter-spacing:-1.1px}h2 em{color:#7c8267}.story{display:grid;grid-template-columns:1fr 1fr;gap:12%;padding-top:112px;padding-bottom:102px}.story h2{margin-top:28px}.story-copy{padding-top:42px}.story-copy p{margin-bottom:22px;font-size:14px;color:#6d7162}.story-copy .intro{font-family:var(--serif);font-size:29px;line-height:1.4;color:var(--ink);margin-bottom:25px}.signature{font-family:var(--serif);font-style:italic;font-size:56px;margin:24px 0 20px}.evening-photo{margin:40px 0 0 45px;width:210px;transform:rotate(-4deg)}.evening-photo img{height:230px;width:210px;object-position:50% 25%;filter:saturate(.7)}figcaption{font-size:8px;letter-spacing:.4px;margin-top:12px;color:#777c69;text-align:center}.repertoire{background:var(--dark);color:#f0f1e4}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:65px;margin-bottom:48px}.section-heading h2{margin-top:25px}.section-heading>p{max-width:290px;font-size:13px;color:#737968;line-height:1.85;padding-bottom:5px}.repertoire .section-heading>p{color:#b5bba7}.repertoire h2 em{color:#b7bea1}.tabs{display:flex;gap:34px;border-bottom:1px solid #515746;margin-top:58px}.tab{border:0;background:none;padding:0 0 19px;color:#9da58f;font-size:13px;position:relative}.tab span{font-size:9px;padding-left:15px;color:#929c80}.tab.active{color:#f3f3e7}.tab.active:after{content:'';height:2px;background:#c7d1aa;position:absolute;bottom:-1px;left:0;right:0}.music-row{display:grid;grid-template-columns:165px 1.35fr 1fr 55px;gap:20px;align-items:center;padding:25px 0;border-bottom:1px solid #454b3d;min-height:88px}.composer{font-size:9px;letter-spacing:1px;color:#aeb79c}.music-row h3{font-family:var(--serif);font-size:25px}.work{font-size:11px;color:#aeb6a0}.language{font-size:10px;color:#9ba58b;text-align:right}.repertoire-panel[hidden]{display:none}.repertoire-bottom{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-top:30px}.repertoire-bottom p{font-size:11px;color:#aab39b}.beyond .section-heading>p{max-width:300px}.beyond-grid{display:grid;grid-template-columns:1fr 1fr;gap:38px}.euphonya,.writing{background:#e9e9dd;display:flex;flex-direction:column}.theatre-image{height:285px;position:relative;overflow:hidden}.theatre-image img{width:100%;height:100%;object-position:center 35%;filter:sepia(.2) saturate(.5);transition:transform .7s}.euphonya:hover img{transform:scale(1.025)}.image-label{position:absolute;left:25px;bottom:22px;font-size:9px;letter-spacing:2px;color:#fff}.project-copy{padding:34px 36px 38px}.project-copy h3{font-family:var(--serif);font-size:43px;margin:17px 0 17px}.project-copy p:not(.eyebrow){font-size:13px;color:#737966;line-height:1.85;max-width:370px}.project-copy .text-link{margin-top:29px}.serif-dot{color:#929c78}.writing{background:#e8e6dc}.writing-mark{height:285px;font-family:var(--serif);font-size:134px;display:flex;align-items:center;justify-content:center;color:#9b9f87;background:radial-gradient(ellipse at 50% 80%,#efeee5,#dddccf)}.writing-mark>span{font-family:var(--serif);font-size:56px;color:#737c61;margin:-13px -6px 0}.press{padding-top:10px}.press-links{display:grid;grid-template-columns:1fr 1fr 1fr;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.press-links>a{padding:29px 30px 29px 0;display:flex;flex-direction:column;min-height:246px}.press-links>a+a{padding-left:30px;border-left:1px solid var(--line)}.press-links h3{font-family:var(--serif);font-size:33px;line-height:1.15;margin:25px 0}.press-links a:hover h3{color:var(--olive)}.press-links .eyebrow{font-size:8px;letter-spacing:1.2px}.link-bottom{display:flex;justify-content:space-between;margin-top:auto;font-size:10px;color:#767e65}.kind-words{margin-top:48px;display:grid;grid-template-columns:65px 1fr auto;align-items:center;gap:32px;padding:30px 0}.quote-mark{font-family:var(--serif);font-size:120px;color:#9ca489;line-height:1}.kind-words h3{font-family:var(--serif);font-size:30px;margin:10px 0}.kind-words p:not(.eyebrow){font-size:12px;color:#747d65;max-width:470px}.contact{background:#383c30;color:#eff0e3;display:grid;grid-template-columns:1fr 1fr;gap:11%;padding-top:98px;padding-bottom:100px}.contact h2{margin-top:25px;font-size:67px}.contact h2 em{color:#bbc3a5}.contact-heading>p:not(.eyebrow){color:#b9c0aa;font-size:13px;max-width:330px;margin-top:28px}.email-link{font-size:13px;display:inline-flex;gap:20px;border-bottom:1px solid #727b61;padding-bottom:9px;margin-top:25px}.contact-heading p.location{font-size:10px;margin-top:31px;color:#c1c9b0}.location span{margin-right:10px}form{padding-top:57px}.form-pair{display:grid;grid-template-columns:1fr 1fr;gap:24px}.field{margin-bottom:29px}label{display:block;font-size:10px;color:#d5dbc9;margin-bottom:14px}label span{font-size:8px;color:#a7b09a}input,select,textarea{width:100%;background:transparent;color:#eceee0;border:0;border-bottom:1px solid #788268;border-radius:0;padding:8px 0 13px;font-size:12px;min-height:40px}input::placeholder,textarea::placeholder{color:#b0b8a2;opacity:1}select{appearance:auto;color-scheme:dark}option{background:#383c30;color:#eff0e3}textarea{resize:vertical;min-height:112px}input[type=date]{color-scheme:dark}.submit-button{width:100%}.form-note{font-size:9px;color:#b1baa3;margin-top:13px}.inquiry-result{border:1px solid #6b7658;padding:16px;margin-top:18px}.inquiry-result>p{font-size:12px}.inquiry-result button{margin-top:12px}footer{padding:54px 6%;display:flex;align-items:center;justify-content:space-between;gap:25px}footer .wordmark{font-size:30px}footer p{font-size:9px;letter-spacing:.5px;color:#8a907a;margin-top:6px}.footer-links{display:flex;gap:27px;font-size:11px}.copyright{font-size:9px;color:#7b836d}.skip-link{position:fixed;top:-100px;left:15px;padding:15px;background:white;color:black;z-index:100}.skip-link:focus{top:15px}.press-page{max-width:1100px;margin:0 auto;padding:70px 8% 100px}.press-page h1{font-size:78px;margin-bottom:25px}.press-page .lead{font-family:var(--serif);font-size:28px;line-height:1.5;max-width:750px}.press-page h2{font-size:40px;margin:50px 0 20px}.press-page p{color:#6b735e;font-size:14px;margin-bottom:18px;max-width:760px}.press-page .button{background:var(--dark);color:var(--paper);margin-top:12px}.press-note{padding:25px;border:1px solid var(--line);margin-top:35px}.press-note .eyebrow{margin:0 0 15px}.press-page .press-note p{margin-bottom:0}.press-page .press-links{margin-top:25px;grid-template-columns:1fr 1fr}.press-page .press-links>a{padding-left:20px}.press-page .press-links h3{font-size:28px}.press-page ul{font-size:14px;color:#6b735e;line-height:2}.press-page .back{font-size:12px;display:inline-block;margin-bottom:30px}
@media(min-width:1600px){.hero-content{padding-top:100px}.hero{height:790px}.section-pad{padding-left:max(8%,calc((100% - 1320px)/2));padding-right:max(8%,calc((100% - 1320px)/2))}}
@media(max-width:1050px){.header{height:95px}nav{gap:22px}.hero{margin:0 16px;min-height:640px;height:680px}.hero-content{padding-top:75px}h1{font-size:78px}.hero-photo{width:58%}.hero-actions{gap:22px}.hero-actions .text-link{font-size:10px}.section-pad{padding:80px 6%}.story{gap:8%}.story-copy{padding-top:35px}.music-row{grid-template-columns:128px 1.4fr 1fr 44px;gap:13px}.music-row h3{font-size:22px}.credentials{padding:27px 6%;gap:20px}.credentials strong{font-size:18px}.contact{gap:7%}.contact h2{font-size:60px}.project-copy{padding:28px}.kind-words{grid-template-columns:50px 1fr}.kind-words>.text-link{grid-column:2;justify-self:start}.press{padding-top:0}.hero-caption{bottom:25px}footer{flex-wrap:wrap}.copyright{width:100%}}
@media(max-width:720px){.header{height:84px;padding:0 6%;position:relative;z-index:10}.wordmark{font-size:30px}.menu-toggle{display:flex;align-items:center;gap:12px;border:0;background:none;font-size:11px;color:var(--ink);padding:12px 0 12px 12px}.menu-toggle span{font-size:17px}nav{display:none;position:absolute;left:0;right:0;top:84px;background:var(--paper);padding:18px 6% 28px;border-bottom:1px solid var(--line);gap:24px;align-items:stretch}nav.open{display:flex;flex-direction:column}nav>a{font-size:13px}nav .nav-contact{margin-left:0}.hero{margin:0 12px;min-height:750px;height:calc(100svh - 102px);max-height:920px}.hero-photo{width:100%;height:65%;right:0;top:0}.hero-photo img{object-position:50% 22%;opacity:.95}.hero-shade{background:linear-gradient(0deg,#252922 0%,#252922 25%,rgba(37,41,34,.94) 39%,rgba(37,41,34,.04) 76%)}.hero-content{position:absolute;bottom:88px;padding:0 7%;width:100%}.hero-content .eyebrow{font-size:8px;letter-spacing:1.7px;gap:12px}h1{font-size:clamp(57px,11vw,81px);letter-spacing:-1.5px;margin-top:23px;line-height:1.06}.hero-description{font-size:13px;line-height:1.6;margin-top:19px}.hero-actions{gap:21px;margin-top:25px;flex-wrap:wrap}.button{font-size:11px;padding:14px 17px;gap:25px;min-height:45px}.hero-caption{left:7%;right:7%;font-size:7px;letter-spacing:1.2px;bottom:25px}.scroll-cue{font-size:7px;right:18px;top:28px}.credentials{padding:25px 8%;gap:17px;flex-wrap:wrap;justify-content:center}.credentials p{font-size:8px;text-align:center;width:42%}.credentials strong{font-size:16px}.credentials p:last-child{width:100%;padding-top:10px}.credentials .asterisk{font-size:15px}.credentials .asterisk:nth-of-type(2){display:none}.section-pad{padding:65px 7%}h2{font-size:49px;letter-spacing:-.8px}.story{display:flex;flex-direction:column;gap:32px}.story-title{position:relative}.story h2{margin-top:23px}.evening-photo{position:absolute;right:8px;bottom:-4px;width:105px;margin:0;transform:rotate(4deg)}.evening-photo img{height:125px;width:105px}.evening-photo figcaption{display:none}.story-copy{padding-top:0}.story-copy .intro{font-size:27px;max-width:520px}.story-copy p{font-size:13px}.signature{margin-top:20px;margin-bottom:10px;font-size:49px}.section-heading{display:block;margin-bottom:32px}.section-heading>p{margin-top:24px;max-width:100%;font-size:12px}.tabs{gap:24px;margin-top:32px;justify-content:space-between}.tab{font-size:11px;padding-bottom:15px}.tab span{display:none}.music-row{grid-template-columns:1fr auto;gap:8px;padding:21px 0}.composer{grid-column:1;font-size:8px}.music-row h3{grid-column:1;grid-row:auto;font-size:25px;line-height:1.3}.work{grid-column:1;font-size:10px}.language{grid-column:2;grid-row:2;font-size:9px}.repertoire-bottom{display:block}.repertoire-bottom .text-link{margin-top:20px;font-size:10px}.beyond-grid{grid-template-columns:1fr;gap:27px}.theatre-image{height:250px}.writing-mark{height:210px;font-size:115px}.project-copy{padding:29px}.project-copy h3{font-size:39px}.project-copy p:not(.eyebrow){font-size:12px}.press{padding-top:0}.press-links{grid-template-columns:1fr}.press-links>a{min-height:180px;padding:24px 0}.press-links>a+a{border-left:0;border-top:1px solid var(--line);padding-left:0}.press-links h3{font-size:32px;margin:18px 0 22px}.press-links h3 br{display:none}.kind-words{margin-top:24px;gap:20px;grid-template-columns:30px 1fr;padding:20px 0}.quote-mark{font-size:75px;align-self:start;padding-top:10px}.kind-words h3{font-size:28px}.kind-words p:not(.eyebrow){font-size:11px}.contact{grid-template-columns:1fr;gap:18px}.contact h2{font-size:59px}.contact-heading>p:not(.eyebrow){font-size:12px}.email-link{font-size:12px}form{padding-top:20px}.form-pair{gap:20px}.field{margin-bottom:25px}label{font-size:9px}label span{font-size:7px}input,textarea,select{font-size:16px}.form-note{font-size:9px}footer{padding:36px 7%;align-items:flex-start;gap:28px}.footer-links{flex-direction:column;gap:13px;font-size:10px}.copyright{padding-top:14px;border-top:1px solid var(--line)}.press-page{padding:40px 7% 65px}.press-page h1{font-size:56px}.press-page .lead{font-size:25px}.press-page .press-links{grid-template-columns:1fr}.press-page .press-links>a{padding-left:0}.press-page h2{font-size:35px}.press-page p{font-size:13px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}
.testimonials-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px;margin-top:45px}.testimonial{padding:30px;border:1px solid var(--line)}.testimonial blockquote{font:30px/1.5 var(--serif);margin:0 0 22px}.testimonial figcaption{text-align:left;line-height:1.7}.release{padding:25px 0;border-bottom:1px solid var(--line)}.release .text-link{margin-top:18px;font-size:16px}@media(max-width:720px){.testimonials-grid{grid-template-columns:1fr}.testimonial blockquote{font-size:26px}}
/* Repertoire grouped by category and language. */
.repertoire-group{margin-top:36px}.repertoire-language{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:10px 0 13px;border-bottom:1px solid #697359}.repertoire-language h3{font-family:var(--sans);font-size:11px;font-weight:500;text-transform:uppercase;letter-spacing:2px;color:#d0d8bd}.group-count{font-size:9px;letter-spacing:1px;color:#aab596}.repertoire .music-row{grid-template-columns:200px 1fr;gap:30px;min-height:78px;padding:22px 0}.repertoire .music-row .composer{text-transform:uppercase;line-height:1.7}.repertoire .music-row h4{font-family:var(--serif);font-size:27px;font-weight:400;line-height:1.35;margin:0}.repertoire .tabs{gap:38px}.repertoire .repertoire-panel{outline-offset:9px}@media(max-width:1050px){.repertoire .music-row{grid-template-columns:165px 1fr;gap:24px}.repertoire .music-row h4{font-size:25px}}@media(max-width:720px){.repertoire-group{margin-top:30px}.repertoire .music-row{grid-template-columns:minmax(0,1fr);gap:8px;padding:19px 0}.repertoire .music-row .composer{grid-column:1}.repertoire .music-row h4{grid-column:1;font-size:26px;overflow-wrap:anywhere}.repertoire .tabs{justify-content:flex-start;gap:38px}.repertoire-language h3{font-size:10px}.group-count{font-size:8px}}
/* Original R&B compositions. */
.originals-intro{font-size:12px;color:#aeb99e;max-width:560px;margin:25px 0 8px;line-height:1.8}.repertoire .music-row.original-row{grid-template-columns:200px minmax(0,1fr) auto}.release-status{font-size:9px;letter-spacing:1px;text-transform:uppercase;color:#c7d0b5;border:1px solid #677557;padding:8px 10px}.repertoire .tabs{flex-wrap:wrap}@media(max-width:1050px){.repertoire .music-row.original-row{grid-template-columns:165px minmax(0,1fr) auto}}@media(max-width:720px){.repertoire .tabs{gap:26px}.repertoire .tab{font-size:10px}.repertoire .music-row.original-row{grid-template-columns:minmax(0,1fr) auto;gap:8px 15px}.repertoire .music-row.original-row .composer{grid-column:1;grid-row:1}.repertoire .music-row.original-row h4{grid-column:1;grid-row:2}.repertoire .music-row.original-row .release-status{grid-column:2;grid-row:2;align-self:center;font-size:7px;padding:7px 8px}.originals-intro{font-size:11px}.repertoire-language:has(#originals-rnb){align-items:flex-start}.repertoire-language:has(#originals-rnb) .group-count{white-space:nowrap}}
/* A personal note beside Teo's original songs. */
.originals-layout{display:grid;grid-template-columns:1.4fr 1fr;gap:46px;align-items:start;margin-top:26px}.original-list{min-width:0}.originals-layout .original-list .music-row.original-row{grid-template-columns:76px minmax(0,1fr) auto;gap:22px}.originals-note{background:#30372a;border-left:1px solid #83916d;padding:27px 28px 24px}.originals-note .eyebrow{font-size:8px;color:#c4cfaf;letter-spacing:1.6px;margin-bottom:18px}.originals-note>p:not(.eyebrow){font-size:12px;line-height:1.9;color:#c4cdb8;margin-top:16px}.originals-note .signature{font-size:36px;color:#c9d1ba;margin:20px 0 0}@media(max-width:980px){.originals-layout{grid-template-columns:1fr;gap:30px}.originals-note{max-width:690px}}@media(max-width:720px){.originals-layout{margin-top:18px;gap:27px}.originals-layout .original-list .music-row.original-row{grid-template-columns:minmax(0,1fr) auto;gap:8px 15px}.originals-note{padding:23px}.originals-note>p:not(.eyebrow){font-size:12px;line-height:1.85}}
