@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Marcellus&display=swap');
:root{--ink:#392e25;--paper:#efe4cc;--cream:#fff5df;--gold:#d6ad60;--rust:#92513a;--teal:#274b46;--line:#a17e484d;--max:1120px;color-scheme:light}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;color:var(--ink);background:var(--paper);font-family:'DM Sans',Arial,sans-serif;font-size:16px;line-height:1.85}body:before{content:'';position:fixed;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(110deg,#efe4cce8,#efe4ccf0),url('assets/painted-flow-symmetric.webp') center/850px;opacity:1}a{color:inherit;text-underline-offset:5px}button,input,textarea{font:inherit}button,a,input,summary,textarea{-webkit-tap-highlight-color:transparent}button,a,summary{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:default}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #aa603c;outline-offset:5px}img,video,iframe{display:block;max-width:100%}figure{margin:0}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:'Marcellus',Georgia,serif;font-weight:400;line-height:1.22}h2{font-size:clamp(30px,3.6vw,47px)}h3{font-size:27px}strong{font-weight:600;color:#92513a}.skip-link{position:fixed;top:-80px;left:16px;z-index:20;padding:10px;background:var(--cream)}.skip-link:focus{top:12px}.section{max-width:var(--max);margin:auto;padding:88px 32px}.section-heading{text-align:center;margin-bottom:42px}.eyebrow{text-transform:uppercase;font-size:10px;font-weight:600;letter-spacing:.26em;line-height:1.7;margin-bottom:13px}.ornament{display:flex;align-items:center;gap:20px;justify-content:center;color:#ae7d37;max-width:460px;margin:21px auto 0}.ornament:before,.ornament:after{content:'';height:1px;background:linear-gradient(90deg,transparent,#ac813b);flex:1}.ornament:after{transform:rotate(180deg)}.ornament span{font-size:23px;line-height:1}.button{display:inline-flex;align-items:center;justify-content:center;gap:25px;min-height:50px;padding:12px 25px;border:1px solid #c59951;background:linear-gradient(115deg,#e8c57e,#c9974f);border-radius:3px;color:#382b1b;text-decoration:none;font-size:13px;font-weight:700;line-height:1.6;transition:transform .2s,box-shadow .2s}.button:hover{transform:translateY(-2px);box-shadow:0 6px 24px #2e1b2233}.text-link{font-size:13px;display:inline-block;margin-top:14px;font-weight:600}.hero{position:relative;isolation:isolate;background:#211b19;color:var(--cream);min-height:730px;height:min(900px,100svh);max-height:1100px}.hero-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:63% 42%;z-index:-3}.hero-shade{position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,#211d1ae8 0%,#211c19a6 29%,#241b1938 58%,transparent 82%),linear-gradient(0deg,#241e1dfc,transparent 26%);mix-blend-mode:multiply}.hero:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#241c1961,transparent 65%),linear-gradient(0deg,#251f1b,transparent 20%)}.hero-brand{position:absolute;top:9%;bottom:110px;left:max(6%,calc((100% - 1280px)/2));width:39%;max-width:500px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.hero h1{width:91%;max-width:395px;filter:drop-shadow(0 4px 12px #1c120c)}.hero h1 img{width:100%;height:auto}.hero-tagline{font-family:Papyrus,'Marcellus',Georgia,serif;font-size:clamp(19px,2.4vw,32px);line-height:1.6;margin:21px -20px 28px;letter-spacing:.01em}.gold{color:#efd18b;background:linear-gradient(120deg,#e0b05d,#ffe8ac 32%,#bf914a 52%,#f1d08a 75%,#d7b169);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;filter:drop-shadow(0 2px 3px #170d07)}.hero-tagline span{font-size:.92em}.hero-bottom{position:absolute;bottom:0;left:0;width:100%;display:flex;align-items:center;justify-content:space-between;padding:23px 5%;border-top:1px solid #c5a57244;font-size:11px;letter-spacing:.04em}.hero-download-links,.socials{display:flex;gap:27px;flex-wrap:wrap}.hero-bottom a,.socials a{text-decoration:none}.hero-bottom a:hover,.socials a:hover{color:var(--gold)}.socials span{margin-left:5px;color:#c99c53}.artist-section{padding-bottom:70px}.bio-copy{max-width:800px;margin:0 auto;text-align:center}.bio-copy p+p{margin-top:20px}.bio-copy .lead{font-family:'Marcellus',Georgia,serif;font-size:31px;color:#92513a;margin-bottom:20px}.featured-clip{max-width:820px;margin:40px auto 0}.featured-clip video{width:100%;aspect-ratio:16/8.4;object-fit:cover;background:#25251b;border-radius:140px 140px 3px 3px;border:1px solid var(--line);box-shadow:0 14px 36px #402b1624}figcaption{text-align:center;font-size:11px;letter-spacing:.08em;padding-top:13px;color:#695a45}.pattern-divider{height:44px;background:linear-gradient(#8b5e2735,#8b5e2735),url('assets/pattern.jpg') center 47%/650px;border-block:4px double #d2b67e}.sound-section{padding-bottom:80px}.music-direction{display:grid;grid-template-columns:1.05fr 1fr;gap:65px;align-items:center;margin-top:55px}.direction-image{position:relative;overflow:hidden;border-radius:180px 180px 3px 3px;background:#4c4030}.direction-image img{width:100%;height:455px;object-fit:cover;object-position:62% center;transition:transform .5s}.direction-image:hover img{transform:scale(1.035)}.direction-image:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#201c19bb,transparent 35%);pointer-events:none}.image-caption{position:absolute;bottom:20px;left:28px;z-index:1;color:#f5e2b9;font-size:10px;text-transform:uppercase;letter-spacing:.2em}.direction-copy h3{font-size:clamp(30px,3.4vw,43px);margin-bottom:22px;color:var(--teal)}.direction-copy .eyebrow{color:#825238}.direction-copy p{font-size:14px}.direction-copy .sound-note{font-size:11px;color:#8a6243;margin-top:20px}.dance-direction{margin-top:75px;direction:rtl}.dance-direction>*{direction:ltr}.dance-direction .direction-image{border-radius:3px 3px 180px 180px}.dance-direction .direction-image img{object-position:center 40%}.dance-direction h3{color:#8f4f3e}.sets-block{border-top:1px solid var(--line);margin-top:75px;padding-top:58px;text-align:center}.sets-block .section-heading{margin-bottom:22px}.sets-block>p{font-size:14px;margin-bottom:20px}.sets-block .privacy-note{font-size:10px;margin-top:13px;color:#756754}.sets-block .text-link{display:block}.outline{background:transparent;border-color:#967d52}#soundcloud-player iframe{border:0;width:100%;height:400px;margin:25px 0;border-radius:4px}.references-wrap{position:relative;isolation:isolate;background:#29443f;color:#f4e6c8}.references-wrap:before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(#243f3eef,#243f3eef),url('assets/pattern.jpg') center/750px}.references-wrap h2{color:#e6c27c}.references-wrap .eyebrow{color:#d5c5a4}.reference-columns{display:grid;grid-template-columns:1fr 1fr;gap:65px}.reference-columns h3{font-size:23px;color:#e2c68f;margin-bottom:24px}.reference-table{margin:0;font-size:12px}.reference-table div{display:flex;justify-content:space-between;gap:15px;padding:9px 0;border-bottom:1px solid #c4c8ad26}.reference-table dd{margin:0;color:#bdc5b2;text-align:right}.video-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px}.video-grid video{width:100%;height:450px;object-fit:cover;background:#243b34;border-radius:3px;border:1px solid var(--line)}.video-grid figure:first-child video{object-position:50% 35%}.center{text-align:center;margin-top:30px}.booking-wrap{position:relative;isolation:isolate;background:#392f25;color:#f4e5c8}.booking-wrap:before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(100deg,#392f25ed,#392f25e8),url('assets/painted-flow-symmetric.webp') center/cover}.booking .section-heading h2{color:#e9c681}.booking .eyebrow{color:#d2b77c}.booking-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:70px;align-items:start}.booking-form h3{font-size:27px;color:#e6c991}.booking-form>p{font-size:13px;margin:13px 0 23px;color:#d9cbb4}label{display:block;font-size:12px}textarea{margin-top:9px;padding:16px;width:100%;resize:vertical;border:1px solid #ceb17b66;border-radius:4px;background:#201e1880;color:#fff2d6;line-height:1.7}textarea::placeholder{color:#b8a98f;font-size:12px}.booking-customizer{margin-top:22px;border-top:1px solid #c9a76855;border-bottom:1px solid #c9a76855}summary{padding:18px 0;cursor:pointer;font-family:'Marcellus',serif;font-size:20px;color:#e9cc92}summary span{font-family:'DM Sans',sans-serif;font-size:10px;display:block;margin-left:20px;color:#d4c3a5}.booking-config{padding:0 0 24px}.customizer-hint{font-size:11px;color:#cbbda6;margin-bottom:25px}fieldset{border:0;padding:0;margin:24px 0}legend{padding:0;font-family:'Marcellus',serif;font-size:19px;color:#edd29d;margin-bottom:14px}.choice-row{display:flex;gap:10px;flex-wrap:wrap}.choice-row button,.attribute-choice{background:transparent;color:#eadcc2;border:1px solid #bfa06c55;border-radius:3px;font-size:11px;padding:10px 12px}.choice-row button[aria-pressed=true],.attribute-choice[aria-pressed=true]{background:#d4ae65;color:#2e2a20;border-color:#e4c78b}.attribute-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.attribute-item{display:flex;min-width:0}.attribute-choice{flex:1;padding:10px 4px;min-width:0}.attribute-play{border:1px solid #bfa06c55;border-right:0;border-radius:3px 0 0 3px;background:transparent;color:#e5c181;padding:7px;min-width:28px}.attribute-play:disabled{opacity:.32}.attribute-choice{border-radius:0 3px 3px 0}.attribute-play.is-playing{color:#fff;background:#697452}.range-values{display:flex;justify-content:space-between}.range-values label{font-size:11px;color:#e0cda9}.range-values strong,.length-label strong{color:#e8c681}.range-inputs{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:12px}input[type=range]{width:100%;accent-color:#deb96e;height:28px;cursor:pointer}.length-label{font-size:12px;margin-bottom:5px}.reset{font-size:11px;color:#d1be9b;border:0;border-bottom:1px solid #b1976955;background:transparent;padding:6px 0}.booking-form .booking-summary{font-size:11px;color:#e2c68f;min-height:0;margin:20px 0}.booking-form .button{width:100%;font-size:12px;padding-inline:12px}.email-row{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-top:23px;font-size:12px;flex-wrap:wrap}.email-row button{border:1px solid #c3a26a66;background:transparent;color:#e4c88e;border-radius:3px;padding:5px 12px;font-size:10px}.booking-form .status{font-size:11px;margin:5px 0;color:#d7bc8b}.booking-form .phone{font-size:11px;color:#cbb99a;margin:8px 0}.booking-portrait{width:100%;height:330px;object-fit:cover;object-position:center 30%;border-radius:160px 160px 3px 3px}.booking-aside h3{font-size:23px;color:#e7c88b}.booking-aside p{font-size:12px;color:#d4c3a5;margin-top:10px}.booking-aside .eyebrow{font-size:9px;margin-bottom:10px}.presskit,.technical{margin-top:30px;padding-bottom:24px;border-bottom:1px solid #b69a6555}.side-project{display:grid;grid-template-columns:.75fr 1fr;align-items:center;gap:55px}.side-project>img{width:100%;height:290px;object-fit:cover;border-radius:3px 90px 3px 90px}.side-project h2{font-size:34px;color:var(--teal)}.side-project p:not(.eyebrow){font-size:13px;margin:18px 0}.side-project .socials{font-size:12px}.site-footer{position:relative;background:#272c24;color:#e1cba1;text-align:center;padding:45px 24px 32px;border-top:5px double #bb9458}.site-footer:before{content:'';position:absolute;inset:0;background:url('assets/pattern.jpg') center 70%/650px;opacity:.035;pointer-events:none}.site-footer .socials{position:relative;justify-content:center;font-size:12px}.site-footer img{width:155px;height:auto;margin:30px auto 15px}.site-footer p{font-family:'Marcellus',serif;font-size:14px;letter-spacing:.06em}.back-top{font-size:10px;display:inline-block;margin-top:22px;color:#bba67d;text-decoration:none}
@media(min-width:1600px){.hero-brand{left:calc((100% - 1350px)/2)}}
@media(max-width:900px){.hero{height:780px;min-height:650px}.hero-brand{left:4%;width:43%}.hero h1{width:95%}.hero-tagline{font-size:23px}.section{padding:65px 28px}.music-direction{gap:30px}.direction-image img{height:400px}.booking-grid{gap:35px}.attribute-grid{grid-template-columns:repeat(2,1fr)}.reference-columns{gap:32px}.video-grid video{height:380px}.hero-bottom{font-size:10px}.hero-bottom .socials{gap:17px}.hero-download-links{gap:18px}.side-project{gap:30px}}
@media(max-width:600px){body{font-size:14px;line-height:1.85}.hero{height:820px;min-height:0;max-height:none}.hero-photo{height:54%;object-position:64% 35%;mask-image:linear-gradient(#000 80%,transparent)}.hero-shade{background:linear-gradient(0deg,#27221d 36%,transparent 70%);mix-blend-mode:normal}.hero:after{background:linear-gradient(0deg,#27221d 42%,transparent 80%)}.hero-brand{left:9%;width:82%;max-width:none;top:36%;bottom:95px;justify-content:center}.hero h1{width:190px;max-width:52vw}.hero-tagline{font-size:21px;line-height:1.5;margin:15px -8px 19px}.hero-booking{min-height:43px;padding:9px 22px;font-size:12px}.hero-bottom{justify-content:center;flex-direction:column;gap:10px;padding:15px 16px;font-size:9px;letter-spacing:.03em}.hero-bottom .socials{gap:26px}.hero-download-links{gap:25px}.section{padding:55px 22px}.section-heading{margin-bottom:30px}h2{font-size:30px}.eyebrow{font-size:9px;letter-spacing:.19em}.ornament{max-width:260px;margin-top:18px}.bio-copy{text-align:left}.bio-copy .lead{text-align:center;font-size:27px}.featured-clip{margin-top:28px}.featured-clip video{aspect-ratio:4/3;border-radius:75px 75px 3px 3px}.pattern-divider{height:32px;background-size:430px}.music-direction{display:flex;flex-direction:column;gap:28px;margin-top:35px}.direction-image{width:100%;border-radius:130px 130px 3px 3px}.direction-image img{height:360px}.direction-copy h3{font-size:33px}.direction-copy p{font-size:13px}.direction-copy .eyebrow{font-size:9px}.dance-direction{direction:ltr;margin-top:50px}.dance-direction .direction-image{border-radius:130px 130px 3px 3px}.dance-direction .direction-image img{height:390px}.sets-block{margin-top:45px;padding-top:40px}.sets-block h2{font-size:29px}.reference-columns{grid-template-columns:1fr;gap:35px}.reference-table{font-size:11px}.reference-columns h3{font-size:23px;margin-bottom:15px}.video-grid{grid-template-columns:1fr;gap:30px}.video-grid video{height:400px}.booking-grid{grid-template-columns:1fr;gap:40px}.booking .section-heading h2{font-size:32px}.booking-aside{display:grid;grid-template-columns:1fr;gap:0}.booking-portrait{height:330px;width:min(100%,300px);margin:auto}.attribute-grid{grid-template-columns:repeat(3,1fr)}.attribute-choice{font-size:10px;padding-inline:3px}.attribute-play{min-width:24px;padding:5px}.side-project{grid-template-columns:1fr;gap:26px}.side-project>img{height:260px}.site-footer .socials{font-size:11px;gap:25px}.side-project h2{font-size:31px}.email-row{font-size:11px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}
[hidden]{display:none!important}.attribute-choice,.attribute-play,.choice-row button{min-height:44px}

/* Original painted background; the supplied Struktur reference is not used as a backdrop. */
body:before{background:linear-gradient(115deg,#f1e5ccd9,#f5ead6dc),url('assets/painted-flow-symmetric.webp') center/cover no-repeat}
.booking-wrap:before{background:linear-gradient(110deg,#392f25e8,#392f25ed),url('assets/painted-flow-symmetric.webp') center/cover no-repeat}
/* Delicate gold frames with inward-curved corners, scaled to each photograph. */
.frame-definitions{position:absolute;pointer-events:none}
.photo-frame{position:relative;isolation:isolate;padding:7px;color:#c5a15f;min-width:0;background:transparent;overflow:visible;border-radius:0;box-shadow:none}
.photo-frame>.frame-outline{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:4;overflow:visible;filter:drop-shadow(0 1px 1px #49351c33)}
.frame-outline path{stroke-width:1}
.photo-frame>img,.photo-frame>video{clip-path:url('#photo-corners');border-radius:0;border:0;box-shadow:none}
.hero-photo-frame{position:absolute;inset:12px 12px 85px;z-index:-3;padding:6px}
.hero-photo-frame>.hero-photo{position:relative;inset:auto;width:100%;height:100%;object-fit:cover;z-index:0}
.hero-photo-frame>.frame-outline{color:#ddbd7c;z-index:1}
.direction-image.photo-frame{border-radius:0;overflow:visible;background:transparent}
.direction-image.photo-frame:after{inset:7px;clip-path:url('#photo-corners')}
.direction-image.photo-frame:hover img{transform:none}
.direction-image .image-caption{left:30px;bottom:23px}
.dance-direction .direction-image{border-radius:0}
.video-frame{background:transparent}
.featured-clip .video-frame video{width:100%;aspect-ratio:16/8.4;border-radius:0;box-shadow:none;border:0}
.video-grid .video-frame video{border:0;border-radius:0}
.booking-portrait-frame{width:100%;margin:0 auto}
.booking-portrait-frame>.booking-portrait{border-radius:0;height:350px;width:100%;object-fit:cover;object-position:center 30%}
.turmalin-wrap{position:relative;isolation:isolate;background:#060a16;color:#d6d1e4;border-block:1px solid #c9a56680}
.turmalin-wrap:before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#05081775,#080c1bad 65%,#050817d4),url('assets/turmalin-night.jpg') center 58%/cover no-repeat}
.turmalin-wrap:after{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(ellipse at 18% 75%,#6239aa24,transparent 55%)}
.turmalin-wrap .side-project{grid-template-columns:.65fr 1fr;gap:70px;padding-top:75px;padding-bottom:75px}
.turmalin-wrap .side-project h2{color:#e9c887;font-family:'Marcellus',Georgia,serif;font-size:42px;letter-spacing:.06em;text-shadow:0 2px 20px #9051ce55}
.turmalin-wrap .eyebrow{color:#c8ac7c}
.turmalin-wrap .side-project p:not(.eyebrow){color:#d5cde3;font-size:14px;max-width:510px;line-height:1.9}
.turmalin-wrap .socials{color:#e1c894;gap:30px}
.turmalin-wrap .socials a:hover{color:#b9a4f4}
.turmalin-portrait-frame{max-width:340px;width:100%;margin:auto;color:#c9ab6e}
.turmalin-portrait-frame>img{width:100%;height:430px;object-fit:cover;object-position:center 34%}
@media(max-width:900px){.turmalin-wrap .side-project{gap:35px;grid-template-columns:.75fr 1fr}.turmalin-portrait-frame>img{height:380px}}
@media(max-width:600px){
 .hero-photo-frame{inset:9px 9px auto;height:43%;padding:5px}
 .hero-photo-frame>.hero-photo{height:100%;mask-image:none;object-position:64% 35%}
 .hero-brand{top:39%}
 .hero-shade{background:linear-gradient(0deg,#27221d 44%,transparent 60%)}
 .hero:after{background:linear-gradient(0deg,#27221d 44%,transparent 65%)}
 .hero-photo-frame>.frame-outline{z-index:4}
 .featured-clip .video-frame video{aspect-ratio:4/3}
 .direction-image.photo-frame img{height:350px}
 .dance-direction .direction-image.photo-frame img{height:390px}
 .booking-portrait-frame{max-width:300px}
 .booking-portrait-frame>.booking-portrait{height:335px}
 .turmalin-wrap .side-project{grid-template-columns:1fr;gap:30px;padding:50px 25px}
 .turmalin-wrap .side-project h2{font-size:34px}
 .turmalin-portrait-frame{max-width:300px}
 .turmalin-portrait-frame>img{height:390px}
}

/* Links remain identifiable without external-link arrows, including on touchscreens. */
.socials a,.hero-download-links a{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:7px 14px;border:1px solid #b58b5059;border-radius:4px;background:#f2d6990a;text-decoration:none;transition:background-color .18s,border-color .18s,color .18s,box-shadow .18s}
.socials a:hover,.socials a:focus-visible,.hero-download-links a:hover,.hero-download-links a:focus-visible{background:#c9a15d26;border-color:#d6b578;color:#f7dda7;box-shadow:0 2px 12px #17120b16}
.hero-bottom .socials,.site-footer .socials,.turmalin-wrap .socials,.hero-download-links{gap:10px}
.text-link{padding:9px 15px;border:1px solid #a67a3f80;border-radius:4px;background:#f7ead647;text-decoration:underline;text-decoration-color:#a67a3f66;text-decoration-thickness:1px;text-underline-offset:4px;min-height:42px;transition:background-color .18s,border-color .18s,color .18s,box-shadow .18s}
.text-link:hover,.text-link:focus-visible{background:#e2c38870;border-color:#996d35;color:#69421e;box-shadow:0 3px 12px #5c3d1514;text-decoration-color:currentColor}
.sets-block .text-link{display:table;margin:18px auto 0}
.booking .text-link{background:#e4c17e0d;border-color:#ceae6a73;text-decoration-color:#ddbd795e;color:#e5c98f}
.booking .text-link:hover,.booking .text-link:focus-visible{background:#d3ac582b;border-color:#e1bd77;color:#ffdf9f}
.side-project .socials a{background:#e7c98a0d;border-color:#c6a46b70}
.side-project .socials a:hover,.side-project .socials a:focus-visible{background:#b68fe52b;border-color:#d2b5f2;color:#f0dba9}
.email-row>a,.phone a,.back-top{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px;transition:color .18s,text-decoration-color .18s}
.email-row>a:hover,.phone a:hover,.back-top:hover{color:#ffe4ac;text-decoration-color:currentColor}
@media(max-width:600px){.hero-bottom .socials a,.site-footer .socials a{font-size:10px;padding:7px 10px;min-height:38px}.hero-download-links a{padding:5px 12px;min-height:32px}.hero-bottom{gap:8px;padding:12px 14px}.text-link{font-size:12px}.hero-photo-frame{height:43%}}

/* One pre-mirrored bitmap eliminates fractional-pixel joins at the centre. */
body:before{content:'';position:fixed;inset:0;width:auto;z-index:-1;pointer-events:none;background:linear-gradient(0deg,#f3e7d1dc,#f1e5ccdc),url('assets/painted-flow-symmetric.webp') center/cover no-repeat;transform:none;opacity:1}
body:after{content:none;display:none}
.booking-wrap:before{content:'';position:absolute;inset:0;width:auto;z-index:-1;pointer-events:none;background:linear-gradient(0deg,#392f25eb,#392f25eb),url('assets/painted-flow-symmetric.webp') center/cover no-repeat;transform:none}
.booking-wrap:after{content:none;display:none}

/* Bright photo first; centered identity and actions on the painted surface below. */
.hero.hero-centered{height:auto;min-height:0;max-height:none;overflow:visible;background:transparent;color:var(--ink);padding:24px 24px 0;perspective:none}
.hero.hero-centered:after{content:none}
.hero-centered .hero-photo-frame{position:relative;inset:auto;z-index:auto;width:min(100%,1280px);height:clamp(350px,35vw,530px);margin:0 auto;padding:7px}
.hero-centered .hero-photo-frame>.hero-photo{position:relative;width:100%;height:100%;object-fit:cover;object-position:60% 39%;mask-image:none;filter:brightness(1.08) saturate(.95)}
.hero-centered .hero-photo-frame:after{content:'';position:absolute;left:7px;right:7px;bottom:7px;height:30%;pointer-events:none;z-index:1;background:linear-gradient(0deg,#efe4cc8c,transparent);clip-path:url('#photo-corners')}
.hero-centered .hero-photo-frame>.frame-outline{z-index:3;color:#b38a43;filter:drop-shadow(0 1px 1px #f7e4b9)}
.hero-centered .hero-brand{position:relative;inset:auto;width:100%;max-width:720px;margin:0 auto;padding:29px 18px 44px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}
.hero-centered h1{width:245px;max-width:60vw;filter:drop-shadow(0 1px 1px #62401bcc) drop-shadow(0 3px 9px #6b482b33)}
.hero-centered h1 img{width:100%;height:auto}
.hero-centered .hero-tagline{font-size:26px;line-height:1.45;margin:15px 0 21px;letter-spacing:.012em;background:linear-gradient(110deg,#795021,#a57937 45%,#795021);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;filter:none}
.hero-centered .hero-tagline br{display:none}
.hero-centered .hero-tagline span{font-size:1em;white-space:nowrap}
.hero-centered .hero-booking{min-width:205px;min-height:49px;margin:0;font-size:13px;box-shadow:0 3px 12px #78552614}
.hero-centered .hero-links{display:flex;flex-direction:column;align-items:center;gap:13px;width:100%;margin-top:20px}
.hero-centered .socials,.hero-centered .hero-download-links{justify-content:center;gap:10px}
.hero-centered .socials a{color:#644927;background:#fff4dc66;border-color:#a67f435e;font-size:12px;min-height:41px;padding:7px 17px}
.hero-centered .hero-download-links a{color:#765a34;background:transparent;border-color:transparent;min-height:32px;padding:4px 10px;font-size:10px;text-decoration:underline;text-decoration-color:#9e7a435c;text-underline-offset:5px}
.hero-centered .socials a:hover,.hero-centered .socials a:focus-visible,.hero-centered .hero-download-links a:hover,.hero-centered .hero-download-links a:focus-visible{color:#50371d;background:#d9b77747;border-color:#aa803c;text-decoration-color:currentColor}
.hero-centered+.artist-section{padding-top:28px}
@media(min-width:1600px){.hero-centered .hero-brand{left:auto}}
@media(max-width:900px){.hero.hero-centered{padding:18px 18px 0}.hero-centered .hero-photo-frame{height:390px}.hero-centered .hero-brand{padding-top:27px}.hero-centered h1{width:225px}.hero-centered .hero-tagline{font-size:23px}}
@media(max-width:600px){
 .hero.hero-centered{padding:12px 12px 0}
 .hero-centered .hero-photo-frame{height:310px;width:100%;padding:6px}
 .hero-centered .hero-photo-frame>.hero-photo{object-position:65% 37%;height:100%}
 .hero-centered .hero-photo-frame:after{left:6px;right:6px;bottom:6px;height:24%}
 .hero-centered .hero-brand{inset:auto;width:100%;max-width:none;margin:0;padding:25px 8px 32px}
 .hero-centered h1{width:200px;max-width:60vw}
 .hero-centered .hero-tagline{font-size:21px;line-height:1.5;margin:14px 0 18px}
 .hero-centered .hero-tagline br{display:block}
 .hero-centered .hero-booking{font-size:12px;min-height:46px;min-width:190px}
 .hero-centered .hero-links{margin-top:17px;gap:10px}
 .hero-centered .socials a{font-size:11px;min-height:40px;padding:7px 13px}
 .hero-centered .hero-download-links a{font-size:10px;padding:4px 9px}
 .hero-centered+.artist-section{padding-top:26px}
}

/* Edge-to-edge photo, open at the top with only the lower gold contour. */
.hero.hero-centered{padding:0}
.hero-centered .hero-photo-frame{width:100%;max-width:none;height:clamp(390px,40vw,700px);padding:0;margin:0}
.hero-centered .hero-photo-frame>.hero-photo{clip-path:url('#hero-bottom-corners');object-position:60% 25%}
.hero-centered .hero-photo-frame:after{left:0;right:0;bottom:0;clip-path:url('#hero-bottom-corners');height:30%}
.hero-centered .hero-photo-frame>.frame-outline{inset:0;width:100%;height:100%}
@media(max-width:900px){.hero.hero-centered{padding:0}.hero-centered .hero-photo-frame{height:420px}}
@media(max-width:600px){.hero.hero-centered{padding:0}.hero-centered .hero-photo-frame{width:100%;height:340px;padding:0}.hero-centered .hero-photo-frame>.hero-photo{object-position:65% 37%}.hero-centered .hero-photo-frame:after{left:0;right:0;bottom:0;height:24%}.hero-centered .hero-brand{padding-inline:20px}}

/* Variant 3: soft points, gold paint and mirrored fine-line details. */
.booking-cta{display:flex;align-items:center;justify-content:center;gap:15px;width:max-content;max-width:100%;margin-inline:auto;color:#e1c284}
.booking-flourish{width:66px;height:34px;flex:none;overflow:visible;pointer-events:none}
.booking-flourish-left{transform:scaleX(-1)}
.hero-centered .hero-booking{position:relative;isolation:isolate;overflow:hidden;display:inline-flex;align-items:center;justify-content:center;width:256.25px;min-width:256.25px;min-height:61.25px;padding:14px 24px;border:0;border-radius:0;clip-path:url('#booking-corners');font-family:'DM Sans',Arial,sans-serif;font-size:14.5px;font-weight:700;line-height:1.2;white-space:nowrap;letter-spacing:.075em;color:#241a0c;text-shadow:0 1px 1px #ffedb799;background:linear-gradient(105deg,#f4d28340,#ffe5a640),url('assets/booking-gold-texture.jpg') 50% 23%/100% auto;box-shadow:none;transition:transform .25s,filter .25s}
.hero-centered .hero-booking:before{content:'';position:absolute;inset:15px 27px;z-index:-1;background:radial-gradient(ellipse,#f6d48b80,transparent 75%);pointer-events:none}
.hero-centered .hero-booking:after{content:'';position:absolute;inset:0;z-index:0;pointer-events:none;background:linear-gradient(110deg,transparent 20%,#fff1c150 48%,transparent 75%);transform:translateX(-110%);transition:transform .7s ease}
.hero-centered .hero-booking:hover:after,.hero-centered .hero-booking:focus-visible:after{transform:translateX(110%)}
.hero-centered .hero-booking:hover,.hero-centered .hero-booking:focus-visible{transform:translateY(-2px);filter:brightness(1.12);box-shadow:none}
.hero-centered .hero-booking:active{transform:translateY(0)}
.hero-centered .hero-booking:focus-visible{outline:none;filter:brightness(1.2)}
.booking-cta:focus-within{outline:2px solid #f5d596;outline-offset:8px;border-radius:3px}
.booking-button-label{position:relative;z-index:1}
.booking-edge-outline{position:absolute;inset:0;width:100%;height:100%;color:#f8dfa4;stroke-width:1;pointer-events:none;z-index:2}
.booking-edge-outline path+path{color:#8e672f;stroke-width:.7}
@media(max-width:600px){.booking-cta{gap:9px}.booking-flourish{width:40px;height:28px}.hero-centered .hero-booking{width:237.5px;min-width:237.5px;min-height:57.5px;padding:14px 20px;font-size:13.5px;letter-spacing:.065em}}
@media(max-width:360px){.booking-cta{gap:6px}.booking-flourish{width:14px}}
@media(prefers-reduced-motion:reduce){.hero-centered .hero-booking,.hero-centered .hero-booking:after{transition:none}.hero-centered .hero-booking:after{display:none}}

/* A dedicated blue-and-gold tapestry only behind the centered artist identity. */
.hero-identity{position:relative;isolation:isolate;width:100%;overflow:hidden;background:#2c6068;color:#f0d79f;border-bottom:1px solid #c8a55d}
.hero-identity:before{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(ellipse at 50% 46%,#285d68f7 0%,#285d68eb 28%,#285a63bf 47%,#28545d52 76%,#28545d30 100%),url('assets/identity-tapestry.webp') center/cover no-repeat}
.hero-identity:after{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(180deg,#dfbb6314,transparent 30%,transparent 75%,#dfbb6310);box-shadow:inset 0 1px #e0bd7133,inset 0 -1px #e0bd7133}
.hero-centered .hero-identity .hero-brand{padding-top:38px;padding-bottom:38px}
.hero-centered .hero-identity h1{filter:drop-shadow(0 2px 3px #15343ac9) drop-shadow(0 0 18px #e1b4591f)}
.hero-centered .hero-identity .hero-tagline{background:linear-gradient(110deg,#e3be74,#fff0bf 48%,#e8c581);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;filter:drop-shadow(0 1px 2px #173c42)}
.hero-centered .hero-identity .socials a{color:#f2dfb3;background:#123b4145;border-color:#dcc08780;box-shadow:0 1px 3px #102d3024}
.hero-centered .hero-identity .hero-download-links a{color:#e3cea3;background:transparent;text-decoration-color:#e3c79073}
.hero-centered .hero-identity .socials a:hover,.hero-centered .hero-identity .socials a:focus-visible,.hero-centered .hero-identity .hero-download-links a:hover,.hero-centered .hero-identity .hero-download-links a:focus-visible{color:#fff1c9;background:#dfbb6b2b;border-color:#f0cf8a;text-decoration-color:currentColor}
@media(max-width:600px){.hero-centered .hero-identity .hero-brand{padding-top:30px;padding-bottom:30px}.hero-identity:before{background:radial-gradient(ellipse at 50% 46%,#285d68f2 0%,#285d68e6 32%,#285a63b8 65%,#28545d73 100%),url('assets/identity-tapestry.webp') center/cover no-repeat}}

/* Connectival header: preserve its natural warm light and keep hands in the crop. */
.hero-centered .hero-photo-frame>.hero-photo{object-position:61% 34%;filter:none}
.hero-centered .hero-photo-frame:after{background:linear-gradient(0deg,#efe4cc52,transparent);height:20%}
@media(max-width:600px){.hero-centered .hero-photo-frame>.hero-photo{object-position:63% 48%}.hero-centered .hero-photo-frame:after{height:17%}}
@media(min-width:1900px){.hero-centered .hero-photo-frame{height:40vw;max-height:1000px}}

/* Original header composition, relit in warm amber by Imagegen. */
.hero-centered .hero-photo-frame>.hero-photo{object-position:60% 25%;filter:none}
@media(max-width:600px){.hero-centered .hero-photo-frame>.hero-photo{object-position:65% 37%}}

/* Shared heading groups the two Soundjourney columns. */
.reference-formats{grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:48px;align-items:start}
.reference-formats>div{min-width:0}
.reference-formats>div>h3{padding-bottom:16px;border-bottom:1px solid #e2c68f55}
.reference-subcolumns{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:32px}
.reference-subgroup h4{font-size:18px;font-weight:400;color:#e2c68f;margin:0 0 15px}
.reference-type{display:block;font-size:10px;letter-spacing:.08em;color:#d8bd87;margin-top:4px}
.reference-formats .reference-table dt{min-width:0}
.reference-formats .reference-table dd{flex-shrink:0;max-width:45%}
@media(max-width:1000px){
 .reference-formats{gap:30px}
 .reference-subcolumns{gap:24px}
 .reference-formats .reference-table div{display:block}
 .reference-formats .reference-table dd{max-width:none;text-align:left;margin-top:4px}
}
@media(max-width:760px){
 .reference-formats{grid-template-columns:1fr;gap:36px}
 .reference-formats .reference-table div{display:flex}
 .reference-formats .reference-table dd{max-width:45%;text-align:right;margin-top:0}
}
@media(max-width:520px){
 .reference-subcolumns{grid-template-columns:1fr;gap:28px}
}

/* Different mirrored accents sit beside, rather than below, each section title. */
.heading-title{display:flex;align-items:center;justify-content:center;gap:22px;max-width:960px;margin-inline:auto}
.heading-title h2{min-width:0;flex:0 1 auto}
.heading-accent{display:block;width:80px;height:38px;flex:0 1 80px;min-width:22px;overflow:visible;color:#a17b3b;pointer-events:none}
.heading-accent-right{transform:scaleX(-1)}
.heading-accent path,.heading-accent circle{vector-effect:non-scaling-stroke}
.references-wrap .heading-accent,.booking-wrap .heading-accent{color:#d6b87b}
@media(max-width:900px){.heading-title{gap:16px}.heading-accent{width:56px;flex-basis:56px}}
@media(max-width:600px){.heading-title{gap:10px}.heading-accent{width:29px;min-width:22px;flex-basis:29px;height:26px}.heading-title h2{flex:0 1 auto}}



/* Layout preview: media formats first, painted background composition follows. */
.hero-identity{display:flex;align-items:center;justify-content:center}
.hero-centered .hero-identity .hero-brand{flex:none}
.featured-clip{width:min(100%,340px);margin:38px auto 0}
.featured-clip .video-frame,.video-grid .video-frame{aspect-ratio:9/16}
.featured-clip video,.video-grid video{display:block;width:100%;height:auto!important;aspect-ratio:9/16!important;object-fit:cover}
.video-grid{grid-template-columns:repeat(2,minmax(0,320px));justify-content:center;gap:48px}
.video-grid figure{width:100%;min-width:0}
@media(max-width:600px){
 .hero-centered .hero-links{gap:15px}
 .hero-centered .socials a{min-height:44px;display:inline-flex;align-items:center}
 .hero-centered .hero-download-links a{min-height:44px;display:inline-flex;align-items:center}
 .bio-copy{max-width:34rem;margin-inline:auto}
 .bio-copy p{font-size:15px;line-height:1.85}
 .featured-clip{width:min(100%,288px);margin-top:32px}
 .video-grid{grid-template-columns:minmax(0,288px);gap:34px}
 .heading-title{gap:10px}
 .direction-copy p{font-size:15px;line-height:1.8}
 .reference-formats{gap:38px}
 .reference-formats .reference-table{font-size:12px}
 .booking-form textarea{font-size:16px}
}

/* A compact selection controls one shared SoundCloud player. */
.set-picker{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;text-align:left;margin:26px auto 18px;max-width:960px}
.set-choice{display:flex;flex-direction:column;justify-content:center;gap:6px;min-height:84px;padding:15px 17px;text-align:left;color:var(--ink);background:#fff5df80;border:1px solid #a17e4866;border-radius:5px;transition:background .2s,border-color .2s}
.set-choice:hover{background:#ead8b8;border-color:#9b773b}
.set-choice[aria-pressed=true]{background:#274b46;color:#fff0ce;border-color:#b58a42;box-shadow:inset 0 0 0 1px #d5af6555}
.set-choice-title{font-family:'Marcellus',Georgia,serif;font-size:16px;line-height:1.35}
.set-choice-meta{font-size:10px;line-height:1.5;opacity:.8}
.sets-block .selected-set{font-size:12px;margin:12px 0 0;color:#70512e}
#soundcloud-player iframe{height:166px;margin:18px 0}
.sets-block .active-set-link{font-size:11px;margin-bottom:14px}
@media(max-width:800px){.set-picker{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:420px){.set-picker{gap:9px}.set-choice{padding:12px 10px;min-height:94px}.set-choice-title{font-size:14px}.set-choice-meta{font-size:10px}}

/* Slightly more air above the biography; organic pen-drawn heading accents. */
.hero-centered+.artist-section{padding-top:44px}
.heading-accent-handdrawn{height:44px}
@media(max-width:600px){.hero-centered+.artist-section{padding-top:42px}.heading-accent-handdrawn{height:30px;min-width:27px}}

/* The introductory film is landscape; the event films stay in portrait format. */
.featured-clip{width:min(100%,820px);margin:38px auto 0}
.featured-clip .video-frame,.featured-clip video{aspect-ratio:16/9!important}
.featured-clip video{height:auto!important;object-fit:cover;object-position:50% 35%}
.set-choice[hidden],.set-show-more[hidden]{display:none!important}
.sets-block .set-help{font-size:12px;margin:22px 0 14px;color:#70512e}
.set-filters{display:flex;justify-content:center;gap:9px;flex-wrap:wrap}
.set-filters button{min-height:42px;padding:9px 14px;border:1px solid #a17e4877;border-radius:24px;background:#fff5df66;color:var(--ink);font-size:12px}
.set-filters button[aria-pressed=true]{background:#274b46;color:#fff0ce;border-color:#274b46}
.sets-block .set-count{font-size:11px;margin:0 0 14px;color:#70512e}
.set-show-more{min-height:44px;margin-bottom:22px;font-size:12px}
@media(max-width:600px){.featured-clip{width:100%;margin-top:32px}.set-filters{gap:7px}.set-filters button{font-size:11px;padding:9px 12px;min-height:44px}}

/* Clear set descriptions and verified, second-accurate runtimes. */
.set-choice{min-height:112px;gap:7px}
.set-choice-meta{font-size:11px;line-height:1.5}
.set-choice-duration{font-size:10px;line-height:1.4;opacity:.75;font-variant-numeric:tabular-nums}
@media(max-width:420px){.set-choice{min-height:132px}.set-choice-meta{font-size:10px}}

/* Hearing examples live with the format they illustrate. */
.format-listening{grid-column:1/-1;min-width:0;width:100%;padding-top:30px;border-top:1px solid var(--line);text-align:center;direction:ltr}
.format-listening h4{font-family:'Marcellus',Georgia,serif;font-size:23px;font-weight:400;line-height:1.3;color:var(--teal);margin:0 0 12px}
.format-listening .format-player{border:0;width:100%;height:166px;margin:18px 0;border-radius:4px}
.format-listening .selected-set{font-size:12px;color:#70512e;margin:0}
.format-listening .set-help{font-size:12px;color:#70512e;margin:16px 0 0}
.format-listening .set-count{font-size:11px;margin:0 0 14px;color:#70512e}
.format-listening .active-set-link{display:table;margin:0 auto;font-size:11px}
.format-listening .set-picker{margin:20px auto 18px}
[data-format-panel="ecstatic"] .set-picker{grid-template-columns:repeat(2,minmax(0,1fr));max-width:640px}
@media(max-width:600px){
 .music-direction .format-listening{margin-top:2px;padding-top:26px}
 .format-listening h4{font-size:21px}
 .format-listening .set-picker{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
 .format-listening .format-player{margin:15px 0}
}

/* Give the format headings, players and selections more breathing room. */
.format-title{display:flex;align-items:center;justify-content:center;gap:18px;max-width:900px;margin:0 auto 32px}
.format-listening .format-title h4{margin:0;min-width:0;flex:0 1 auto}
.format-title .heading-accent{width:66px;flex-basis:66px;height:35px}
.format-listening .format-player{margin:0 auto 40px}
.format-listening .set-picker{margin:0 auto 24px}
@media(max-width:600px){
 .format-title{gap:10px;margin-bottom:27px}
 .format-title .heading-accent{width:29px;flex-basis:29px;min-width:25px;height:29px}
 .format-listening .format-player{margin:0 auto 30px}
 .format-listening .set-picker{margin-bottom:22px}
}

/* Open transitions into the listening examples and more prominent direct contact. */
.format-listening{border-top:0}
.contact-details{margin-top:26px;padding:19px 20px;background:#171b166e;border-radius:5px}
.contact-details .email-row{margin-top:0;gap:12px}
.contact-details .email-row>a{font-size:clamp(19px,2vw,24px);font-weight:600;line-height:1.45;color:#fff0c9;overflow-wrap:anywhere}
.contact-details .email-row button{min-height:36px;font-size:11px;padding:5px 12px;color:#f0d59e}
.booking-form .contact-details .phone{display:flex;align-items:baseline;flex-wrap:wrap;gap:10px;margin:14px 0 0;font-size:12px;color:#d9c7a8}
.contact-details .phone a{font-size:23px;font-weight:600;line-height:1.5;color:#fff0c9;white-space:nowrap}
.booking-portrait-crop{width:100%;height:350px;overflow:hidden;clip-path:url('#photo-corners')}
.booking-portrait-crop>.booking-portrait{width:100%;max-width:none;height:100%;border-radius:0;object-fit:cover;object-position:50% 33%;transform:translateX(-10%) scale(1.2);transform-origin:50% 45%;margin:0}
@media(max-width:600px){
 .contact-details{padding:18px 16px}
 .contact-details .phone a{font-size:21px}
 .booking-portrait-crop{height:335px}
 .booking-portrait-crop>.booking-portrait{object-position:50% 30%}
}

/* Direct contact: labels above the values, with discreet copy icons. */
.contact-details h4{font-family:'Marcellus',Georgia,serif;font-size:25px;font-weight:400;line-height:1.3;margin:0 0 20px;color:#f0d59e}
.contact-grid{display:grid;grid-template-columns:1.25fr 1fr;gap:20px}
.contact-method{min-width:0}
.contact-label{display:block;font-size:12px;letter-spacing:.06em;color:#d9c7a8;margin-bottom:5px}
.contact-value{display:flex;align-items:center;gap:7px}
.contact-value>a{font-size:clamp(16px,1.45vw,19px);font-weight:600;line-height:1.5;color:#fff0c9;text-decoration:none;overflow-wrap:anywhere}
.contact-value>a:hover{text-decoration:underline}
.contact-copy{display:inline-flex;align-items:center;justify-content:center;flex:0 0 32px;width:32px;min-height:36px;padding:4px;border:0;border-radius:4px;background:transparent;color:#ead09a;transition:background .2s,color .2s}
.contact-copy:hover{background:#e5c88724;color:#fff0c9}
.contact-details .status:empty{display:none}
.contact-details .status{margin:12px 0 0;font-size:12px;color:#f0d59e}
@media(max-width:600px){.contact-grid{grid-template-columns:1fr;gap:19px}.contact-value>a{font-size:19px}.contact-value{justify-content:space-between}}

/* Language navigation and always-visible bilingual press downloads. */
.language-switch{position:fixed;top:22px;right:26px;z-index:100;display:flex;align-items:center;gap:10px;padding:7px 13px;background:#192423bf;border:1px solid #c6a56c80;border-radius:5px;color:#f2d39b;font-size:12px;font-weight:600;letter-spacing:.08em;backdrop-filter:blur(8px)}
.language-switch a{text-decoration:none;padding:3px 1px;opacity:.65}
.language-switch a[aria-current="page"],.language-switch a:hover{opacity:1;text-decoration:underline;text-underline-offset:5px}
.presskit-downloads{display:grid;grid-template-columns:1fr 1fr;gap:13px;margin-top:20px}
.presskit-downloads h4{font-family:'Marcellus',Georgia,serif;font-size:19px;font-weight:400;margin:0 0 10px;color:#f0d59e}
.presskit-downloads .button{width:100%;font-size:11px;padding:10px 9px;min-height:56px;text-align:center}
.presskit-downloads .text-link{font-size:12px;margin-top:9px}
@media(max-width:600px){.language-switch{top:14px;right:14px}.presskit-downloads{gap:12px}}
.booking-aside .presskit-downloads .button{color:#f4dbab;border-color:#d2b67e;background:#dab77b14}
.booking-aside .presskit-downloads .button:hover{background:#dab77b2b}

/* Focal points for the selected live photographs. */
#soundjourneys .direction-image img{object-position:75% center}
#ecstatic-dance .direction-image img{object-position:50% center}

/* Instruments belong beside the biography; live moments remain in their own gallery. */
.instruments-section{padding-top:28px;padding-bottom:78px}
.instruments-section .section-heading{margin-bottom:32px}
.instruments-section h2{font-size:clamp(29px,3.1vw,40px)}
.studio-grid{grid-template-columns:repeat(2,minmax(0,288px));justify-content:center;gap:42px}
.event-video-grid{grid-template-columns:repeat(3,minmax(0,288px));gap:34px;justify-content:center}
@media(max-width:900px){.event-video-grid{gap:22px}.event-video-grid figcaption{font-size:10px;letter-spacing:.03em}}
@media(max-width:600px){.instruments-section{padding-top:14px;padding-bottom:58px}.studio-grid,.event-video-grid{grid-template-columns:minmax(0,288px);gap:32px}.instruments-section h2{font-size:29px}}

/* Fully loaded clips keep the native timeline seekable on every host. */
.video-load-overlay{position:absolute;inset:7px;z-index:2;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:13px;padding:18px;text-align:center;background:linear-gradient(transparent,#17201b50,transparent);clip-path:url('#photo-corners')}
.video-load-overlay[hidden]{display:none}
.video-load-button{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:11px 17px;border:1px solid #e4c47f;border-radius:4px;background:#253c34eb;color:#fff0c9;font-size:12px;font-weight:600;line-height:1.5;box-shadow:0 4px 20px #0004;transition:background .2s}
.video-load-button:hover{background:#34554af2}
.video-load-button:disabled{cursor:wait;opacity:.8}
.video-load-status{max-width:260px;color:#fff5df;font-size:11px;line-height:1.5;background:#17201bcc;border-radius:3px;padding:6px 10px}
.video-load-status:empty{display:none}

/* Preserve the entire recorded frame, including native video fullscreen. */
.video-frame video{object-fit:contain!important}
video:fullscreen{position:fixed!important;inset:0!important;width:100%!important;height:100%!important;max-width:none!important;max-height:none!important;aspect-ratio:auto!important;object-fit:contain!important;object-position:center!important;clip-path:none!important;border-radius:0!important;border:0!important;margin:0!important;padding:0!important;background:#000!important}
video:-webkit-full-screen{position:fixed!important;inset:0!important;width:100%!important;height:100%!important;max-width:none!important;max-height:none!important;aspect-ratio:auto!important;object-fit:contain!important;object-position:center!important;clip-path:none!important;border-radius:0!important;border:0!important;margin:0!important;padding:0!important;background:#000!important}

/* One centered mandala encloses the artist identity on a calm petrol field. */
.hero-identity{background:#243f3e;--identity-mandala-size:730px}
.hero-identity:before{inset:auto;left:50%;top:50%;width:var(--identity-mandala-size);height:var(--identity-mandala-size);transform:translate(-50%,-50%);background:url('assets/pattern.jpg') 50% 45%/175% auto no-repeat;opacity:.62;-webkit-mask-image:radial-gradient(circle closest-side,#000 86%,transparent 100%);mask-image:radial-gradient(circle closest-side,#000 86%,transparent 100%)}
.hero-identity:after{background:radial-gradient(ellipse at 50% 50%,#203f43b0 0%,#203f4370 40%,#203f4326 68%,transparent 92%)}

/* A gold play triangle on a round detail from the central tapestry mandala. */
.video-load-button{position:relative;isolation:isolate;flex:0 0 auto;width:78px;height:78px;min-height:78px;padding:0;border:1.5px solid #e4bd70;border-radius:50%;background:linear-gradient(#17282226,#17282226),url('assets/pattern.jpg') 50% 46.3%/440% auto no-repeat;color:#ffdf91;box-shadow:0 5px 24px #0006,inset 0 0 0 3px #17211dd9,inset 0 0 0 4px #dcb96d99;transition:transform .2s,filter .2s}
.video-load-button svg{width:30px;height:34px;fill:currentColor;transform:translateX(2px);filter:drop-shadow(0 1px 2px #0f1917);pointer-events:none}
.video-load-button:hover{background:linear-gradient(#17282226,#17282226),url('assets/pattern.jpg') 50% 46.3%/440% auto no-repeat;transform:scale(1.05);filter:brightness(1.12)}
.video-load-button:disabled{transform:none;filter:none}
@media(prefers-reduced-motion:reduce){.video-load-button{transition:none}}

/* 25% smaller discs, broad mandala detail and reflective gold edges. */
.video-load-button{--play-metal:linear-gradient(135deg,#855019 0%,#eac36b 18%,#fff7d0 36%,#f8da8b 45%,#a86c20 54%,#e9bc5b 72%,#fff1b0 86%,#98601d 100%);width:58.5px;height:58.5px;min-height:58.5px;border:0;background:var(--play-metal);box-shadow:0 4px 15px #0006,inset 0 1px 1px #fff9,inset 0 -1px 1px #6c421b}
.video-load-button:before{content:'';position:absolute;inset:2.5px;z-index:-1;border-radius:50%;background:linear-gradient(#1728220d,#1728220d),url('assets/pattern.jpg') 50% 46.7%/1100% auto no-repeat;box-shadow:inset 0 0 0 .65px #5d401c,inset 0 1px 3px #0005;pointer-events:none}
.video-load-button svg{width:24px;height:28px;filter:drop-shadow(0 1px 1px #26180e) drop-shadow(0 0 2px #ffdb6a55)}
.video-load-button:hover{background:var(--play-metal);filter:brightness(1.1)}
.video-load-button:disabled{filter:none}

/* The single centered tapestry fills the identity field, without a circular mask. */
.hero-identity{--identity-art-width:max(100vw,calc(var(--identity-mandala-size)*1.75))}
.hero-identity:before{inset:0;width:auto;height:auto;transform:none;background-image:url('assets/pattern.jpg');background-size:var(--identity-art-width) auto;background-position:50% calc(50% + var(--identity-art-width)*.046875);background-repeat:no-repeat;opacity:.62;-webkit-mask-image:none;mask-image:none}
.hero-identity:after{background:linear-gradient(#203f4399,#203f4399)}

/* One full-width, axis-symmetric tapestry, with one central flower. */
.hero-identity:before{background-image:url('assets/identity-mandala-symmetric.svg')}
/* Broad, softly layered petals in place of fine radial lines. */
.video-load-button:before{background:url('assets/play-mandala-simple.svg?v=red-star-1') center/cover no-repeat}

/* Artist sun with a play triangle replacing its spiral; 7% smaller. */
.video-load-button{width:54.405px;height:54.405px;min-height:54.405px;background:#233d37;box-shadow:0 4px 15px #0006}
.video-load-button:before{inset:2px;background:url('assets/play-sun.svg') center/contain no-repeat;box-shadow:none}
.video-load-button svg{width:18px;height:21px;transform:translateX(1px)}
.video-load-button:hover{background:#233d37}

/* Video edge and gold outline share identical dimensions and corner geometry. */
.video-frame.photo-frame,.featured-clip .video-frame.photo-frame{padding:0;aspect-ratio:auto!important}
.video-frame.photo-frame>video{width:100%;height:auto!important;margin:0}
.video-frame.photo-frame>.frame-outline{inset:0;width:100%;height:100%;filter:none}
.video-frame .video-load-overlay{inset:0}

/* Four complementary moments grouped below the formats and references. */
.event-video-grid{grid-template-columns:repeat(2,minmax(0,288px));column-gap:42px;row-gap:36px}
@media(max-width:600px){.event-video-grid{grid-template-columns:minmax(0,288px);gap:32px}}

/* A single swipeable row keeps all five clips together. */
.video-carousel{position:relative;padding-inline:48px}
.video-carousel .event-video-grid{display:grid;grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:calc((100% - 48px)/3);gap:24px;justify-content:start;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none;overscroll-behavior-x:contain;padding:2px 0 8px}
.video-carousel .event-video-grid::-webkit-scrollbar{display:none}
.video-carousel figure{scroll-snap-align:start;scroll-snap-stop:always}
.video-carousel-arrow{position:absolute;top:calc(50% - 36px);z-index:5;width:36px;height:44px;display:flex;align-items:center;justify-content:center;padding:0;border:1px solid #b58b5080;border-radius:5px;color:#77562c;background:#f4e4c7d9;box-shadow:0 2px 8px #392e2510;transition:background .18s,opacity .18s}
.video-carousel-prev{left:0}.video-carousel-next{right:0}
.video-carousel-arrow:hover{background:#e2bd75;color:#392e25}
.video-carousel-arrow:disabled{opacity:.25;cursor:default}
@media(max-width:900px){.video-carousel .event-video-grid{grid-auto-columns:calc((100% - 24px)/2)}}
@media(max-width:600px){.video-carousel{padding-inline:0}.video-carousel-arrow{display:none}.video-carousel .event-video-grid{grid-auto-columns:86%;gap:18px;scroll-padding-inline:0}.video-carousel figcaption{font-size:11px}}
@media(prefers-reduced-motion:reduce){.video-carousel .event-video-grid{scroll-behavior:auto}}

/* Faded slivers of the adjacent clips make the carousel continuation visible. */
.video-carousel{padding-inline:66px}
.video-carousel-peek{position:absolute;top:2px;width:50px;overflow:hidden;pointer-events:none;opacity:.35;border-radius:5px}
.video-carousel-peek[hidden]{display:none}
.video-carousel-peek img{position:absolute;top:0;max-width:none;height:100%;object-fit:cover}
.video-carousel-peek-left{left:0;mask-image:linear-gradient(90deg,transparent,#000 70%)}
.video-carousel-peek-left img{right:0}
.video-carousel-peek-right{right:0;mask-image:linear-gradient(90deg,#000 30%,transparent)}
.video-carousel-peek-right img{left:0}
.video-carousel-prev{left:7px}.video-carousel-next{right:7px}
.video-carousel figure{transition:opacity .18s}
.video-carousel figure.is-preview{opacity:.4}
@media(max-width:600px){.video-carousel{padding-inline:0}.video-carousel-peek{display:none}}

/* Booking shares the exact petrol tapestry treatment of the references. */
.booking-wrap{background:#29443f}
.booking-wrap:before{background:linear-gradient(#243f3eef,#243f3eef),url('assets/pattern.jpg') center/750px}
