/* Interior pages of the BANG! studio catalogue. */
.dp-page {background:#f5f4ef;color:#11120f}
.dp {--dp-ink:var(--bang-ink);--dp-paper:var(--bang-paper);--dp-rule:var(--bang-rule-strong);--dp-acid:var(--bang-acid);--dp-muted:var(--bang-muted-strong);--dp-space:var(--gutter,clamp(20px,4.2vw,84px));--dp-mono:var(--bang-mono);max-width:1920px;margin-inline:auto;padding:clamp(28px,3.5vw,68px) var(--dp-space) 0;font-family:Manrope,"Helvetica Neue",Arial,sans-serif;color:var(--dp-ink);line-height:1.5;background:var(--dp-paper)}
.dp * {box-sizing:border-box}
.dp [hidden] {display:none!important}
.dp a {color:inherit;text-decoration:none}
.dp p,.dp h1,.dp h2,.dp h3,.dp ol,.dp ul {margin:0}
.dp button,.dp input {font:inherit}
.dp button {color:inherit;cursor:pointer}
.dp img {max-width:100%;display:block}
.dp :is(a,button,summary,input):focus-visible {outline:3px solid var(--bang-focus);outline-offset:4px}
.dp :is(section,details,h2) {scroll-margin-top:96px}
.dp-kicker,.dp-trail,.dp-interlinks,.dp-archive-tools {display:flex;align-items:center;justify-content:space-between;gap:16px}
.dp-label,.dp-trail,.dp-tile-no,.dp-voice-meta,.dp-voice-index {font-family:var(--dp-mono);font-weight:600;line-height:1.45;text-transform:uppercase;font-size:clamp(10px,.72vw,13px);letter-spacing:.07em}
.dp-label {display:block}
.dp-kicker {border-bottom:1px solid var(--dp-ink);padding-bottom:12px}
.dp-trail {justify-content:flex-start;gap:10px}
.dp-trail b {color:#83857b}
.dp-trail a:hover,.dp-interlinks a:hover,.dp-reference-nav a:hover {text-decoration:underline;text-underline-offset:.22em}
.dp-intro {padding-bottom:clamp(28px,4vw,72px)}
.dp-intro h1 {margin-top:clamp(21px,3.5vw,65px);font-size:clamp(60px,8.9vw,164px);font-weight:650;line-height:.95;letter-spacing:-.075em;word-spacing:.025em;overflow-wrap:break-word;max-width:16ch}
.dp-intro>p {font-size:clamp(17px,1.65vw,29px);line-height:1.35;letter-spacing:-.035em;max-width:50ch;margin-top:clamp(18px,2.5vw,46px)}
.dp-tabs,.dp-filters {display:flex;flex-wrap:wrap;gap:6px}
.dp-tabs {border-top:1px solid var(--dp-rule);border-bottom:1px solid var(--dp-rule);padding:12px 0}
.dp-tabs a,.dp-filters button {display:inline-flex;align-items:center;min-height:40px;border:1px solid var(--dp-rule);border-radius:100px;background:transparent;padding:8px 14px;font-size:13px;font-weight:600;letter-spacing:-.025em;line-height:1.3;transition:background .18s,border-color .18s}
.dp-tabs a[aria-current],.dp-filters button[aria-pressed="true"] {background:var(--dp-ink);border-color:var(--dp-ink);color:var(--dp-paper)}
@media(hover:hover){.dp-tabs a:not([aria-current]):hover,.dp-filters button[aria-pressed="false"]:hover{background:var(--dp-acid);border-color:var(--dp-ink)}}
.dp-servicelead {display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;column-gap:clamp(30px,7vw,145px);padding:clamp(32px,4.8vw,88px) 0 clamp(46px,6.5vw,120px)}
.dp-servicelead>div:first-child {padding-top:3px}
.dp-lede,.dp-sectionhead p,.dp-format p {font-size:clamp(17px,1.45vw,26px);line-height:1.46;letter-spacing:-.035em}
.dp-lede {margin-top:16px!important;max-width:34em}
.dp-button {display:inline-flex;align-items:center;justify-content:space-between;gap:28px;min-height:45px;border:1px solid var(--dp-ink);border-radius:100px;background:var(--dp-acid);color:var(--dp-ink);padding:10px 18px;font-size:14px;font-weight:650;line-height:1.3;transition:background .18s,color .18s}
.dp-button span {font-family:Arial,sans-serif;font-size:18px;line-height:1}
.dp-button--plain {background:transparent}
.dp :is(.dp-servicelead,.dp-sectionhead) .dp-button {margin-top:26px}
@media(hover:hover){.dp .dp-button:hover{background:var(--dp-ink);color:var(--dp-paper)}}
.dp-tile {display:block;width:100%;text-align:left;background:transparent;border:0;padding:0;border-radius:0;font-family:inherit}
.dp-tile-frame,.dp-format-image {position:relative;display:block;overflow:hidden;background:#171814;isolation:isolate}
.dp-tile-frame {aspect-ratio:1.7}
.dp-tile-frame img,.dp-format-image img {width:100%;height:100%;object-fit:cover;transition:transform .65s cubic-bezier(.16,.73,.25,1)}
.dp-tile-no,.dp-play {position:absolute;border-radius:50px;z-index:1}
.dp-tile-no {top:12px;left:12px;padding:5px 10px;background:var(--dp-paper);color:var(--dp-ink)}
.dp-play {display:grid;place-items:center;right:14px;bottom:14px;width:39px;height:39px;font-family:Arial,sans-serif;font-size:16px;background:var(--dp-acid);color:var(--dp-ink);transition:transform .3s}
@media(hover:hover){.dp-tile:hover img,.dp-format:hover img {transform:scale(1.045)}.dp-tile:hover .dp-play,.dp-format:hover .dp-play{transform:rotate(-6deg) scale(1.08)}}
.dp-tile-caption {display:block;padding-top:14px}
.dp-tile-caption strong {display:block;max-width:39ch;margin-top:6px;font-weight:650;font-size:clamp(18px,1.65vw,30px);line-height:1.14;letter-spacing:-.052em;overflow-wrap:anywhere}
.dp-tile-caption .dp-label {color:var(--dp-muted)}
.dp-section,.dp-interlinks,.dp-contactline {border-top:1px solid var(--dp-ink)}
.dp-section {padding:clamp(35px,5vw,90px) 0 clamp(50px,7vw,130px)}
.dp-sectionhead {display:grid;grid-template-columns:minmax(130px,1fr) minmax(0,2fr);gap:20px;margin-bottom:clamp(26px,3.5vw,64px)}
.dp-sectionhead>.dp-label {padding-top:9px}
.dp-sectionhead h2,.dp-contactline h2 {font-size:clamp(38px,5vw,90px);font-weight:650;letter-spacing:-.075em;line-height:1}
.dp-sectionhead p {margin-top:17px;max-width:55ch}
.dp-packages {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid var(--dp-ink);border-bottom:1px solid var(--dp-ink)}
.dp-package {display:flex;flex-direction:column;align-items:flex-start;padding:clamp(18px,2.2vw,40px);border-left:1px solid var(--dp-rule)}
.dp-package:first-child {border:0;padding-left:0}
.dp-package h3 {font-size:clamp(20px,2.05vw,36px);line-height:1.12;letter-spacing:-.06em;font-weight:650;margin-top:26px}
.dp-package .dp-price {font-size:clamp(18px,1.6vw,27px);margin-top:3px;letter-spacing:-.045em}
.dp-package ul {list-style:none;padding:0;margin:20px 0 32px!important;font-size:15px}
.dp-package li {margin-bottom:4px}
.dp-package .dp-button {margin-top:auto}
.dp-note {max-width:82ch;color:var(--dp-muted);font-size:14px;margin-top:16px}
.dp-voices {list-style:none;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 clamp(18px,3vw,55px)}
.dp-voice {width:100%;background:transparent;border:0;border-bottom:1px solid var(--dp-rule);border-radius:0;text-align:left;display:grid;grid-template-columns:2.3em 1fr minmax(70px,auto) 30px;gap:8px;align-items:center;min-height:62px;padding:6px 2px}
.dp-voice strong {font-size:clamp(18px,1.5vw,26px);letter-spacing:-.06em}
.dp-voice-index,.dp-voice-meta {color:var(--dp-muted)}
.dp-voice-symbol {justify-self:end;font-family:Arial,sans-serif;font-size:11px;display:grid;place-items:center;width:29px;height:29px;border:1px solid var(--dp-ink);border-radius:50%}
.dp-voice[aria-pressed="true"] .dp-voice-symbol {background:var(--dp-acid)}
@media(hover:hover){.dp-voice:hover .dp-voice-symbol {background:var(--dp-ink);color:var(--dp-paper)}}
.dp-audiobar {display:flex;flex-wrap:wrap;gap:12px 20px;align-items:center;justify-content:space-between;margin-top:20px;background:#dedfd4;padding:16px 20px}
.dp-audiobar strong {display:block;font-size:16px;margin-top:3px}
.dp-audiobar audio {max-width:100%}
.dp-section>.dp-tile {max-width:640px}
.dp-interlinks,.dp-contactline {padding:clamp(36px,5vw,82px) 0;flex-wrap:wrap}
.dp-interlinks a {font-size:clamp(18px,2.4vw,44px);font-weight:650;letter-spacing:-.06em}
.dp-contactline {display:flex;align-items:center;justify-content:space-between;gap:25px}
.dp-contactline h2 {max-width:20ch;margin-top:10px}
.dp-syndicast {display:flex;flex-direction:column;position:relative;isolation:isolate;overflow:hidden;min-height:310px;background:var(--dp-ink);color:var(--dp-paper)!important;justify-content:space-between;gap:30px;padding:clamp(23px,3.4vw,68px)}
.dp-syndicast h2 {font-size:clamp(32px,4.5vw,80px);letter-spacing:-.07em;line-height:1;font-weight:650}
.dp-syndicast h2 span {font-size:.48em;vertical-align:top;margin-left:6px}
.dp-syndicast p {font-size:15px;max-width:20ch}
.dp-syndicast p strong {display:block;color:var(--dp-acid);font-size:clamp(25px,3.5vw,63px);line-height:1;letter-spacing:-.07em}
.dp-format-grid,.dp-gallery {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(18px,2vw,38px);margin-bottom:clamp(48px,7vw,125px)}
.dp-format-image {margin-bottom:20px;aspect-ratio:1.34}
.dp-archive-tools {border-top:1px solid var(--dp-ink);padding:19px 0 25px;align-items:flex-start}
.dp-archive-tools>.dp-label {margin:12px 0 0;white-space:nowrap}
.dp-gallery {row-gap:clamp(32px,4.3vw,85px)}
.dp-reference {display:grid;grid-template-columns:minmax(160px,1fr) minmax(0,2.3fr);gap:clamp(35px,6vw,135px);align-items:start;padding:clamp(28px,3vw,60px) 0 clamp(50px,7vw,120px);border-top:1px solid var(--dp-ink)}
.dp-reference-nav {position:sticky;align-self:start;top:90px}
.dp-reference-nav input[type=search] {margin:9px 0 17px;background:transparent;color:var(--dp-ink);border:1px solid var(--dp-rule);width:100%;min-height:45px;border-radius:0;padding:10px 13px}
.dp-reference-nav .dp-filters {justify-content:flex-start}
.dp-reference-nav .dp-core {display:flex;gap:7px;align-items:center;margin-top:16px;font-size:14px;cursor:pointer}
.dp-core input {accent-color:var(--dp-ink);width:17px;height:17px}
.dp-result {margin-bottom:14px!important;color:var(--dp-muted)}
.dp-faqitem {border-top:1px solid var(--dp-rule)}
.dp-faqitem summary {display:flex;align-items:flex-start;justify-content:space-between;gap:20px;list-style:none;cursor:pointer;padding:21px 0;font-size:clamp(18px,1.7vw,30px);line-height:1.24;letter-spacing:-.045em;font-weight:650}
.dp-faqitem summary::-webkit-details-marker {display:none}
.dp-faqitem summary::after {content:'+';flex:0 0 22px;text-align:center;font:400 24px/1 Manrope,Arial,sans-serif;color:var(--dp-ink)}
.dp-faqitem[open] summary::after {content:'\2212'} /* minus sign icon for an open answer, not a dash */
.dp-answer {padding:0 25px 22px clamp(26px,5.1vw,85px);max-width:74ch}
.dp-answer .dp-label {color:var(--dp-muted)}
.dp-answer p {font-size:clamp(15px,1.2vw,21px);line-height:1.55;margin-top:7px;white-space:pre-line}
.dp-empty {padding:18px 0}
.dp-empty button {background:none;border:0;text-decoration:underline}
.dp-policy-text :is(p,address,ul){margin-bottom:1em}
@media(max-width:900px){.dp-gallery,.dp-format-grid,.dp-packages{grid-template-columns:repeat(2,minmax(0,1fr))}.dp-package:nth-child(3){border-left:0;padding-left:0}.dp-package:nth-child(n+3){border-top:1px solid var(--dp-rule)}.dp-archive-tools{flex-wrap:wrap;gap:6px}.dp-archive-tools>.dp-label{margin:2px 0 0}.dp-sectionhead{grid-template-columns:minmax(110px,.55fr) minmax(0,2fr)}}
@media(max-width:670px){.dp{padding-top:27px}.dp-kicker{gap:8px}.dp-label,.dp-trail,.dp-tile-no,.dp-voice-meta,.dp-voice-index{font-size:10px}.dp-intro h1{font-size:clamp(50px,14vw,85px);letter-spacing:-.069em}.dp-servicelead,.dp-sectionhead,.dp-reference,.dp-voices,.dp-format-grid{grid-template-columns:minmax(0,1fr)}.dp-servicelead{gap:26px}.dp-servicelead .dp-lede{font-size:18px}.dp-sectionhead{gap:14px}.dp-sectionhead>.dp-label{padding:0}.dp-reference-nav{position:static}.dp-reference{gap:25px}.dp-interlinks{align-items:flex-start;flex-direction:column}.dp-format-image{aspect-ratio:1.65}.dp-gallery{grid-template-columns:minmax(0,1fr);gap:28px}.dp-gallery .dp-tile-frame{aspect-ratio:1.6}.dp-tile-caption{padding-top:10px}.dp-tile-caption strong{font-size:23px}.dp-archive-tools{display:block}.dp-archive-tools>.dp-label{margin-top:14px}.dp-sectionhead h2,.dp-contactline h2{font-size:clamp(35px,9vw,59px)}.dp-answer{padding-left:25px}.dp-faqitem summary{grid-template-columns:20px 1fr 16px}.dp-contactline{align-items:flex-start;flex-direction:column}.dp-package{padding:16px 10px}.dp-package h3{font-size:26px}.dp-package ul{font-size:14px}.dp-note{font-size:13px}.dp-audiobar audio{width:100%}.dp-servicelead>div:first-child{padding-top:0}}

@media(prefers-reduced-motion:reduce){.dp *,.dp *:before,.dp *:after{transition:none!important;animation:none!important}}
/* The audio artwork is supplied as square sleeves. */
.dp-gallery .dp-tile[data-project^="audio-"] .dp-tile-frame {aspect-ratio:1}
.dp .dp-tile--feature[data-project^="audio-"] .dp-tile-frame,.dp-section>.dp-tile[data-project^="audio-"] .dp-tile-frame {aspect-ratio:1.7;background:radial-gradient(ellipse at center,#373932,#161714);padding:clamp(16px,2vw,34px)}
.dp .dp-tile--feature[data-project^="audio-"] .dp-tile-frame img,.dp-section>.dp-tile[data-project^="audio-"] .dp-tile-frame img {object-fit:contain;filter:drop-shadow(0 5px 10px #0004)}
