.elementor-376 .elementor-element.elementor-element-1f9c567d{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-376 .elementor-element.elementor-element-25bcce11{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-376 .elementor-element.elementor-element-130313bf{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-376 .elementor-element.elementor-element-009013de{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-376 .elementor-element.elementor-element-4e39aa58{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-376 .elementor-element.elementor-element-11d54fc3{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-376 .elementor-element.elementor-element-35e7734c{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-376 .elementor-element.elementor-element-478b6ff9{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-376 .elementor-element.elementor-element-7a851154{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-376 .elementor-element.elementor-element-221fd074{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-376 .elementor-element.elementor-element-b33967b7{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-376 .elementor-element.elementor-element-c2aa0391{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-376 .elementor-element.elementor-element-36958668{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-376 .elementor-element.elementor-element-6cbe56f7{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-376 .elementor-element.elementor-element-7ee4c6b7{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-376 .elementor-element.elementor-element-be12de77{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-376 .elementor-element.elementor-element-b3f08a7c{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-376 .elementor-element.elementor-element-0df28091{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}/* Start custom CSS for container, class: .elementor-element-1f9c567d *//* ---- disco scope tokens (page-local; NEVER at :root -- the turquoise accent
   would leak into the Option C nav, which reads --accent for dot + pills) ---- */
.disco-scope{--amber:#d6a94a;--buttercream:#EAD9A4;--buttercream-ink:#3D2F12;--buttercream-muted:#6e5a2a;--sage-muted:#56603e;--mauve-ink:#2e0e0c;--accent:#00D4AA;--accent-ink:#008f72}
.disco-scope.s-cream,.disco-scope.s-peach,.disco-scope.s-mauve,.disco-scope.s-sage{--accent:#d6a94a;--accent-ink:#8a6916}
.disco-scope button{font:inherit;color:inherit;background:none;border:none;cursor:pointer}
.disco-scope img{max-width:100%;display:block}
.disco-scope .reveal[data-delay="4"]{transition-delay:.32s}
.disco-scope .reveal[data-delay="5"]{transition-delay:.4s}
.disco-scope .sec-number--bone{color:var(--muted-bone)}
.disco-scope .container{width:var(--col);max-width:none;margin-inline:auto}
.disco-scope .eyebrow{font-family:var(--mono);font-size:11px;font-weight:500;letter-spacing:0.16em;text-transform:uppercase;color:var(--muted-ink)}
.disco-scope .eyebrow--bone{color:var(--muted-bone)}
.disco-scope .eyebrow--accent{color:var(--accent-ink)}
.disco-scope .eyebrow--accent-bone{color:var(--accent)}
.disco-scope .rule{height:1px;width:100%;background:var(--rule-ink);border:0;margin:0}
.disco-scope .rule--bone{background:var(--rule-bone)}
.disco-scope .mono{font-family:var(--mono)}

.disco-scope{padding-block:clamp(72px, 10vw, 140px);position:relative}
.disco-scope.s-dark{background:var(--dark);color:var(--bone)}
.disco-scope.s-cream{background:var(--buttercream);color:var(--buttercream-ink)}
.disco-scope.s-peach{background:var(--peach);color:var(--peach-ink)}
.disco-scope.s-mauve{background:var(--mauve);color:var(--bone)}
.disco-scope.s-sage{background:var(--sage);color:var(--sage-ink)}
/* Mauve inherits dark-section text register — explicit overrides for chrome */
.disco-scope.s-mauve .sec-head h2{color:var(--bone)}
.disco-scope.s-mauve .sec-head .intro{color:var(--bone-soft)}
.disco-scope.s-mauve .sec-number{color:var(--muted-bone)}
.disco-scope.s-mauve .credit-mark{color:var(--bone-soft)}
.disco-scope.s-sage .sec-head .intro{color:var(--sage-muted)}

/* Sub-nav — quiet, fixed under top nav, revealed after hero leaves viewport.
   Reusable component: any long page (Featured Work entries) can include it
   with data-driven anchor items. */
.disco-scope .subnav{
  position:fixed;top:0;left:0;right:0;z-index:49;
  display:flex;justify-content:center;gap:22px;
  padding:10px var(--edge);
  font-family:var(--mono);font-size:11px;letter-spacing:0.18em;text-transform:uppercase;
  color:var(--ink);
  background:rgba(244,240,230,0.95);
  backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);
  border-bottom:1px solid rgba(42,39,35,0.12);
  opacity:0;transform:translateY(-6px);pointer-events:none;
  transition:opacity .35s ease, transform .35s ease, top .35s ease;
}
.disco-scope .subnav.is-visible{opacity:1;transform:translateY(0);pointer-events:auto;top:40px}
.disco-scope .subnav a{opacity:0.6;transition:opacity .2s, color .2s;color:inherit;text-decoration:none}
.disco-scope .subnav a:hover{opacity:1}
.disco-scope .subnav a.is-current-anchor{opacity:1;color:#8a6916}
.disco-scope .subnav .sep{opacity:0.25}
@media (max-width:720px){
  .disco-scope .subnav{
    justify-content:flex-start;gap:18px;
    overflow-x:auto;white-space:nowrap;
    -webkit-overflow-scrolling:touch;
  }
  .disco-scope .subnav::-webkit-scrollbar{display:none}
}

/* =========================================================================
   HERO
   ========================================================================= */
.disco-scope .hero{padding-top:140px;padding-bottom:100px;min-height:100vh;display:flex;flex-direction:column;justify-content:space-between}
.disco-scope .hero-grid{
  display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:clamp(40px, 6vw, 96px);
  align-items:end;
}
@media (max-width:900px){
  .disco-scope .hero-grid{grid-template-columns:1fr;gap:56px;align-items:start}
}

.disco-scope .hero-meta-row{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;margin-bottom:clamp(40px, 5vw, 72px);flex-wrap:wrap}
.disco-scope .hero-meta-row .eyebrow{font-size:10.5px}
.disco-scope .hero-index{font-family:var(--mono);font-size:10.5px;color:var(--muted-bone);letter-spacing:0.14em}
.disco-scope .hero-index span{color:var(--bone)}

.disco-scope .hero h1{
  font-family:var(--sans-display);
  font-weight:800;
  font-size:clamp(56px, 9.2vw, 148px);
  line-height:0.96;
  letter-spacing:-0.035em;
  color:var(--bone);
  margin-bottom:28px;
}
.disco-scope .hero h1 em{font-style:italic;font-weight:700;color:var(--amber)}
.disco-scope .hero .tagline{
  font-family:var(--sans-display);
  font-weight:400;
  font-size:clamp(19px, 1.55vw, 26px);
  line-height:1.45;
  color:var(--bone-soft);
  max-width:520px;
  margin-bottom:48px;
}

.disco-scope .hero-stack{display:flex;align-items:center;gap:18px;flex-wrap:wrap}
.disco-scope .hero-cta{
  display:inline-flex;align-items:center;gap:14px;
  padding:18px 28px;
  border:1px solid var(--bone);
  color:var(--bone);
  font-family:var(--sans-display);font-weight:500;font-size:13px;letter-spacing:0.14em;text-transform:uppercase;
  transition:background .28s ease, color .28s ease, border-color .28s ease;
}
.disco-scope .hero-cta:hover{background:var(--bone);color:var(--dark);border-color:var(--bone)}
.disco-scope .hero-cta .arrow{display:inline-block;transition:transform .28s ease}
.disco-scope .hero-cta:hover .arrow{transform:translateX(4px)}

.disco-scope .hero-secondary{
  font-family:var(--mono);font-size:11px;letter-spacing:0.14em;text-transform:uppercase;
  color:var(--muted-bone);
  border-bottom:1px solid var(--rule-bone);
  padding-block:4px;
  transition:color .2s ease, border-color .2s ease;
}
.disco-scope .hero-secondary:hover{color:var(--bone);border-color:var(--bone)}

/* Hero portrait column */
.disco-scope .hero-portrait{
  position:relative;
  aspect-ratio:3/4;
  max-width:520px;
  margin-left:auto;
  overflow:hidden;
  background:var(--dark-2);
  isolation:isolate;
}
.disco-scope .hero-portrait img{width:100%;height:100%;object-fit:cover;object-position:center 30%;filter:grayscale(0.2) contrast(1.05)}
.disco-scope .hero-portrait::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 55%,rgba(13,13,16,0.5) 100%);z-index:2;pointer-events:none}
.disco-scope .hero-portrait-frame{
  position:absolute;inset:14px;border:1px solid rgba(232,228,217,0.25);z-index:3;pointer-events:none;
}

/* Hero reel play button */
.disco-scope .reel-button{
  position:absolute;bottom:32px;left:32px;right:32px;z-index:4;
  display:flex;align-items:center;gap:18px;
  padding:18px 22px;
  background:rgba(13,13,16,0.75);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);
  border:1px solid rgba(232,228,217,0.3);
  color:var(--bone);
  text-align:left;
  transition:background .28s, border-color .28s;
}
.disco-scope .reel-button:hover{background:rgba(13,13,16,0.9);border-color:var(--bone)}
.disco-scope .reel-button .play-dot{
  width:40px;height:40px;border-radius:50%;border:1px solid var(--bone);
  display:grid;place-items:center;
  transition:background .28s, border-color .28s;
  flex-shrink:0;
}
.disco-scope .reel-button:hover .play-dot{background:var(--accent);border-color:var(--accent)}
.disco-scope .reel-button .play-dot svg{width:12px;height:12px;transition:transform .28s}
.disco-scope .reel-button:hover .play-dot svg{transform:translateX(1px)}
.disco-scope .reel-button .labels{display:flex;flex-direction:column;gap:3px;min-width:0;flex:1}
.disco-scope .reel-button .labels .top{font-family:var(--mono);font-size:10px;letter-spacing:0.18em;text-transform:uppercase;color:var(--muted-bone)}
.disco-scope .reel-button .labels .bottom{font-family:var(--sans-display);font-size:15px;font-weight:400;color:var(--bone);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

/* Hero corner label */
.disco-scope .hero-corner{
  position:absolute;top:14px;left:14px;z-index:4;
  font-family:var(--mono);font-size:9px;letter-spacing:0.2em;text-transform:uppercase;
  color:var(--bone);
  padding:6px 10px;
  background:rgba(13,13,16,0.7);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);
  border:1px solid rgba(232,228,217,0.2);
}

/* Hero credit strip — wire-service dateline marquee */
/* impeccable-disable marquee -- approved hero credit strip: 90s drift, pauses on hover, disabled under prefers-reduced-motion */
.disco-scope .credit-strip{
  margin-top:auto;
  display:grid;grid-template-columns:auto minmax(0,1fr);gap:clamp(16px, 3vw, 32px);align-items:center;
  padding-top:36px;border-top:1px solid var(--rule-bone);
}
.disco-scope .credit-strip .label{font-family:var(--mono);font-size:10px;letter-spacing:0.2em;text-transform:uppercase;color:var(--muted-bone);white-space:nowrap}
.disco-scope .marks-viewport{
  overflow:hidden;min-width:0;
  -webkit-mask-image:linear-gradient(to right, transparent 0, #000 7%, #000 93%, transparent 100%); /* impeccable-disable-line design-system-color -- mask alpha stop, not a rendered palette color */
          mask-image:linear-gradient(to right, transparent 0, #000 7%, #000 93%, transparent 100%); /* impeccable-disable-line design-system-color -- mask alpha stop, not a rendered palette color */
}
.disco-scope .marks-track{
  display:inline-flex;align-items:center;gap:clamp(18px, 3vw, 40px);
  width:max-content;
  animation:cs-drift 90s linear infinite;
  will-change:transform;
}
.disco-scope .marks-viewport:hover .marks-track{animation-play-state:paused}
@media (prefers-reduced-motion: reduce){
  .disco-scope .marks-track{animation:none;transform:translateX(0)}
}
@keyframes cs-drift{
  from{transform:translateX(0)}
  to{transform:translateX(-50%)}
}
.disco-scope .credit-mark{
  font-family:var(--sans-display);
  font-weight:500;font-size:clamp(13px, 1.1vw, 16px);letter-spacing:0.01em;
  color:var(--bone-soft);
  opacity:0.65;
  transition:opacity .3s, color .3s;
  white-space:nowrap;
}
.disco-scope .credit-mark:hover{opacity:1;color:var(--bone)}
.disco-scope .credit-mark em{font-style:italic}
.disco-scope .credit-dot{width:3px;height:3px;background:var(--muted-bone);border-radius:50%;flex-shrink:0;opacity:0.6}

/* =========================================================================
   SECTION HEAD (shared)
   ========================================================================= */
.disco-scope .sec-head{
  display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:60px;align-items:end;
  margin-bottom:clamp(48px, 5vw, 80px);
}
@media (max-width:800px){.disco-scope .sec-head{grid-template-columns:1fr;gap:24px}}
.disco-scope .sec-head h2{
  font-family:var(--sans-display);
  font-weight:800;letter-spacing:-0.03em;line-height:0.95;
  font-size:clamp(52px, 6.8vw, 104px);
}
.disco-scope .sec-head h2 em{font-style:italic;font-weight:700;color:var(--amber)}
.disco-scope .dark .sec-head h2{color:var(--bone)}
.disco-scope .sec-head .intro{
  font-family:var(--sans-display);
  font-weight:400;
  font-size:clamp(20px, 1.55vw, 26px);line-height:1.45;color:var(--buttercream-muted);
  max-width:480px;align-self:end;margin-left:auto;
}
.disco-scope .dark .sec-head .intro{color:var(--bone-soft)}

.disco-scope .sec-number{
  font-family:var(--mono);font-size:11px;letter-spacing:0.22em;text-transform:uppercase;
  color:var(--muted-ink);
  margin-bottom:18px;display:flex;align-items:center;gap:14px;
}
.disco-scope .dark .sec-number{color:var(--muted-bone)}
.disco-scope .sec-number::before{content:"";width:28px;height:1px;background:currentColor;display:inline-block;opacity:0.5}

/* =========================================================================
   TRACKLIST
   ========================================================================= */
.disco-scope .filters{
  display:flex;flex-direction:column;gap:20px;
  padding:28px 0;border-top:1px solid var(--rule-ink);border-bottom:1px solid var(--rule-ink);
  margin-bottom:12px;
}
.disco-scope .filter-group{display:flex;align-items:center;gap:18px;flex-wrap:wrap}
.disco-scope .filter-group .label{font-family:var(--mono);font-size:10.5px;letter-spacing:0.2em;text-transform:uppercase;color:var(--muted-ink);min-width:92px}
.disco-scope .filter-chips{display:flex;gap:6px;flex-wrap:wrap}
.disco-scope .chip{
  font-family:var(--mono);font-size:10.5px;letter-spacing:0.12em;text-transform:uppercase;
  padding:7px 14px;color:var(--ink-soft);
  border:1px solid var(--rule-ink);
  background:transparent;
  transition:all .2s ease;
  cursor:pointer;
}
.disco-scope .chip:hover{border-color:var(--ink)}
.disco-scope .chip.active{background:var(--ink);color:var(--cream);border-color:var(--ink)}
.disco-scope .chip.disabled{opacity:0.35;cursor:not-allowed;pointer-events:none}
.disco-scope .chip .count{margin-left:8px;opacity:0.55;font-size:9.5px}

.disco-scope .tracklist{width:100%;list-style:none}
.disco-scope .tr{
  display:grid;
  grid-template-columns:
    64px            /* cover */
    minmax(0,2fr)   /* title + cat above */
    minmax(0,1fr)   /* role */
    72px            /* year */
    110px           /* genre */
    54px;           /* play */
  gap:20px;align-items:center;
  padding:14px 0;
  border-bottom:1px solid var(--rule-ink);
  position:relative;
  cursor:pointer;
  /* impeccable-disable-next-line layout-transition -- pre-existing row-nudge hover affordance, approved page interaction */
  transition:padding-left .3s ease;
}
.disco-scope .tr:hover{padding-left:10px}
.disco-scope .tr.hidden{display:none}
.disco-scope .tr.playing{padding-left:18px}
.disco-scope .tr.playing::before{
  content:"";position:absolute;left:0;top:14px;bottom:14px;width:2px;background:var(--accent);
}
.disco-scope .tr .cover{
  width:56px;height:56px;object-fit:cover;display:block;
  background:#2e0e0c;
  box-shadow:0 1px 0 rgba(0,0,0,0.08); /* impeccable-disable-line design-system-color -- pre-existing 1px cover-art seat line, neutral black scrim */
  transition:transform .25s ease;
}
.disco-scope .tr:hover .cover{transform:scale(1.05)}
.disco-scope .tr .title{
  font-family:var(--sans-display);
  font-size:clamp(17px, 1.4vw, 20px);font-weight:700;color:var(--buttercream-ink);line-height:1.2;
}
.disco-scope .tr .title .piece{font-style:italic;font-weight:400;color:var(--buttercream-muted);font-size:clamp(14px, 1.1vw, 16px);display:block;margin-top:3px}
.disco-scope .tr .meta{display:contents}
.disco-scope .tr .role{font-family:var(--sans-display);font-size:12.5px;color:var(--muted-ink);line-height:1.3}
.disco-scope .tr .year{font-family:var(--mono);font-size:11.5px;color:var(--muted-ink)}
.disco-scope .tr .genre{
  font-family:var(--mono);font-size:10px;letter-spacing:0.14em;text-transform:uppercase;
  padding:5px 10px;border:1px solid var(--rule-ink);color:var(--muted-ink);
  display:inline-block;justify-self:start;
  transition:border-color .2s ease, color .2s ease;
}
.disco-scope .tr:hover .genre{border-color:var(--ink-soft);color:var(--ink-soft)}
.disco-scope .tr .cover-wrap{position:relative;display:block;width:56px;height:56px;overflow:hidden}
.disco-scope .tr .play{
  position:absolute;inset:0;display:grid;place-items:center;
  background:rgba(22,22,26,0.42);opacity:0;transition:opacity .2s ease; /* impeccable-disable-line design-system-color -- neutral ink scrim under the play glyph */
}
.disco-scope .tr:hover .play,.disco-scope .tr.playing .play,.disco-scope .tr:focus-within .play{opacity:1}
.disco-scope .tr .dur{font-family:var(--mono);font-size:11.5px;color:var(--muted-ink);justify-self:end;font-variant-numeric:tabular-nums}
@media (hover:none){.disco-scope .tr .play{opacity:1}}
.disco-scope .tr.playing .play{background:var(--accent);border-color:var(--accent)}
.disco-scope .tr .play svg{width:16px;height:16px;fill:var(--cream)}
.disco-scope .tr.playing .play svg{fill:var(--dark)}

.disco-scope .tr.playing .nowplaying{display:inline-flex}
.disco-scope .nowplaying{display:none;align-items:end;gap:2px;height:12px;margin-left:8px;vertical-align:middle}
.disco-scope .nowplaying i{width:2px;background:var(--accent);animation:bars 1.1s ease-in-out infinite;display:block}
.disco-scope .nowplaying i:nth-child(1){animation-delay:0s;height:30%}
.disco-scope .nowplaying i:nth-child(2){animation-delay:0.15s;height:70%}
.disco-scope .nowplaying i:nth-child(3){animation-delay:0.3s;height:45%}
.disco-scope .nowplaying i:nth-child(4){animation-delay:0.45s;height:85%}
@keyframes bars{0%,100%{transform:scaleY(0.4)}50%{transform:scaleY(1)}}

@media (max-width:900px){
  .disco-scope .tr{
    grid-template-columns: 56px minmax(0,1fr) 44px;
    grid-template-areas: "cover title dur" "cover meta dur";
    gap:6px 14px;
    padding:14px 0;
    align-items:center;
  }
  .disco-scope .tr .cover-wrap{grid-area:cover}
  .disco-scope .tr .title{grid-area:title;font-size:17px;font-weight:700}
  .disco-scope .tr .meta{display:block;grid-area:meta;font-size:11px;line-height:1.5;color:var(--muted-ink)}
  .disco-scope .tr .role,.disco-scope .tr .year,.disco-scope .tr .genre{font-size:11px;display:inline}
  .disco-scope .tr .role::after{content:" · "}
  .disco-scope .tr .year::after{content:" · "}
  .disco-scope .tr .genre{border:0;padding:0;font-size:10px}
  .disco-scope .tr .dur{grid-area:dur}
}

.disco-scope .tracklist-footer{
  display:flex;justify-content:space-between;align-items:center;gap:24px;flex-wrap:wrap;
  padding-top:32px;margin-top:4px;
}
.disco-scope .tl-count{font-family:var(--mono);font-size:11px;letter-spacing:0.16em;text-transform:uppercase;color:var(--muted-ink)}
.disco-scope .tl-count span{color:var(--ink)}

/* =========================================================================
   CASE STUDIES (dark)
   ========================================================================= */
.disco-scope .cases{display:flex;flex-direction:column;gap:0}
.disco-scope .case{
  display:grid;
  grid-template-columns:minmax(0,0.9fr) minmax(0,1.1fr);
  gap:clamp(40px, 5vw, 80px);align-items:start;
  padding:clamp(56px, 6vw, 96px) 0;
  border-top:1px solid var(--rule-bone);
}
.disco-scope .case:last-child{border-bottom:1px solid var(--rule-bone)}
.disco-scope .case.reverse{direction:rtl}
.disco-scope .case.reverse>*{direction:ltr}
@media (max-width:900px){.disco-scope .case{grid-template-columns:1fr;gap:28px;direction:ltr}.disco-scope .case.reverse{direction:ltr}}

.disco-scope .case-left .tag{font-family:var(--mono);font-size:10.5px;letter-spacing:0.2em;text-transform:uppercase;color:var(--accent);margin-bottom:22px;display:flex;align-items:center;gap:12px}
.disco-scope .case-left .tag::before{content:"";width:22px;height:1px;background:var(--accent);display:inline-block}
.disco-scope .case-left h3{
  font-family:var(--sans-display);
  font-weight:800;font-size:clamp(36px, 3.8vw, 56px);line-height:1.0;letter-spacing:-0.025em;
  color:var(--bone);margin-bottom:26px;
}
.disco-scope .case-left h3 em{font-style:italic;font-weight:700;color:var(--amber)}
.disco-scope .case-left .quote{
  font-family:var(--sans-display);
  font-style:italic;font-weight:400;font-size:clamp(17px, 1.4vw, 21px);line-height:1.45;color:var(--bone-soft);
  padding-left:18px;border-left:1px solid var(--accent);
}
.disco-scope .case-right .copy{
  font-family:var(--sans-display);font-weight:400;font-size:clamp(17px, 1.35vw, 20px);line-height:1.55;color:var(--bone-soft);margin-bottom:30px;max-width:520px;
}
.disco-scope .case-right .copy p+p{margin-top:14px}
.disco-scope .case-meta{
  display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 40px;
  padding-top:24px;border-top:1px solid var(--rule-bone);
}
.disco-scope .case-meta .cell .k{font-family:var(--mono);font-size:9.5px;letter-spacing:0.2em;text-transform:uppercase;color:var(--muted-bone);margin-bottom:6px}
.disco-scope .case-meta .cell .v{font-family:var(--sans-display);font-size:15px;color:var(--bone);line-height:1.35}

.disco-scope .case-player{
  display:flex;align-items:center;gap:18px;
  padding:18px 22px;margin-top:28px;
  background:rgba(232,228,217,0.05);border:1px solid var(--rule-bone);
  transition:background .25s, border-color .25s;
  cursor:pointer;
}
.disco-scope .case-player:hover{background:rgba(232,228,217,0.09);border-color:var(--bone-soft)}
.disco-scope .case-player .pdot{
  width:44px;height:44px;border-radius:50%;border:1px solid var(--bone-soft);
  display:grid;place-items:center;transition:background .25s, border-color .25s;flex-shrink:0;
}
.disco-scope .case-player:hover .pdot{background:var(--accent);border-color:var(--accent)}
.disco-scope .case-player .pdot svg{width:11px;height:11px;fill:var(--bone)}
.disco-scope .case-player:hover .pdot svg{fill:var(--dark)}
.disco-scope .case-player.playing .pdot{background:var(--accent);border-color:var(--accent)}
.disco-scope .case-player.playing .pdot svg{fill:var(--dark)}
.disco-scope .case-player .meta{flex:1;min-width:0}
.disco-scope .case-player .meta .top{font-family:var(--mono);font-size:10px;letter-spacing:0.18em;text-transform:uppercase;color:var(--muted-bone);margin-bottom:4px}
.disco-scope .case-player .meta .bot{font-family:var(--sans-display);font-size:16px;color:var(--bone);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

/* =========================================================================
   CAROUSELS (per-role-band Spotify-style cards on mauve)
   ========================================================================= */
.disco-scope .carousel{margin-bottom:clamp(56px, 7vw, 96px)}
.disco-scope .carousel:last-child{margin-bottom:0}
.disco-scope .carousel__head{display:flex;align-items:baseline;justify-content:space-between;gap:24px;margin-bottom:32px;flex-wrap:wrap}
.disco-scope .carousel__head-left{display:flex;align-items:baseline;gap:24px}
.disco-scope .carousel__num{font-family:var(--mono);font-size:11px;letter-spacing:0.22em;text-transform:uppercase;color:var(--bone);opacity:0.55}
.disco-scope .carousel__title{
  font-family:var(--sans-display);font-weight:800;letter-spacing:-0.02em;line-height:1.0;
  font-size:clamp(28px, 3vw, 44px);color:var(--bone);
}
.disco-scope .carousel__title em{font-style:italic;color:var(--amber);font-weight:700}
.disco-scope .carousel__sub{font-family:var(--mono);font-size:11px;letter-spacing:0.18em;text-transform:uppercase;color:var(--bone-soft);opacity:0.7}

.disco-scope .carousel__track{
  display:flex;gap:24px;overflow-x:auto;
  scroll-snap-type:x mandatory;
  padding-bottom:20px;margin-bottom:-20px;  /* hide scroll-shadow space */
  scrollbar-width:thin;scrollbar-color:rgba(232,228,217,0.18) transparent;
}
.disco-scope .carousel__track::-webkit-scrollbar{height:6px}
.disco-scope .carousel__track::-webkit-scrollbar-track{background:transparent}
.disco-scope .carousel__track::-webkit-scrollbar-thumb{background:rgba(232,228,217,0.18);border-radius:3px}
.disco-scope .carousel__track::-webkit-scrollbar-thumb:hover{background:rgba(232,228,217,0.32)}

.disco-scope .card{
  flex:0 0 280px;scroll-snap-align:start;
  cursor:pointer;
  display:flex;flex-direction:column;gap:14px;
  transition:transform .25s ease;
}
.disco-scope .card:hover{transform:translateY(-3px)}
.disco-scope .card--cta{
  background:rgba(232,228,217,0.05);border:1px solid var(--rule-bone);
  padding:32px 28px;justify-content:space-between;min-height:380px;
  transition:background .25s ease, border-color .25s ease, transform .25s ease;
}
.disco-scope .card--cta:hover{background:rgba(232,228,217,0.09);border-color:var(--bone-soft)}
.disco-scope .card--cta .card__title{margin-top:0;font-size:24px}

.disco-scope .card__cover{
  width:100%;aspect-ratio:1/1;object-fit:cover;
  background:#28161c;
  box-shadow:0 1px 0 rgba(0,0,0,0.18); /* impeccable-disable-line design-system-color -- pre-existing 1px cover-art seat line, neutral black scrim */
  transition:filter .25s ease;
}
.disco-scope .card:hover .card__cover{filter:contrast(1.05) saturate(1.05)}
.disco-scope .card.has-deepdive .card__cover{position:relative}
.disco-scope .card__badge{
  position:absolute;top:10px;left:10px;
  font-family:var(--mono);font-size:9px;font-weight:500;letter-spacing:0.2em;text-transform:uppercase;
  color:var(--bone);padding:5px 8px;
  background:rgba(13,13,16,0.7);backdrop-filter:blur(6px);
  border:1px solid rgba(232,228,217,0.15);
}
.disco-scope .card__cover-wrap{position:relative}

.disco-scope .card__title{
  font-family:var(--sans-display);
  font-weight:700;font-size:20px;line-height:1.2;letter-spacing:-0.015em;
  color:var(--bone);
}
.disco-scope .card__title em{font-style:italic;color:var(--amber);font-weight:600}
.disco-scope .card__meta{
  font-family:var(--mono);font-size:10.5px;letter-spacing:0.14em;text-transform:uppercase;
  color:var(--bone-soft);line-height:1.4;
}
.disco-scope .card__action{
  margin-top:auto;padding-top:24px;
  font-family:var(--mono);font-size:11px;letter-spacing:0.18em;text-transform:uppercase;
  color:var(--accent);display:inline-flex;align-items:center;gap:8px;
}
.disco-scope .card__action::after{content:"→";transition:transform .25s ease}
.disco-scope .card:hover .card__action::after{transform:translateX(4px)}

/* Deep-dive accordion (inline expanded case study under a card) */
.disco-scope .deepdives{position:relative}
.disco-scope .deepdive{
  display:none;
  margin-top:48px;padding:48px clamp(28px, 4vw, 64px);
  background:rgba(0,0,0,0.18); /* impeccable-disable-line design-system-color -- pre-existing neutral darkening scrim on mauve, approved deep-dive treatment */
  border:1px solid var(--rule-bone);
  animation:dd-fade .4s ease;
}
.disco-scope .deepdive.open{display:block}
@keyframes dd-fade{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.disco-scope .deepdive__head{display:flex;align-items:baseline;justify-content:space-between;gap:24px;margin-bottom:36px;flex-wrap:wrap}
.disco-scope .deepdive__close{
  font-family:var(--mono);font-size:10px;letter-spacing:0.22em;text-transform:uppercase;
  color:var(--bone-soft);background:none;border:0;cursor:pointer;
  transition:color .2s ease;display:inline-flex;align-items:center;gap:8px;
}
.disco-scope .deepdive__close:hover{color:var(--accent)}
.disco-scope .deepdive__close::before{content:"×";font-family:var(--sans-display);font-size:18px;line-height:1}

/* =========================================================================
   CREDITS
   ========================================================================= */
.disco-scope .credit-tabs{display:flex;gap:36px;border-bottom:1px solid var(--rule-ink);margin-bottom:44px;flex-wrap:wrap}
.disco-scope .credit-tab{
  font-family:var(--mono);font-size:11px;letter-spacing:0.2em;text-transform:uppercase;
  padding:16px 0;color:var(--muted-ink);position:relative;background:none;border:0;cursor:pointer;
  transition:color .2s ease;
}
.disco-scope .credit-tab:hover{color:var(--ink)}
.disco-scope .credit-tab.active{color:var(--ink)}
.disco-scope .credit-tab.active::after{
  content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;background:var(--accent);
}
.disco-scope .credit-tab .num{font-size:9.5px;color:var(--muted-ink);margin-left:8px;letter-spacing:0.1em}

.disco-scope .credit-panel{display:none}
.disco-scope .credit-panel.active{display:block}

.disco-scope .credit-table{width:100%;border-collapse:collapse}
.disco-scope .credit-table thead th{
  font-family:var(--mono);font-size:10px;letter-spacing:0.2em;text-transform:uppercase;
  color:var(--muted-ink);font-weight:500;text-align:left;
  padding:14px 16px 14px 0;border-bottom:1px solid var(--rule-ink);
}
.disco-scope .credit-table thead th.num{text-align:right;width:80px}
.disco-scope .credit-table tbody tr{border-bottom:1px solid var(--rule-ink);transition:background .18s ease}
.disco-scope .credit-table tbody tr:hover{background:var(--cream-2)}
.disco-scope .credit-table td{padding:18px 16px 18px 0;font-size:14px;color:var(--ink);vertical-align:top}
.disco-scope .credit-table td.title{font-family:var(--sans-display);font-size:17px;font-weight:500;line-height:1.3}
.disco-scope .credit-table td.title em{font-style:italic;display:block;font-size:13px;color:var(--muted-ink);margin-top:2px}
.disco-scope .credit-table td.role{font-family:var(--sans-display);font-size:13px;color:var(--ink-soft)}
.disco-scope .credit-table td.credit{font-family:var(--sans-display);font-size:13px;color:var(--muted-ink);font-style:italic}
.disco-scope .credit-table td.year{font-family:var(--mono);font-size:12px;color:var(--muted-ink);text-align:right}
.disco-scope .credit-table tr.prestige td.title::before{
  content:"◆";color:var(--accent);font-size:9px;margin-right:8px;vertical-align:middle;
}

@media (max-width:800px){
  .disco-scope .credit-table thead{display:none}
  .disco-scope .credit-table tbody tr{display:block;padding:16px 0}
  .disco-scope .credit-table td{display:block;padding:2px 0}
  .disco-scope .credit-table td.title{font-size:17px;margin-bottom:6px}
  .disco-scope .credit-table td.year{text-align:left;display:inline;margin-right:12px}
  .disco-scope .credit-table td.role{display:inline}
  .disco-scope .credit-table td.year::after{content:" · "}
  .disco-scope .credit-table td.credit{font-size:12px;margin-top:4px}
}

/* =========================================================================
   CONTACT (dark)
   ========================================================================= */
.disco-scope .contact{padding-block:clamp(100px, 12vw, 180px)}
.disco-scope .contact-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:80px;align-items:end}
@media (max-width:900px){.disco-scope .contact-grid{grid-template-columns:1fr;gap:56px}}
.disco-scope .contact h2{
  font-family:var(--sans-display);
  font-weight:800;font-size:clamp(60px, 9vw, 140px);line-height:0.95;letter-spacing:-0.035em;color:var(--bone);
}
.disco-scope .contact h2 em{font-style:italic;font-weight:700;color:var(--amber)}
.disco-scope .contact h2 .period{color:var(--accent)}
.disco-scope .contact-links{display:flex;flex-direction:column;gap:18px}
.disco-scope .contact-link{
  display:flex;justify-content:space-between;align-items:center;gap:20px;
  padding:22px 0;border-top:1px solid var(--rule-bone);
  font-family:var(--sans-display);
  font-size:22px;color:var(--bone);
  /* impeccable-disable-next-line layout-transition -- pre-existing link-nudge hover affordance, approved page interaction */
  transition:padding .25s ease;
}
.disco-scope .contact-link:hover{padding-left:10px}
.disco-scope .contact-link:last-child{border-bottom:1px solid var(--rule-bone)}
.disco-scope .contact-link .k{font-family:var(--mono);font-size:10px;letter-spacing:0.22em;text-transform:uppercase;color:var(--muted-bone)}
.disco-scope .contact-link .v{text-align:right}
.disco-scope .contact-link .v em{font-style:italic;color:var(--amber)}

.disco-scope .colophon{
  display:flex;justify-content:space-between;gap:24px;flex-wrap:wrap;
  padding-top:64px;margin-top:80px;border-top:1px solid var(--rule-bone);
  font-family:var(--mono);font-size:10.5px;letter-spacing:0.16em;text-transform:uppercase;color:var(--muted-bone);
}

/* =========================================================================
   FIXED PLAYBAR
   ========================================================================= */
.disco-scope .playbar{
  position:fixed;left:0;right:0;bottom:0;z-index:60;
  background:rgba(13,13,16,0.96);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);
  border-top:1px solid rgba(232,228,217,0.15);
  color:var(--bone);
  transform:translateY(100%);
  transition:transform .4s cubic-bezier(.2,.7,.2,1);
}
.disco-scope .playbar.open{transform:translateY(0)}
.disco-scope .playbar-inner{
  display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:24px;align-items:center;
  padding:14px var(--edge);
}
.disco-scope .playbar .pb-play{
  width:44px;height:44px;border-radius:50%;border:1px solid var(--bone);
  display:grid;place-items:center;transition:background .2s, border-color .2s;
}
.disco-scope .playbar .pb-play:hover{background:var(--accent);border-color:var(--accent)}
.disco-scope .playbar .pb-play svg{width:12px;height:12px;fill:var(--bone)}
.disco-scope .playbar .pb-play:hover svg{fill:var(--dark)}
.disco-scope .playbar .pb-meta{min-width:0;display:flex;align-items:center;gap:20px}
.disco-scope .playbar .pb-info{min-width:0}
.disco-scope .playbar .pb-info .t1{font-family:var(--mono);font-size:10px;letter-spacing:0.18em;text-transform:uppercase;color:var(--muted-bone);margin-bottom:4px}
.disco-scope .playbar .pb-info .t2{font-family:var(--sans-display);font-size:15px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.disco-scope .playbar .pb-progress{flex:1;height:2px;background:var(--rule-bone);position:relative;cursor:pointer;min-width:80px}
.disco-scope .playbar .pb-progress .fill{position:absolute;top:0;left:0;bottom:0;background:var(--accent);width:0%;transition:width .15s linear} /* impeccable-disable-line layout-transition -- audio progress fill, smooths timeupdate steps */
.disco-scope .playbar .pb-time{font-family:var(--mono);font-size:11px;color:var(--muted-bone);letter-spacing:0.08em;white-space:nowrap}
.disco-scope .playbar .pb-close{color:var(--muted-bone);font-family:var(--mono);font-size:10px;letter-spacing:0.18em;text-transform:uppercase;padding:8px;transition:color .2s}
.disco-scope .playbar .pb-close:hover{color:var(--bone)}

@media (max-width:720px){
  .disco-scope .playbar-inner{grid-template-columns:auto 1fr auto;gap:12px;padding:10px 16px}
  .disco-scope .playbar .pb-info .t2{font-size:13px}
  .disco-scope .playbar .pb-progress{display:none}
  .disco-scope .playbar .pb-time{display:none}
}

/* =========================================================================
   PRINT RESET (just in case producers print the page)
   ========================================================================= */
.disco-scope @media print{
  .topnav,.playbar,.reel-button,.hero-cta{display:none}
  .disco-scope{break-inside:avoid;page-break-inside:avoid}
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-0df28091 */.disco-scope.disco-engine{padding:0;min-height:0}/* End custom CSS */