/* Compact client stories: shared navy, sage, cream and teal site palette. */
.dn-case-compact,.dn-case-index{max-width:1180px;margin:auto;padding:0 28px 72px}
.dn-case-compact .cs-breadcrumb{padding:28px 0 12px;flex-wrap:wrap;gap:9px;font-size:.83rem}
.dn-case-hero{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);align-items:center;gap:52px;padding:30px 0 58px}
.dn-case-hero>div,.dn-case-work>div{min-width:0}
.dn-case-hero h1{font-size:clamp(2.25rem,4vw,3.7rem);line-height:1.1;letter-spacing:-.045em;margin:16px 0 22px;max-width:18ch}
.dn-case-hero .cs-client-logo{margin-bottom:24px;max-width:210px}
.dn-case-hero .cs-client-logo .client-badge{width:100%;min-height:74px}
.dn-case-lead{font-size:1.1rem;line-height:1.7;max-width:53ch}
.dn-case-hero .cs-chips{margin:24px 0;gap:8px;flex-wrap:wrap}
.dn-case-hero .cs-chips li{font-size:.76rem;padding:7px 11px}
.dn-case-hero .website-showcase{margin:0;max-width:100%}
.dn-case-hero .showcase-viewport{height:430px;max-height:52vw}
.dn-case-outcome{background:#102d3a;color:#fff;border-radius:22px;padding:36px 40px;margin-bottom:52px}
.dn-case-outcome>div:first-child{max-width:75ch}
.dn-case-outcome h2,.dn-case-work h2,.dn-case-related h2,.dn-case-cta h2{font-size:clamp(1.65rem,2.7vw,2.35rem);line-height:1.15;letter-spacing:-.025em;margin:9px 0 16px}
.dn-case-outcome>div:first-child>p:last-child{line-height:1.75;color:#e7efed}
.dn-case-outcome .eyebrow{color:#b9d8be}
.dn-case-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:26px;margin-top:28px}
.dn-case-metrics>div{border-top:1px solid #ffffff30;padding-top:22px}
.dn-case-metrics strong{display:block;color:#c1dfbd;font-size:clamp(2.5rem,5vw,4rem);line-height:1.1;letter-spacing:-.035em}
.dn-case-metrics p{font-size:1rem;max-width:32ch;margin:10px 0}
.dn-case-metrics small{display:block;color:#d0deda;line-height:1.5;font-size:.8rem;max-width:42ch}
.dn-case-ai{display:flex;align-items:baseline;gap:20px;border-top:1px solid #ffffff30;padding-top:20px;margin-top:26px}
.dn-case-ai .eyebrow{white-space:nowrap;font-size:.72rem}
.dn-case-ai p{margin:0;font-size:.95rem;line-height:1.65}
.dn-case-work{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:65px;padding:0 0 48px}
.dn-case-work p{line-height:1.75;max-width:60ch}
.dn-case-need{background:#eef2e9;border-radius:20px;padding:30px;align-self:start}
.dn-case-need dl{margin:24px 0;padding-top:18px;border-top:1px solid #163b3b26}
.dn-case-need dl>div{margin-bottom:14px}
.dn-case-need dt{font-size:.73rem;text-transform:uppercase;letter-spacing:.08em;opacity:.75}
.dn-case-need dd{margin:4px 0 0;font-size:.95rem;font-weight:600}
.dn-case-steps{display:grid;gap:22px}
.dn-case-steps article{padding-bottom:20px;border-bottom:1px solid #12313124}
.dn-case-steps article:last-child{border-bottom:0;padding-bottom:0}
.dn-case-steps h3{font-size:1.14rem;line-height:1.3;margin:0 0 8px;letter-spacing:-.01em}
.dn-case-steps p{margin:0;font-size:1rem}
.dn-case-related{background:#f5f0e6;border-radius:22px;padding:32px;margin-bottom:42px}
.dn-case-related-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin:24px 0}
.dn-case-related-grid>a{display:block;color:inherit;text-decoration:none;background:#fffaf2;padding:24px;border:1px solid #163b3b20;border-radius:15px}
.dn-case-related-grid h3{font-size:1.25rem;margin:9px 0}
.dn-case-related-grid p{font-size:.94rem;line-height:1.65;margin:0 0 18px}
.dn-case-service-links{display:flex;gap:12px 22px;flex-wrap:wrap;border-top:1px solid #163b3b20;padding-top:20px;font-size:.88rem}
.dn-case-cta{display:flex;gap:32px;align-items:center;justify-content:space-between;background:#dce9dc;padding:34px;border-radius:20px}
.dn-case-cta>div{max-width:700px}.dn-case-cta p{line-height:1.7;margin-bottom:0}.dn-case-cta .button{flex-shrink:0}
.dn-case-index .cs-index-hero{padding:50px 0 28px;max-width:830px}
.dn-case-index .cs-index-hero h1{font-size:clamp(2.7rem,5vw,4.3rem);line-height:1.08}
.dn-case-index .cs-index-hero p.cs-intro{max-width:65ch;line-height:1.7}
.dn-case-index .cs-card-proof strong{font-size:1rem}.dn-case-index .cs-card-proof small{font-size:.76rem;line-height:1.5}
.dn-case-index .cs-card-content{padding:24px}.dn-case-index .cs-card-link>p{font-size:1rem;line-height:1.5}
.dn-case-proof-value{display:block;font-size:clamp(2.5rem,4vw,3.8rem);line-height:1.1;color:inherit;margin:14px 0}
.site-proof-copy>.site-proof-source{font-size:.8rem;line-height:1.55}
.hero-proof-period{max-width:34ch}.case-card-result .case-source{display:block;font-size:.75rem;line-height:1.5}
.dn-case-compact :is(a,button):focus-visible,.dn-case-index :is(a,button):focus-visible{outline:3px solid #267f76;outline-offset:5px}
@media(max-width:850px){.dn-case-hero{gap:30px}.dn-case-hero h1{font-size:3rem}.dn-case-hero .showcase-viewport{height:360px}.dn-case-work{gap:30px;grid-template-columns:.9fr 1.1fr}.dn-case-outcome{padding:30px}.dn-case-cta{align-items:flex-start;flex-direction:column}}
@media(max-width:650px){.dn-case-compact,.dn-case-index{padding:0 18px 44px}.dn-case-compact .cs-breadcrumb{font-size:.73rem;padding-top:20px}.dn-case-hero{grid-template-columns:1fr;gap:30px;padding:22px 0 32px}.dn-case-hero h1{font-size:clamp(2.35rem,9vw,3.2rem);max-width:18ch}.dn-case-lead{font-size:1rem}.dn-case-hero .showcase-viewport{height:320px;max-height:none}.dn-case-hero .cs-client-logo{margin-bottom:18px;max-width:180px}.dn-case-work{grid-template-columns:1fr;gap:32px;padding-bottom:32px}.dn-case-outcome{padding:26px 22px;margin-bottom:32px;border-radius:18px}.dn-case-metrics{gap:20px;grid-template-columns:1fr}.dn-case-metrics strong{font-size:3rem}.dn-case-metrics p{max-width:35ch}.dn-case-ai{display:block}.dn-case-ai .eyebrow{display:block;margin-bottom:8px}.dn-case-related{padding:24px 20px;margin-bottom:30px}.dn-case-related-grid{grid-template-columns:1fr;gap:14px}.dn-case-related-grid>a{padding:20px}.dn-case-need{padding:24px}.dn-case-cta{padding:26px 22px;gap:24px}.dn-case-index .cs-index-hero{padding-top:32px}.dn-case-index .cs-card-content{padding:22px}.dn-case-index .cs-filters{gap:8px}.dn-case-index .cs-filters button{min-height:42px}}
