/* Portfolio-only styles; original service pages retain their design. */
.media-world .portfolio-entry{margin-top:1.2rem;position:relative;z-index:1}
.media-world.kc-portfolio{background:#10100f;color:#f5efe5;--m-line:#d8c6ad40}
.kc-portfolio .portfolio-heading{border-bottom:1px solid #d8c6ad40;background:radial-gradient(ellipse at top right,#b886411b,transparent 65%),#10100f}
.kc-portfolio .portfolio-heading .m-back{display:inline-block;margin-bottom:3rem;color:#d8c6ad}
.kc-portfolio .m-kicker{color:#d7aa5b}
.kc-portfolio .portfolio-heading h1{font-size:clamp(.85rem,1.5vw,1.15rem);letter-spacing:.18em;color:#d8c6ad;margin-bottom:1.2rem}
.kc-portfolio .portfolio-heading h2{font-size:clamp(2.7rem,6vw,6rem);max-width:15ch}
.kc-portfolio .portfolio-heading p:last-child{color:#c8bfb1;font-size:1.1rem}
.kc-portfolio .portfolio-category{padding:clamp(3rem,7vw,6rem) clamp(1.25rem,6vw,7rem);border-bottom:1px solid #d8c6ad30}
.kc-portfolio .portfolio-category h2{font-size:clamp(1.6rem,3vw,2.6rem);letter-spacing:-.025em;margin-bottom:2rem}
.kc-portfolio .portfolio-number{display:block;font-size:.7rem;letter-spacing:.18em;color:#d7aa5b;margin-bottom:1rem}
.kc-portfolio .portfolio-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(1rem,3vw,2.5rem);align-items:center}
.kc-portfolio .portfolio-grid[data-count="1"]{grid-template-columns:minmax(0,1fr);max-width:1000px;margin:auto}
.kc-portfolio .portfolio-grid[data-count="3"]{grid-template-columns:repeat(2,minmax(0,1fr))}
.kc-portfolio .portfolio-grid[data-count="3"] .portfolio-item:first-child{grid-column:1/-1;max-width:1000px;width:100%;justify-self:center}
.kc-portfolio .portfolio-item{display:block;padding:0;margin:0;width:100%;background:transparent;border:0;color:inherit;text-align:left;cursor:pointer;min-width:0}
.kc-portfolio .portfolio-item img{display:block;width:100%;height:auto;max-width:100%;border:1px solid #d8c6ad30}
.kc-portfolio .portfolio-item .portfolio-label{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1rem 0;color:#d8c6ad;font-size:.75rem;letter-spacing:.07em}
.kc-portfolio .portfolio-item:hover .portfolio-label{color:#fff}
.kc-portfolio .portfolio-video-item{max-width:440px;justify-self:start}
.kc-portfolio .portfolio-video-item img{aspect-ratio:9/16;object-fit:contain;background:#080808}
.kc-portfolio .portfolio-cta{background:#1b1915}
.kc-portfolio .portfolio-cta h2{font-size:clamp(2rem,4vw,3.5rem);max-width:22ch}
.kc-portfolio .portfolio-cta .m-button{margin-top:1rem}
#portfolio-viewer{width:96vw;max-width:1600px;max-height:96dvh;padding:1rem;border:1px solid #d8c6ad66;background:#10100f;color:#f5efe5}
#portfolio-viewer::backdrop{background:#000e}
#portfolio-viewer .portfolio-controls{display:flex;align-items:center;gap:.8rem;margin-bottom:1rem}
#portfolio-viewer .portfolio-controls button{min-width:44px;min-height:44px;border:1px solid #d8c6ad66;background:#171613;color:#f5efe5;cursor:pointer}
#portfolio-viewer .portfolio-controls button:focus-visible{outline:2px solid #d7aa5b;outline-offset:3px}
#portfolio-viewer .portfolio-controls button:disabled{opacity:.3;cursor:default}
#portfolio-caption{flex:1;font-size:.85rem;margin:0}
#portfolio-stage{display:flex;align-items:center;justify-content:center;min-height:20vh}
#portfolio-stage img,#portfolio-stage video{display:block;width:auto;height:auto;max-width:100%;max-height:calc(92dvh - 110px);object-fit:contain}
@media(max-width:640px){.kc-portfolio .portfolio-grid,.kc-portfolio .portfolio-grid[data-count="3"]{grid-template-columns:1fr}.kc-portfolio .portfolio-grid[data-count="3"] .portfolio-item:first-child{grid-column:auto}.kc-portfolio .portfolio-video-item{max-width:100%}#portfolio-viewer{padding:.65rem}#portfolio-caption{font-size:.72rem}#portfolio-viewer .portfolio-controls{gap:.35rem}}

/* New client showcases only. */
.client-portfolio .client-showcase{display:grid;grid-template-columns:.65fr 1.35fr;align-items:center;gap:clamp(2rem,6vw,7rem);border-top:1px solid #d8c6ad40}
.client-portfolio .client-showcase:nth-of-type(even) .client-number{order:2}
.client-portfolio .client-number{font-size:clamp(6rem,18vw,16rem);font-weight:800;line-height:1;color:#d7aa5b30;letter-spacing:-.08em}
.client-portfolio .client-details h2{font-size:clamp(2rem,4vw,4.5rem);overflow-wrap:anywhere}
.client-portfolio .client-handle{color:#d8c6ad;font-size:clamp(1rem,2vw,1.4rem);overflow-wrap:anywhere}
.client-portfolio .client-badge{display:inline-block;border:1px solid #d7aa5b88;padding:.6rem .9rem;color:#d7aa5b;font-size:.65rem;letter-spacing:.15em;margin:.5rem 0 2rem}
.client-portfolio .client-details h3,.client-portfolio .client-artwork h3{font-size:.8rem;letter-spacing:.16em;margin-bottom:1rem}
.client-portfolio .podcast-showcase{border-bottom:1px solid #d8c6ad40}
.client-portfolio .client-artwork{margin-top:4rem}
.client-portfolio .client-episode-grid{display:grid;grid-template-columns:1fr 1fr;gap:2rem}
.client-portfolio figure{margin:0;min-width:0}
.client-portfolio figure img{display:block;width:100%;height:auto}
.client-portfolio figcaption{padding:1rem 0;color:#d8c6ad;font-size:.9rem}
@media(max-width:640px){.client-portfolio .client-showcase,.client-portfolio .client-episode-grid{grid-template-columns:1fr}.client-portfolio .client-showcase:nth-of-type(even) .client-number{order:0}.client-portfolio .client-number{font-size:4rem}.client-portfolio .client-showcase{gap:1.5rem}}
