/* SUN SPIRIT — approved painted page design. */
:root{--flow-paper:#f0e2c6;--flow-petrol:#243f3e}
body{background:var(--flow-paper)}
body:before{display:none}
main{position:relative;isolation:isolate;background:var(--flow-paper)}
/* One quiet material carries all light sections; motifs sit at the margins. */
.artist-section,.sound-section,.media-section{position:relative;isolation:isolate;background:transparent}
.artist-section:before,.sound-section:before,.media-section:before{content:'';position:absolute;inset:0 calc((100vw - 100%)/-2);z-index:-1;pointer-events:none;background-position:center;background-repeat:no-repeat;background-size:100% 100%;mask-image:linear-gradient(transparent,#000 10%,#000 90%,transparent)}
.artist-section:before{background-image:linear-gradient(#f0e2c636,#f0e2c636),url('art/cream-abstract-symmetric.svg');background-size:100% auto;background-position:center 46%;opacity:.85}
.sound-section:before{background-image:linear-gradient(#f0e2c647,#f0e2c647),url('art/continuation-abstract-symmetric.svg');opacity:.9}
.media-section:before{background-image:linear-gradient(#f0e2c633,#f0e2c633),url('art/cream-abstract-symmetric.svg');background-position:center 68%;background-size:100% auto;opacity:.8}
/* The centered identity gets a broad, undisturbed petrol centre. */
.hero-identity{background:var(--flow-petrol);border-bottom:0}
.hero-identity:before{inset:0;background:url('art/petrol-symmetric.svg') center/cover no-repeat;opacity:1;mask:none;-webkit-mask:none;transform:none}
.hero-identity:after{background:linear-gradient(180deg,transparent 75%,var(--flow-paper));box-shadow:none}
.hero-centered .hero-identity .hero-brand{padding-bottom:80px}
.hero-centered .hero-photo-frame:after{background:linear-gradient(0deg,#243f3e9c,transparent 65%);height:24%}
/* Preserve the layout while joining the colour fields with soft pigment. */
.references-wrap,.booking-wrap{background:var(--flow-petrol);position:relative;isolation:isolate}
.references-wrap:before,.booking-wrap:before{background:linear-gradient(#243f3e30,#243f3e30),url('art/petrol-symmetric.svg') center/cover no-repeat;opacity:1}
.references-wrap:after,.booking-wrap:after{content:'';display:block;position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(180deg,var(--flow-paper) 0%,#f0e2c600 11%,#f0e2c600 89%,var(--flow-paper) 100%)}
.references-wrap .references,.booking-wrap .booking{padding-top:115px;padding-bottom:115px}
.references-wrap h2,.booking-wrap h2{color:#f0d08d}
.reference-table div{border-bottom-color:#d6c29626}
.booking-form textarea,.direct-contact{background:#132c2a57}
/* The beloved fabric bands are light accents rather than heavy dividers. */
.pattern-divider{height:32px;opacity:.84;border-block:3px double #bd9857;background-color:var(--flow-paper);box-shadow:0 -12px 22px var(--flow-paper),0 12px 22px var(--flow-paper);position:relative;z-index:2}
/* A little cream breathing space protects prose from the side paintings. */
.bio-copy{position:relative}.bio-copy p{line-height:1.9}
.direction-copy{position:relative}
.format-listening{position:relative}
.set-choice{background:#f5ebd874;backdrop-filter:blur(3px)}
.set-choice[aria-pressed=true]{background:#274b46;color:#f6e6c5}
/* Keep the separate TURMALIN identity dark, with a soft exit from booking. */
.turmalin-wrap{border-top:0}
.site-footer{border-top:1px solid #bb94585c}
@media(max-width:900px){.artist-section:before,.sound-section:before,.media-section:before{background-size:150% 100%}.hero-identity:before{background-size:auto 100%}}
@media(max-width:600px){
 .hero-identity:before{background-size:auto 100%;background-position:center}
 .hero-identity:after{background:linear-gradient(180deg,transparent 84%,var(--flow-paper))}
 .hero-centered .hero-identity .hero-brand{padding-bottom:70px}
 .artist-section:before{background-size:auto 100%;opacity:.42}
 .sound-section:before{background-size:160% 100%;opacity:.5}
 .media-section:before{background-size:auto 100%;opacity:.45}
 .references-wrap:before,.booking-wrap:before{background-size:auto 100%;background-position:center;opacity:.8}
 .references-wrap:after,.booking-wrap:after{background:linear-gradient(180deg,var(--flow-paper),transparent 75px,transparent calc(100% - 75px),var(--flow-paper))}
 .references-wrap .references,.booking-wrap .booking{padding-top:100px;padding-bottom:100px}
 .pattern-divider{height:25px;border-block-width:2px}
}

/* Revision 2: abstract edge motifs and edge-free painted surfaces. */
.artist-section:before,.sound-section:before,.media-section:before{background-size:100% 100%;background-position:center;-webkit-mask-image:linear-gradient(transparent,#000 65px,#000 calc(100% - 65px),transparent);mask-image:linear-gradient(transparent,#000 65px,#000 calc(100% - 65px),transparent)}
.artist-section{padding-bottom:42px}
.sound-section{padding-top:48px;padding-bottom:50px}
.sound-section>.section-heading{margin-bottom:30px}
.sound-section .music-direction:first-of-type{margin-top:36px}
.organic-separator{height:44px;width:min(460px,78%);margin:8px auto;display:flex;align-items:center;justify-content:center;position:relative;z-index:2;background:transparent}
.organic-separator img{display:block;width:100%;height:44px;opacity:.85}
.references-wrap .references{padding-top:90px;padding-bottom:90px}
/* Close the page in the same quiet petrol/gold language as the new identity. */
.site-footer{isolation:isolate;background:#243f3e;color:#f0d49a;border:0;padding-top:64px}
.site-footer:before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(#243f3e44,#243f3e44),url('art/petrol-symmetric.svg') center/cover no-repeat;opacity:.75;pointer-events:none}
.site-footer:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,#0c1421 0,transparent 90px);pointer-events:none}
.site-footer .socials a{background:#18363277;color:#f0d49a;border-color:#c8a66b80}
.site-footer p,.site-footer .back-top{color:#e9cd91}
@media(max-width:600px){
 .artist-section:before,.sound-section:before,.media-section:before{background-size:100% 100%;-webkit-mask-image:linear-gradient(transparent,#000 50px,#000 calc(100% - 50px),transparent);mask-image:linear-gradient(transparent,#000 50px,#000 calc(100% - 50px),transparent)}
 .artist-section{padding-bottom:30px}.sound-section{padding-top:36px;padding-bottom:38px}
 .organic-separator{height:36px;margin:3px auto}.organic-separator img{height:36px}
 .references-wrap .references{padding-top:90px;padding-bottom:90px}
 .site-footer:before{background-size:auto 100%}
}
/* Shorter warm sections keep the original round mandala proportions. */
.artist-section:before,.media-section:before{background-size:100% auto}
@media(max-width:600px){.artist-section:before,.media-section:before{background-size:auto 100%}}

/* Revision 3: phone typography, media order and calm text over visible mandalas. */
@media(max-width:600px){
 .heading-title{width:fit-content;max-width:100%;gap:4px;justify-content:center}
 .heading-title h2{flex:0 1 auto;max-width:200px}
 #videos .heading-title h2{max-width:175px}
 .booking .heading-title h2{max-width:none;font-size:28px}
 .heading-title .heading-accent{width:26px;min-width:26px;flex:0 0 26px;height:29px}
 .format-title{gap:5px}
 .format-title .heading-accent{width:25px;min-width:25px;flex-basis:25px}
 .bio-copy p:not(.lead),.direction-body p,.booking-form>p,.booking-aside p,.side-project p:not(.eyebrow){text-align:justify;text-align-last:left;hyphens:auto;-webkit-hyphens:auto;overflow-wrap:break-word}
 .music-direction{display:flex;flex-direction:column;gap:24px;align-items:stretch}
 .music-direction .direction-copy{display:contents}
 .music-direction .direction-heading{order:0;width:100%;text-align:center}
 .music-direction .direction-image{order:1;width:100%}
 .music-direction .direction-body{order:2;width:100%}
 .music-direction .format-listening{order:3;width:100%;margin-top:5px}
 .direction-heading h3{margin-bottom:0;text-align:center}
 .direction-heading .eyebrow{text-align:center}
 .artist-section:before,.media-section:before{background-image:linear-gradient(#f0e2c61a,#f0e2c61a),url('art/cream-mobile.svg');background-size:100% 100%,100% auto;background-repeat:no-repeat,repeat-y;opacity:.62;background-position:center top}
 .sound-section:before{background-image:linear-gradient(#f0e2c61a,#f0e2c61a),url('art/continuation-mobile.svg');background-size:100% 100%,100% auto;background-repeat:no-repeat,repeat-y;opacity:.58;background-position:center top}
 /* Natural-size petals stay at the margins; a dark centre protects all copy. */
 .booking-wrap:before,.references-wrap:before{background-image:linear-gradient(90deg,#243f3e66 0%,#243f3eeb 19%,#243f3ef5 50%,#243f3eeb 81%,#243f3e66 100%),url('art/petrol-symmetric.svg');background-size:100% 100%,100% auto;background-position:center,center top;background-repeat:no-repeat,repeat-y;opacity:1}
 .booking-wrap .section-heading,.booking-wrap .booking-form,.booking-wrap .booking-aside{position:relative;isolation:isolate}
 .booking-wrap .section-heading:before,.booking-wrap .booking-aside:before{content:'';position:absolute;inset:-12px -12px;z-index:-1;background:radial-gradient(ellipse,#243f3ee6 0%,#243f3eaa 55%,transparent 78%);pointer-events:none}
 .booking .section-heading h2{color:#f2d397}
 .booking .eyebrow{color:#e4c789}
 .booking-aside p,.booking-form>p{color:#f0e0c3}
 .presskit,.technical{background:#243f3e8c;border-radius:5px;padding:17px 12px 24px;margin-inline:-12px}
 .site-footer:before{background-size:100% auto;background-repeat:no-repeat;background-position:center;opacity:.68}
}

/* Revision 4: retain the painting's intrinsic 2:3 ratio on desktop.
   The flat tint fills the section independently of the proportional artwork. */
@media(min-width:601px){
 .artist-section:before,.media-section:before{background-image:linear-gradient(#f0e2c636,#f0e2c636),url('art/cream-proportional.svg');background-size:100% 100%,100% auto;background-position:center,center 46%;background-repeat:no-repeat}
}

/* The opening photograph has a clean, straight gold lower edge. */
.hero-centered .hero-photo-frame{border-bottom:1px solid #c5a363}
.hero-centered .hero-photo-frame>.hero-photo,.hero-centered .hero-photo-frame:after{clip-path:none;border-radius:0}
.hero-centered .hero-photo-frame>.frame-outline{display:none}

/* Revision 6: quiet transitions and complete, readable contact values. */
.contact-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,270px),1fr));gap:22px}
.contact-value{min-width:0;flex-wrap:wrap;justify-content:flex-start;column-gap:10px;row-gap:5px}
.contact-value>a{white-space:nowrap;overflow-wrap:normal;word-break:normal;hyphens:none}
.contact-copy{flex:0 0 auto}
.booking-wrap .section-heading{position:relative;isolation:isolate}
.booking-wrap .section-heading:before{content:'';position:absolute;inset:-42px -30px;z-index:-1;pointer-events:none;background:radial-gradient(ellipse at center,#243f3efc 0%,#243f3ef5 42%,#243f3eb3 65%,#243f3e00 84%)}
.booking-wrap .section-heading .eyebrow{position:relative;color:#ffe4ad;font-weight:700;text-shadow:0 1px 3px #102d2b}
.booking-wrap .section-heading h2{color:#f2d397;text-shadow:0 2px 5px #17343180}
@media(max-width:600px){
 .contact-value>a{font-size:clamp(15px,4.3vw,19px)}
 .booking-wrap .section-heading:before{inset:-36px -18px;background:radial-gradient(ellipse,#243f3eff 0%,#243f3ef5 45%,#243f3eb3 68%,transparent 90%)}
}

.booking-wrap .section-heading:before{mask-image:linear-gradient(transparent,#000 25%,#000 75%,transparent);-webkit-mask-image:linear-gradient(transparent,#000 25%,#000 75%,transparent)}

/* Compact download headings keep both rider buttons in the petrol field. */
.presskit-heading{display:flex;align-items:baseline;flex-wrap:wrap;column-gap:14px;row-gap:3px}
.booking-aside .presskit-heading p{margin:0;font-size:11px;line-height:1.5;text-align:left}

.booking-aside .presskit-downloads .button{background:#1c3d39e6;color:#f5dca5}
.booking-aside .presskit-downloads .button:hover{background:#31564d;border-color:#f2d397}

/* Warm pigment transitions: olive and ochre keep teal-to-paper fades earthy. */
.hero-identity:after{background:linear-gradient(180deg,transparent 65%,#425d4940 73%,#7880648c 81%,#af9f76d6 89%,#ddcba5f0 96%,var(--flow-paper) 100%)}
.references-wrap:after,.booking-wrap:after{background:linear-gradient(180deg,var(--flow-paper) 0%,#ddcba5f0 2%,#af9f76c9 5%,#78806473 8%,#425d4926 11%,transparent 14%,transparent 86%,#425d4926 89%,#78806473 92%,#af9f76c9 95%,#ddcba5f0 98%,var(--flow-paper) 100%)}
@media(max-width:600px){
 .hero-identity:after{background:linear-gradient(180deg,transparent 78%,#425d4940 83%,#7880648c 88%,#af9f76d6 93%,#ddcba5f0 97%,var(--flow-paper))}
 .references-wrap:after,.booking-wrap:after{background:linear-gradient(180deg,var(--flow-paper),#ddcba5f0 12px,#af9f76c9 30px,#78806473 48px,#425d4926 65px,transparent 85px,transparent calc(100% - 85px),#425d4926 calc(100% - 65px),#78806473 calc(100% - 48px),#af9f76c9 calc(100% - 30px),#ddcba5f0 calc(100% - 12px),var(--flow-paper))}
}

/* The same sand/olive palette connects the remaining page boundaries. */
:root{--flow-sand:#ddcba5;--flow-ochre:#af9f76;--flow-olive:#788064}
.pattern-divider{box-shadow:0 -12px 22px var(--flow-paper),0 12px 22px var(--flow-paper);background-color:var(--flow-paper)}
.turmalin-wrap:after{background:linear-gradient(180deg,var(--flow-paper) 0,var(--flow-sand) 10px,#af9f76d6 26px,#78806480 44px,#425d4926 63px,transparent 85px),radial-gradient(ellipse at 18% 75%,#6239aa24,transparent 55%)}
.turmalin-wrap .side-project{padding-top:100px}
.site-footer:after{background:linear-gradient(180deg,#0c1421 0,#1f332ed9 28px,#344a3859 62px,transparent 100px)}
@media(max-width:600px){.turmalin-wrap .side-project{padding-top:100px}}

/* Proportional phone artwork and a calm parchment centre behind prose. */
@media(max-width:600px){
 .artist-section:before,.media-section:before{background-image:linear-gradient(90deg,#f0e2c600 0%,#f0e2c6e0 13%,#f0e2c6f0 24%,#f0e2c6f0 76%,#f0e2c6e0 87%,#f0e2c600 100%),url('art/cream-mobile.svg?v=10');background-size:100% 100%,100% auto;background-position:center,center top;background-repeat:no-repeat,repeat-y;opacity:.65}
 .sound-section:before{background-image:linear-gradient(90deg,#f0e2c600 0%,#f0e2c6db 13%,#f0e2c6ed 24%,#f0e2c6ed 76%,#f0e2c6db 87%,#f0e2c600 100%),url('art/continuation-mobile.svg?v=10');background-size:100% 100%,100% auto;background-position:center,center top;background-repeat:no-repeat,repeat-y;opacity:.6}
 .bio-copy p:not(.lead){text-justify:inter-word;hyphenate-limit-chars:7 3 3;line-height:1.85}
}

/* Centre both format enquiry buttons without changing prose alignment. */
.direction-body>a[data-booking-direction]{display:table;max-width:100%;margin-left:auto;margin-right:auto;text-align:center}

/* Booking to TURMALIN stays dark; only transitions into light sections use sand. */
.booking-wrap:after{background:linear-gradient(180deg,var(--flow-paper) 0%,#ddcba5f0 2%,#af9f76c9 5%,#78806473 8%,#425d4926 11%,transparent 14%,transparent 88%,#12252a99 95%,#0c1421 100%)}
.turmalin-wrap:after{background:linear-gradient(180deg,#0c1421 0, #0c1421a6 35px,transparent 85px),radial-gradient(ellipse at 18% 75%,#6239aa24,transparent 55%)}
.turmalin-wrap{border-bottom:0}
.site-footer:after{background:linear-gradient(180deg,#0c1421 0,#14272bdb 30px,#203b3973 70px,transparent 120px)}
@media(max-width:600px){
 .booking-wrap:after{background:linear-gradient(180deg,var(--flow-paper),#ddcba5f0 12px,#af9f76c9 30px,#78806473 48px,#425d4926 65px,transparent 85px,transparent calc(100% - 100px),#12252a99 calc(100% - 45px),#0c1421 100%)}
}

/* Phone ornaments hug each title instead of the full available row. */
.mobile-title-break{display:none}
@media(max-width:600px){
 .mobile-title-break{display:block}
 .format-title{width:fit-content;max-width:100%;gap:3px}
 .format-listening .format-title h4{width:max-content;max-width:calc(100vw - 104px);flex:0 1 auto;text-wrap:balance}
 .format-title .heading-accent{width:24px;min-width:24px;flex:0 0 24px}
 .heading-title{gap:3px}
 .heading-title h2{width:max-content;max-width:190px;text-wrap:balance}
 #videos .heading-title h2{max-width:150px}
 .booking .heading-title h2{max-width:none}
}

/* On phones the artist portrait introduces the booking section. */
@media(max-width:600px){
 .booking-grid{display:flex;flex-direction:column;gap:32px}
 .booking-grid>.booking-aside{display:contents}
 .booking-wrap .booking-aside:before{display:none}
 .booking-grid .booking-portrait-frame{order:0;align-self:center;width:min(100%,300px);margin:0 auto}
 .booking-grid>.booking-form{order:1;width:100%}
 .booking-grid .presskit{order:2;width:auto;margin-top:0}
 .booking-grid .technical{order:3;width:auto;margin-top:0}
}

@media(max-width:600px){.format-listening .format-title h4{max-width:calc(100vw - 44px)}}

/* Centre both organiser download groups and give them matching widths. */
.booking-aside .presskit,.booking-aside .technical{text-align:center;min-width:0}
.booking-aside .presskit-heading{justify-content:center}
.booking-aside .presskit-heading p,.booking-aside .presskit>.eyebrow{text-align:center;text-align-last:center}
.booking-aside .presskit-downloads{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;width:100%;max-width:440px;margin-left:auto;margin-right:auto;text-align:center}
.booking-aside .presskit-downloads>div{min-width:0;text-align:center}
.booking-aside .presskit-downloads .button{width:100%}
@media(max-width:600px){
 .booking-grid .presskit,.booking-grid .technical{width:100%;margin-left:0;margin-right:0;align-self:center}
 .booking-aside .presskit-downloads{gap:12px}
}

/* A continuous beige surface joins biography to the formats.
   The motion gallery uses the quiet upper artwork, held at the outer edges. */
.media-section:before{background-image:linear-gradient(90deg,#f0e2c666 0%,#f0e2c6d9 9%,#f0e2c6fa 19%,#f0e2c6fa 81%,#f0e2c6d9 91%,#f0e2c666 100%),url('art/cream-proportional.svg');background-size:100% 100%,100% auto;background-position:center,center top;background-repeat:no-repeat;opacity:.65}
@media(max-width:600px){
 .media-section:before{background-image:linear-gradient(90deg,#f0e2c699 0%,#f0e2c6ed 12%,#f0e2c6ff 24%,#f0e2c6ff 76%,#f0e2c6ed 88%,#f0e2c699 100%),url('art/cream-mobile.svg?v=10');background-size:100% 100%,100% auto;background-position:center,center top;background-repeat:no-repeat,repeat-y;opacity:.45}
}

/* Biography and both formats share one painted canvas, with no section seam. */
.bio-formats-flow{position:relative;isolation:isolate;background:var(--flow-paper)}
.bio-formats-flow:before{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;background-image:linear-gradient(90deg,#f0e2c600 0%,#f0e2c666 17%,#f0e2c6bf 28%,#f0e2c6bf 72%,#f0e2c666 83%,#f0e2c600 100%),url('art/cream-mobile.svg?v=10');background-size:100% 100%,100% auto;background-position:center,center top;background-repeat:no-repeat,repeat-y;opacity:.78;mask-image:linear-gradient(transparent,#000 65px,#000 calc(100% - 65px),transparent);-webkit-mask-image:linear-gradient(transparent,#000 65px,#000 calc(100% - 65px),transparent)}
.bio-formats-flow .artist-section:before,.bio-formats-flow .sound-section:before{display:none}
@media(max-width:600px){
 .bio-formats-flow>.artist-section{padding-top:42px}
 .bio-formats-flow:before{background-image:linear-gradient(90deg,#f0e2c600 0%,#f0e2c6e0 13%,#f0e2c6f0 24%,#f0e2c6f0 76%,#f0e2c6e0 87%,#f0e2c600 100%),url('art/cream-mobile.svg?v=10');opacity:.65}
}

/* Fractional section heights must not expose a dark one-pixel edge.
   Paper is the base at both boundaries; the painted gradient overlaps it. */
.references-wrap{background:var(--flow-paper)}
.references-wrap:before{mask-image:linear-gradient(transparent,#000 3px,#000 calc(100% - 3px),transparent);-webkit-mask-image:linear-gradient(transparent,#000 3px,#000 calc(100% - 3px),transparent)}
.references-wrap:after{inset:-2px 0}
