:root{--paper:#eeece3;--ink:#333a2d;--muted:#72776a;--line:#c9ccbf;--accent:#976a49}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:25px}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',sans-serif;font-size:14px}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}a,button,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--accent);outline-offset:6px}header{display:flex;align-items:center;justify-content:space-between;padding:34px 5.5%;border-bottom:1px solid var(--line)}.brand{font-family:'Cormorant Garamond',Georgia,serif;font-size:31px;letter-spacing:-1px}.brand span{display:block;font-family:'DM Sans',sans-serif;font-size:8px;letter-spacing:2.4px;margin-top:7px}nav{display:flex;gap:40px;align-items:center;font-size:12px}.nav-enquire{border-bottom:1px solid var(--ink);padding-bottom:8px}.nav-enquire span{margin-left:28px}.hero{padding:65px 5.5% 0;display:grid;grid-template-columns:1.12fr 1fr;gap:3vw;align-items:center}.eyebrow{font-size:9px;letter-spacing:2px;line-height:1.8;margin:0 0 35px;font-weight:500}h1,h2,h3{font-family:'Cormorant Garamond',Georgia,serif;font-weight:400;margin:0}h1{font-size:clamp(62px,6.7vw,108px);letter-spacing:-4px;line-height:.98}em{font-weight:400}h1 em{white-space:nowrap}p{line-height:1.85}.intro{font-size:14px;color:var(--muted);margin:32px 0}.text-link{display:inline-flex;gap:38px;align-items:center;font-size:12px;border-bottom:1px solid var(--muted);padding:12px 0}.art{height:560px;overflow:hidden;position:relative;background:radial-gradient(ellipse at 65% 25%,#aeb1a1,transparent 55%),linear-gradient(#9b9e8a 0%,#c3bca0 48%,#888b72 49%,#424d3b 100%);border-radius:48% 48% 0 0}.art:after{content:'';position:absolute;inset:0;opacity:.16;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Cpath fill='%23fff' filter='url(%23n)' opacity='.7' d='M0 0h180v180H0z'/%3E%3C/svg%3E")}.sun{position:absolute;width:175px;height:175px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#dcb481,#b58151 70%,#8d6547);top:24%;left:50%;transform:translateX(-50%);box-shadow:0 0 60px #d6bd8540}.horizon{position:absolute;inset:49% 0 auto;height:1px;background:#f0d8ae80}.reflection{position:absolute;top:51%;bottom:10%;left:35%;width:30%;background:linear-gradient(#d2ae78aa,#a1926400);filter:blur(12px);clip-path:polygon(10% 0,90% 0,100% 100%,0 100%)}.ripples{position:absolute;inset:50% -40% -20%;background:repeating-radial-gradient(ellipse at 50% 0,transparent 0 15px,#e0d7af45 16px,transparent 18px 28px);transform:perspective(300px) rotateX(40deg);mask-image:linear-gradient(transparent,#000 30%,transparent)}.art-caption,.art-number{position:absolute;bottom:25px;font-size:8px;letter-spacing:2px;color:#eee9d9;z-index:1}.art-caption{left:25px}.art-number{right:25px}.hero-bottom{grid-column:1/-1;display:flex;justify-content:space-between;font-size:8px;letter-spacing:1.5px;border-bottom:1px solid var(--line);padding:30px 0}.section{padding:110px 5.5%}.approach{display:grid;grid-template-columns:1fr 2fr;gap:6vw}.side-note{font-family:'Cormorant Garamond',serif;font-size:26px;line-height:1.3;color:var(--muted)}h2{font-size:clamp(43px,4.5vw,70px);line-height:1.05;letter-spacing:-1.6px}.body-large{font-size:20px;max-width:660px;margin:30px 0}.bio{display:grid;grid-template-columns:1fr 1fr;gap:36px;color:var(--muted);max-width:720px}.signature{font-family:'Cormorant Garamond',serif;font-style:italic;font-size:36px;display:block;margin-top:20px}.experiences{background:#e3e4da}.section-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:55px}.section-heading>p{color:var(--muted);font-size:12px;padding-right:5vw}.experience-list{border-top:1px solid #bfc3b5}details{border-bottom:1px solid #bfc3b5}summary{display:flex;align-items:center;gap:32px;padding:28px 0;cursor:pointer;list-style:none}summary::-webkit-details-marker{display:none}.index{font-size:10px;color:var(--muted)}h3{font-size:35px}.tag{font-size:8px;letter-spacing:1.5px;margin-left:auto}.toggle{font-size:24px;font-weight:400;width:20px;margin-left:35px}details[open] .toggle{transform:rotate(45deg)}.detail{padding:0 0 30px 47px;max-width:660px;color:#626958}.detail p{margin-top:0}.detail a{font-size:11px;border-bottom:1px solid #8d9583;padding-bottom:7px}.modalities{text-align:center;background:var(--ink);color:var(--paper);padding:85px 20px}.modalities .eyebrow{color:#b2baa6;margin-bottom:28px}.modalities>p:not(.eyebrow){font-family:'Cormorant Garamond',serif;font-size:clamp(30px,4vw,56px);line-height:1.4;margin:0 0 26px}.modalities p span{font-size:24px;color:#a8af99;padding:0 12px}.small{font-size:11px;color:#b5bdab}.enquire{display:grid;grid-template-columns:1.1fr 1fr;gap:10vw}.enquire>div>p:not(.eyebrow){color:var(--muted)}.contact-note{margin-top:42px;font-size:11px}form label{display:block;font-size:10px;letter-spacing:.3px;margin-bottom:23px}input,select,textarea{display:block;width:100%;border:0;border-bottom:1px solid var(--line);border-radius:0;background:transparent;color:var(--ink);padding:13px 0;outline-offset:5px;font-size:13px}textarea{resize:vertical}input::placeholder,textarea::placeholder{color:#8a8e81;font-size:12px}button{border:1px solid var(--ink);background:var(--ink);color:var(--paper);padding:16px 20px;cursor:pointer;width:100%;display:flex;justify-content:space-between;font-size:12px}button:hover{background:#4c5543}button:disabled{opacity:.6}.form-note{font-size:10px;color:var(--muted)}#status{font-size:12px}.trap{position:absolute;left:-9999px}footer{margin:0 5.5%;padding:32px 0;border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:20px}footer>span,footer>a:not(.brand){font-size:8px;letter-spacing:1.3px}.skip{position:absolute;left:10px;top:-50px;background:var(--paper);padding:10px;z-index:9}.skip:focus{top:10px}#handoff{border-top:1px solid var(--line);padding-top:20px}#prepared{font-size:12px}@media(min-width:1600px){body{max-width:1600px;margin:auto}}@media(max-width:850px){header{padding:25px 6%}nav{gap:20px}nav>a:first-child{display:none}.hero{padding:45px 6% 0;gap:35px}.hero-copy .eyebrow{font-size:8px}h1{font-size:64px;letter-spacing:-2.5px}.art{height:440px}.sun{width:130px;height:130px}.section{padding:75px 6%}.approach{grid-template-columns:1fr 2.3fr;gap:30px}.bio{grid-template-columns:1fr;gap:0}.enquire{gap:6vw}.tag{display:none}h3{font-size:30px}.toggle{margin-left:auto}footer>span:last-child{display:none}}@media(max-width:600px){.brand{font-size:27px}.brand span{font-size:6px}nav>a:nth-child(2){display:none}.hero{grid-template-columns:1fr;padding-top:35px}.hero-copy .eyebrow{margin-bottom:25px}h1{font-size:65px}.intro{margin:24px 0 12px}.art{height:410px;margin-top:10px}.sun{width:145px;height:145px}.hero-bottom{padding:0 0 25px;font-size:6px;gap:15px}.approach{grid-template-columns:1fr;gap:10px}.side-note{display:none}.eyebrow{margin-bottom:25px}h2{font-size:46px}.body-large{font-size:18px}.section-heading{display:block;margin-bottom:32px}.section-heading>p{margin-top:25px}summary{gap:18px;padding:25px 0}h3{font-size:28px}.detail{padding-left:30px}.enquire{grid-template-columns:1fr;gap:40px}.contact-note{margin-top:25px}footer{flex-wrap:wrap;padding:25px 0}footer .brand{width:100%;margin-bottom:5px}.modalities{padding:65px 15px}.small{font-size:10px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Consistent vector arrows and theme-based interaction states. */
.arrow-icon{width:17px;height:17px;flex:none;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;vertical-align:middle}
.nav-enquire .arrow-icon{margin-left:28px}.detail a .arrow-icon,footer a .arrow-icon{width:13px;height:13px;margin-left:6px}
button,.text-link,.nav-enquire,.detail a,nav a,footer a,summary{transition:color .2s ease,background-color .2s ease,border-color .2s ease}
@media(hover:hover){
 button:not(:disabled):hover{background:var(--accent);border-color:var(--accent);color:var(--paper)}
 .text-link:hover,.nav-enquire:hover,.detail a:hover{color:var(--accent);border-color:var(--accent)}
 nav a:hover,footer a:hover{color:var(--accent)}
 summary:hover{color:var(--accent)}
}
button:not(:disabled):focus-visible{background:var(--accent);border-color:var(--accent)}
.text-link:focus-visible,.nav-enquire:focus-visible,.detail a:focus-visible{color:var(--accent);border-color:var(--accent)}
@media(prefers-reduced-motion:reduce){button,.text-link,.nav-enquire,.detail a,nav a,footer a,summary{transition:none}}

.films{border-top:1px solid var(--line)}.film-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}.film-cover{display:block;position:relative;aspect-ratio:3/4;overflow:hidden;border-radius:5px;background:#d0d1c5}.film-cover img{width:100%;height:100%;object-fit:cover;transition:transform .6s ease}.film-cover:after{content:'';position:absolute;inset:0;background:linear-gradient(transparent 55%,#20271970)}.film-play{position:absolute;z-index:1;top:50%;left:50%;transform:translate(-50%,-50%);width:58px;height:58px;border:1px solid #eeece3aa;border-radius:50%;display:grid;place-items:center;background:#333a2d60;color:var(--paper);transition:background .2s}.film-play svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.3;margin-left:2px}.film-watch{position:absolute;bottom:25px;left:25px;z-index:1;color:var(--paper);font-size:9px;letter-spacing:2px}.film .eyebrow{margin:24px 0 10px;color:var(--muted);font-size:8px}.film h3{font-size:29px}.film>p:not(.eyebrow){font-size:12px;color:var(--muted)}.film-credit{font-size:10px;color:var(--muted);margin:35px 0 0}.film-credit a{border-bottom:1px solid var(--line)}
#film-dialog{border:0;padding:20px;background:var(--paper);color:var(--ink);width:min(440px,calc(100% - 24px));max-height:94dvh;overflow:auto}#film-dialog::backdrop{background:#192016c9}.film-dialog-head{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:15px}.film-dialog-head h3{font-size:25px}#film-close{width:36px;height:36px;padding:0;display:grid;place-items:center;font-size:25px;flex:none}#film-player iframe{display:block;width:100%;height:min(620px,65dvh);border:0;background:white}.film-help{font-size:10px;color:var(--muted)}body.film-open{overflow:hidden}
@media(hover:hover){.film-cover:hover img{transform:scale(1.035)}.film-cover:hover .film-play{background:var(--accent)}}.film-cover:focus-visible .film-play{background:var(--accent)}
@media(max-width:600px){.film-grid{grid-template-columns:1fr;gap:35px}.film-cover{aspect-ratio:4/5}.film h3{font-size:31px}.film .eyebrow{margin-top:20px}}
@media(prefers-reduced-motion:reduce){.film-cover img,.film-play{transition:none}}

/* Native media, with no third-party player dependency. */
.mood-banner{margin:70px 5.5% 0;display:grid;grid-template-columns:.85fr 1.15fr;background:#e3e4da;min-height:440px}.mood-copy{padding:55px 40px;display:flex;flex-direction:column;justify-content:center}.mood-copy h2{font-size:clamp(42px,4.2vw,65px)}.mood-copy>p:not(.eyebrow){color:var(--muted);font-size:12px;margin-top:25px}.mood-note{font-size:8px;letter-spacing:2px;margin-top:25px;color:var(--muted)}.mood-film{position:relative;min-height:440px;aspect-ratio:864/880;overflow:hidden}.mood-film video{display:block;width:100%;height:100%;position:absolute;inset:0;object-fit:cover}.mood-film button{position:absolute;bottom:20px;right:20px;width:auto;padding:11px 18px;background:#333a2de0;border:1px solid #eeece370;color:var(--paper);font-size:10px;z-index:1}.portrait{margin:0}.portrait img{display:block;width:100%;height:auto;aspect-ratio:3/4;object-fit:cover;object-position:center 48%;border-radius:4px}.portrait figcaption{font-size:7px;letter-spacing:1.3px;line-height:1.8;color:var(--muted);margin-top:16px}.approach{grid-template-columns:1fr 1.5fr;align-items:center}.instrument-story{padding-top:0;display:grid;grid-template-columns:1.1fr 1fr;gap:8vw;align-items:center}.instrument-story>img{width:100%;height:auto;border-radius:4px}.instrument-story h2{font-size:clamp(38px,3.8vw,58px)}.instrument-story p:not(.eyebrow){color:var(--muted);max-width:440px}.gallery-video{display:block;width:100%;height:100%;object-fit:contain;background:#22291e}.film-cover{aspect-ratio:9/16;background:#22291e}.film-cover:after{display:none}.film-credit .arrow-icon{width:12px;height:12px}.film h3{font-size:28px}
@media(max-width:850px){.mood-copy{padding:35px 25px}.mood-film,.mood-banner{min-height:370px}.approach{grid-template-columns:1fr 1.4fr}.instrument-story{gap:35px}}
@media(max-width:600px){.mood-banner{margin:45px 6% 0;grid-template-columns:1fr}.mood-copy{padding:35px 28px}.mood-film{min-height:340px}.mood-copy .eyebrow{margin-bottom:20px}.mood-note{margin-top:12px}.approach{grid-template-columns:1fr;gap:35px}.portrait{max-width:340px}.portrait img{aspect-ratio:4/5}.instrument-story{grid-template-columns:1fr;gap:35px}.instrument-story h2{font-size:42px}.film-cover{aspect-ratio:9/16}}

.curated-films{grid-template-columns:repeat(3,minmax(0,1fr));max-width:none;margin:0 auto 70px;gap:35px}.curated-films .film-cover{aspect-ratio:464/832}@media(max-width:600px){.curated-films{grid-template-columns:1fr;gap:35px;margin-bottom:50px}}

.mood-film:after{content:"";position:absolute;inset:0;background:rgba(0,0,0,.12);pointer-events:none}.mood-film button{z-index:2}

.curated-films .film h3{margin-top:24px}
