@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@700;800;900&family=DM+Sans:wght@400;500;600;700&display=swap');
:root{--paper:#f3f2eb;--ink:#181818;--acid:#dafa42;--orange:#ff6434}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:80px}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',Arial,sans-serif}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}a:focus-visible,button:focus-visible{outline:3px solid #8d62ff;outline-offset:5px}img{display:block;width:100%;height:100%;object-fit:cover}header{position:absolute;z-index:3;top:0;left:0;width:100%;display:flex;align-items:center;justify-content:space-between;padding:22px 3%;color:var(--paper)}.wordmark{font-size:40px;font-weight:800;letter-spacing:-5px}.wordmark span{color:var(--acid);padding-left:6px}nav{display:flex;gap:38px;font-size:15px}nav a:hover,footer a:hover{text-decoration:underline}.skip{position:absolute;top:-80px;z-index:10;background:white;padding:15px}.skip:focus{top:0}.hero{height: min(920px,100svh);min-height:650px;position:relative;overflow:hidden;background:#1d1917;color:var(--paper)}.hero-photo{position:absolute;object-position:50% 44%;filter:brightness(.7)}.hero:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,#0004,transparent 40%,#0007);pointer-events:none}.hero-topline{position:absolute;z-index:1;top:116px;left:3%;right:3%;display:flex;justify-content:space-between;font-size:11px;letter-spacing:1.2px}h1{position:absolute;z-index:1;top:15%;left:2%;margin:0;font-family:'Barlow Condensed','Arial Narrow',sans-serif;font-weight:900;font-size:clamp(150px,25.8vw,440px);line-height:.8;letter-spacing:-.035em;white-space:nowrap;color:var(--acid)}.music-label{position:absolute;right:2%;bottom:-46px;font:700 17px 'DM Sans',sans-serif;letter-spacing:9px;color:var(--paper)}.hero-bottom{position:absolute;z-index:2;bottom:35px;left:3%;right:3%;display:flex;align-items:end;justify-content:space-between}.hero-bottom p{font-size:clamp(32px,4vw,64px);letter-spacing:-2px;line-height:1.03;margin:0}.hero-bottom a{font-size:13px;border-bottom:1px solid #fffa;padding-bottom:9px;min-width:180px;display:flex;justify-content:space-between}.orbit{position:absolute;z-index:1;right:7%;bottom:18%;font-size:145px;color:var(--orange);line-height:1;transform:rotate(-15deg)}.index{font-size:10px;font-weight:600;letter-spacing:1.4px}.intro{display:grid;grid-template-columns:1fr 2fr 1.1fr;gap:25px;padding:85px 3% 65px;align-items:start}h2{font-size:clamp(36px,4.5vw,75px);font-weight:500;letter-spacing:-.055em;line-height:1.02;margin:0}em{font-family:Georgia,serif;font-weight:400}.intro-note{font-size:14px;line-height:1.65;padding-top:6px}.intro-note a,.statement a,.details a{display:inline-block;margin-top:20px;border-bottom:1px solid;padding-bottom:5px}.work-grid{padding:0 3% 90px;display:grid;grid-template-columns:1.18fr 1fr;gap:60px 25px;align-items:start}.image-link,.film{display:block;position:relative;width:100%;overflow:hidden;border:0;padding:0;background:#222;color:white;text-align:left}.dj .image-link{aspect-ratio:1}.live{padding-top:105px}.live .film{aspect-ratio:4/5}.wedding{width:75%;margin-left:15%;margin-top:-55px}.wedding .film{aspect-ratio:3/4}.studio{margin-top:65px}.studio .image-link{aspect-ratio:1}.image-link img,.film img{transition:transform .65s}.image-link:hover img,.film:hover img{transform:scale(1.035)}.image-title{position:absolute;top:27px;left:26px;font:800 clamp(55px,7.5vw,120px)/.85 'Barlow Condensed',sans-serif;letter-spacing:-2px;color:var(--acid)}.round-arrow{position:absolute;bottom:22px;right:22px;background:var(--acid);color:#181818;border-radius:50%;height:52px;width:52px;display:grid;place-items:center;font-size:29px}.caption{display:flex;justify-content:space-between;gap:10px;align-items:center;padding-top:16px}.caption h3{margin:0;font-size:16px;font-weight:500;letter-spacing:-.3px}.caption span{font-size:9px;letter-spacing:.7px}.play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);border:1px solid #fff;background:#0003;border-radius:50%;width:74px;height:74px;display:grid;place-items:center;font-size:20px;padding-left:4px}.film-label{position:absolute;bottom:22px;left:22px;font-size:10px;letter-spacing:1px;background:#161616;padding:8px 10px}.studio-title{position:absolute;bottom:25px;left:25px;font-size:clamp(32px,4vw,62px);line-height:1;letter-spacing:-3px;color:#fff;text-shadow:0 1px 15px #000}.statement{background:var(--acid);padding:45px 5% 85px}.about-layout{display:grid;grid-template-columns:1.5fr 1fr;gap:10%;padding-top:60px}.about-layout>div{max-width:450px;font-size:18px;line-height:1.6}.about-layout p:first-child{margin-top:0}.asterisk{display:block;font-size:120px;margin-top:25px;font-style:normal}.details{display:grid;grid-template-columns:1fr 1fr;padding:70px 5%;gap:10%;background:#e7e6df}.details article{padding:0 0 30px}.details h2{font-size:clamp(35px,4vw,58px);margin:30px 0}.details article>p:not(.index){font-size:16px;line-height:1.65;max-width:440px}.details .credentials{font-size:12px!important;margin-top:25px}.contact{background:var(--orange);padding:35px 3% 50px}.contact-top{display:flex;justify-content:space-between;font-size:12px;line-height:1.5}.big-contact{display:block;position:relative;font:800 clamp(88px,17vw,280px)/.82 'Barlow Condensed',sans-serif;letter-spacing:-.035em;margin:55px 0}.big-contact span{-webkit-text-stroke:1.5px var(--ink);color:transparent}.big-contact i{font-style:normal;position:absolute;right:0;top:0;font-family:Arial,sans-serif;font-size:.65em}.contact-bottom{display:flex;justify-content:space-between;align-items:end;font-size:15px;line-height:1.6}.contact-bottom p{margin:0}.contact-bottom a{display:block}footer{background:var(--ink);color:var(--paper);display:flex;justify-content:space-between;padding:30px 3%;font-size:10px;letter-spacing:.6px}footer div{display:flex;gap:25px}dialog{border:0;padding:20px;background:#161616;color:white;width:min(900px,95vw);max-height:95svh}dialog::backdrop{background:#000d}.dialog-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.dialog-head h2{font-size:18px;letter-spacing:0}.dialog-head button{background:transparent;color:white;border:1px solid #888;padding:9px}dialog video{display:block;width:100%;max-height:78svh}body.modal-open{overflow:hidden}
@media(min-width:1600px){.hero-photo{object-position:50% 48%}}@media(max-width:760px){header{padding:15px 5%}nav{gap:23px;font-size:13px}.wordmark{font-size:34px}.hero{min-height:620px;height:92svh}.hero-topline{top:95px;left:5%;right:5%;font-size:8px;letter-spacing:.5px}h1{top:24%;left:3%;font-size:26vw}.music-label{bottom:-30px;font-size:12px;letter-spacing:7px}.hero-photo{object-position:50% 50%}.hero-bottom{left:5%;right:5%;bottom:28px}.hero-bottom p{font-size:35px;letter-spacing:-1px}.hero-bottom a{min-width:115px;font-size:11px}.orbit{font-size:95px;bottom:22%;right:8%}.intro{padding:45px 5% 35px;grid-template-columns:1fr;gap:20px}.intro h2{font-size:49px}.intro-note{font-size:14px}.intro-note p{margin:0}.intro-note a{margin-top:12px}.work-grid{padding:0 5% 45px;gap:35px;grid-template-columns:1fr}.live,.studio{padding:0;margin:0}.wedding{width:100%;margin:0}.live .film,.wedding .film{aspect-ratio:4/5}.image-title{font-size:80px}.caption h3{font-size:14px}.caption span{font-size:8px}.studio-title{font-size:44px;letter-spacing:-2px}.about-layout{grid-template-columns:1fr;gap:20px;padding-top:30px}.statement{padding:30px 5% 45px}.about-layout h2{font-size:46px}.asterisk{font-size:70px;margin-top:15px}.about-layout>div{font-size:16px}.details{grid-template-columns:1fr;padding:35px 5%;gap:30px}.details article+article{border-top:1px solid #bbb;padding-top:25px}.details h2{font-size:43px;margin:20px 0}.contact{padding:25px 5% 35px}.contact-top{font-size:10px}.big-contact{font-size:19.2vw;margin:45px 0;line-height:.9}.contact-bottom{align-items:start;flex-direction:column;gap:25px;font-size:13px}footer{padding:25px 5%;gap:25px;flex-direction:column}footer div{gap:20px}dialog{padding:12px}.dialog-head h2{font-size:14px}.dialog-head button{font-size:12px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Supplied identity and revised portfolio */
header{color:var(--ink)}.wordmark{display:block;width:76px;height:76px;letter-spacing:0}.wordmark img{object-fit:contain}.hero{background:var(--acid);color:var(--ink)}.hero:after{display:none}.hero-topline{top:130px}h1{top:50%;left:50%;transform:translate(-50%,-50%);height:min(54vw,540px);width:min(54vw,540px);font-size:0}.hero-logo{object-fit:contain}.hero-bottom a{border-color:var(--ink)}.orbit{right:7%;bottom:20%;font-size:110px;color:var(--ink)}.live{padding-top:0}.live .film{aspect-ratio:1}.wedding{width:100%;margin:100px 0 0}.wedding .film{aspect-ratio:4/5}.studio{margin-top:-80px;width:85%}.booking-details{display:flex;justify-content:space-between;align-items:center;gap:30px;border-top:1px solid #18181880;border-bottom:1px solid #18181880;padding:28px 0;margin-bottom:35px}.booking-details h2{font-size:26px;letter-spacing:-.6px}.booking-details p{font-size:13px;line-height:1.5;margin-bottom:0}.booking-details>a{flex-shrink:0;font-size:15px;text-decoration:underline;text-underline-offset:4px}.booking-details a span{display:block;font-size:10px;margin-top:12px;text-decoration:none}
@media(max-width:760px){.wordmark{width:60px;height:60px}.hero-topline{top:105px}h1{width:82vw;height:82vw;max-height:380px;max-width:380px}.orbit{font-size:65px;bottom:21%;right:6%}.wedding,.studio{width:100%;margin:0}.booking-details{flex-direction:column;align-items:start}.booking-details h2{font-size:24px}.booking-details a span{font-size:11px}}
.wordmark img{transform:scale(2.5)}.hero-logo{transform:scale(1.8)}
@media(max-width:760px){.hero-logo{transform:scale(1.65)}}

/* Photo-led banner with the supplied logo */
header{color:var(--paper)}.wordmark{filter:invert(1)}.hero{background:#292226;color:var(--paper)}.hero-photo{object-position:58% 50%;filter:brightness(.65)}.hero:after{display:block;background:linear-gradient(180deg,#0005,transparent 45%,#0008)}h1{top:25%;left:3%;transform:none;width:auto;height:auto;max-width:none;max-height:none;font-size:clamp(150px,25.8vw,440px)}.hero-bottom a{border-color:#fffa}.orbit{color:var(--orange)}
@media(max-width:760px){h1{top:27%;font-size:26vw}.hero-photo{object-position:62% 50%}}

/* Curated films retain their original orientation. */
.work-grid{grid-template-columns:1fr 1.18fr;gap:55px 30px}.live .film{aspect-ratio:4/5}.live .film img{object-position:50% 45%}.dancefloor{padding-top:110px}.dancefloor .film,.aerial .film{aspect-ratio:16/9}.aerial{padding-top:0}.studio{width:80%;margin:0 0 0 auto}.studio .image-link{aspect-ratio:4/5}
@media(max-width:760px){.work-grid{grid-template-columns:1fr;gap:35px}.dancefloor,.aerial{padding-top:0}.studio{width:100%;margin:0}.caption{align-items:start}.caption span{text-align:right;max-width:45%;line-height:1.5}}

/* Performance-led arrangement */
.work-grid{grid-template-columns:1.1fr 1fr;gap:40px 30px}.live{grid-column:1;grid-row:1}.live .film{aspect-ratio:16/9}.vocals{grid-column:2;grid-row:1 / span 2;padding-top:85px}.vocals .film{aspect-ratio:4/5}.vocals .film img{object-position:50% 47%}.dancefloor{grid-column:1;grid-row:2;padding:0}.aerial{grid-column:1;grid-row:3;padding-top:50px}.studio{grid-column:2;grid-row:3;width:80%;margin-left:auto}
@media(max-width:760px){.work-grid{grid-template-columns:1fr;gap:35px}.live,.vocals,.dancefloor,.aerial,.studio{grid-column:auto;grid-row:auto;padding-top:0}.studio{width:100%;margin:0}}

/* Keep navigation available throughout the page, with contrast over every section. */
html{scroll-padding-top:88px}
header{position:fixed;z-index:10;transition:background-color .2s,color .2s,box-shadow .2s}
header nav a{display:inline-flex;align-items:center;min-height:44px;min-width:44px}
header.is-scrolled{padding-top:10px;padding-bottom:10px;background:var(--paper);color:var(--ink);box-shadow:0 1px 0 #18181820}
header.is-scrolled .wordmark{width:48px;height:48px;filter:none}
.skip{position:fixed;z-index:20}

/* Distinct DJ, event and production imagery within the approved arrangement. */
.dj-performance .film img{object-position:18% 50%}
.studio .image-link:after{content:'';position:absolute;inset:55% 0 0;background:linear-gradient(transparent,#0008);pointer-events:none}
.studio-title,.studio .round-arrow{z-index:1}
#film-credit{font-size:12px;line-height:1.5;color:#ccc;margin:14px 0 0}
#film-credit a{text-decoration:underline;text-underline-offset:3px}

/* Keep calling and completing a booking equally accessible in the fixed header. */
header{gap:20px}
.wordmark{flex-shrink:0}
header nav{align-items:center}
.nav-sections{display:flex;gap:28px}
.nav-actions{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}
.nav-actions a{justify-content:center;border:1px solid currentColor;padding:0 16px;white-space:nowrap;font-size:13px}
.nav-actions a:hover{background:var(--acid);color:var(--ink);text-decoration:none}
@media(max-width:760px){
  html{scroll-padding-top:128px}
  header{gap:14px}
  header nav{display:flex;flex-direction:column;align-items:stretch;gap:0;flex:1;min-width:0}
  .nav-sections{justify-content:flex-end;gap:22px}
  .nav-actions{gap:7px}
  .nav-actions a{font-size:11px;padding:0 6px}
  .hero-topline{top:145px}
}
@media(max-width:360px){
  header .wordmark{width:42px;height:42px}
  header.is-scrolled .wordmark{width:42px;height:42px}
  header{gap:10px}
  .nav-actions a{font-size:10px;padding:0 4px}
}

/* The star follows a mouse only; touch and reduced-motion retain native behaviour. */
.star-cursor{display:none;position:fixed;top:0;left:0;width:32px;height:32px;z-index:50;pointer-events:none;color:var(--ink);opacity:0;contain:layout style;will-change:transform}
.star-cursor svg{display:block;width:100%;height:100%;transform:translate(-50%,-50%);transition:transform .18s ease-out}
@media(hover:hover) and (pointer:fine) and (min-width:761px) and (prefers-reduced-motion:no-preference){
  .star-cursor{display:block}
  .star-cursor.is-visible{opacity:1}
  .star-cursor.over-photo{color:var(--orange)}
  .star-cursor.over-link svg{transform:translate(-50%,-50%) rotate(12deg) scale(1.3)}
  html.has-star-cursor,html.has-star-cursor a,html.has-star-cursor button{cursor:none}
  .pointer-image{transition:transform .12s ease-out!important}
}

.cookie-settings{font:inherit;color:inherit;background:none;border:0;padding:0;cursor:pointer}.cookie-notice[hidden]{display:none}.cookie-notice{position:fixed;bottom:18px;left:18px;z-index:200;background:#f3f2e9;color:#161616;border:1px solid #161616;padding:20px;max-width:440px;box-shadow:0 8px 28px #0002}.cookie-notice p{font-size:14px;line-height:1.5;margin:0 0 14px}.cookie-notice div{display:flex;gap:10px}.cookie-notice button{font:inherit;font-size:13px;padding:12px;background:transparent;border:1px solid;cursor:pointer;flex:1}@media(max-width:500px){.cookie-notice{left:12px;right:12px;bottom:12px;padding:16px}}

.testimonials{padding:80px 5%;background:#f3f2e9;color:#161616}.testimonials h2{font-size:clamp(36px,5vw,72px);font-weight:500;line-height:1.05;letter-spacing:-.04em;margin:24px 0 48px}.testimonial-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:40px}.testimonial-grid figure{margin:0;border-top:1px solid #161616;padding-top:24px}.testimonial-grid blockquote{margin:0 0 28px;font-size:clamp(20px,2vw,28px);line-height:1.4}.testimonial-grid figcaption{font-size:15px}.testimonial-grid figcaption span{display:block;margin-top:6px;font-size:12px;text-transform:uppercase;letter-spacing:.06em}@media(max-width:760px){.testimonial-grid{grid-template-columns:1fr;gap:32px}.testimonials{padding:56px 5%}}

.service-nav{display:flex;flex-wrap:wrap;justify-content:space-between;gap:18px;padding:28px 5%;border-bottom:1px solid #18181833;font-size:15px}.service-page header{background:var(--paper);color:var(--ink)}.service-main{padding-top:150px}.service-hero{padding:45px 5% 65px;display:grid;grid-template-columns:1.1fr 1fr;gap:6%;align-items:center}.service-hero h1{font-size:clamp(48px,7vw,100px);font-weight:500;letter-spacing:-.055em;line-height:.98;margin:25px 0}.service-hero p{max-width:650px;font-size:20px;line-height:1.6}.service-hero img{aspect-ratio:4/5;max-height:650px}.service-cta{display:inline-block;border:1px solid;padding:18px 25px;margin:16px 12px 0 0;font-size:16px}.service-copy{padding:65px 5%;display:grid;grid-template-columns:1fr 1fr;gap:55px;background:var(--acid)}.service-copy h2{font-size:clamp(30px,4vw,50px);font-weight:500;letter-spacing:-.035em;line-height:1.1}.service-copy p,.service-copy li{font-size:18px;line-height:1.7}.service-copy ul{padding-left:20px}.service-film{padding:65px 5%;max-width:1000px;margin:auto}.service-film .film{width:100%;aspect-ratio:16/9}.service-film h2{font-size:36px;font-weight:500;letter-spacing:-.03em}.service-close{padding:70px 5%;background:var(--ink);color:var(--paper)}.service-close h2{font-size:clamp(38px,6vw,72px);line-height:1.05;margin:0 0 25px}.service-close p{font-size:18px;line-height:1.7;max-width:750px}@media(max-width:760px){.service-main{padding-top:145px}.service-hero,.service-copy{grid-template-columns:1fr}.service-hero{padding-top:25px;gap:30px}.service-hero h1{font-size:58px}.service-hero img{max-height:480px}.service-copy{gap:20px;padding:45px 5%}.service-nav{display:grid;grid-template-columns:1fr 1fr;font-size:13px}.service-film{padding:45px 5%}}

.service-hero h1{position:static;transform:none;width:auto;height:auto;max-width:none;max-height:none;white-space:normal;color:var(--ink);font-family:inherit}.service-page header .wordmark{filter:none}
