/* Shared case-study refinement. Decorative layers never intercept controls. */
body.estro-case-polish main {isolation:isolate}
.estro-case-polish .case-depth {position:relative;isolation:isolate;overflow:clip}
.estro-case-polish .case-depth>*:not(.case-depth-mark){position:relative;z-index:1}
.estro-case-polish .case-depth-mark{position:absolute;z-index:0;right:1.5%;top:12%;font-family:'Special Gothic Expanded One',sans-serif;font-size:clamp(100px,20vw,310px);line-height:1;letter-spacing:-.08em;color:currentColor;opacity:.035;pointer-events:none;user-select:none;max-width:90%;overflow:hidden;white-space:nowrap}
.estro-case-polish .case-depth {background-image:radial-gradient(ellipse at 100% 5%,#db005a05,transparent 62%)}
.estro-case-polish main figcaption{line-height:1.65}
.estro-case-polish .cs-chapter-head p,.estro-case-polish .prose p,.estro-case-polish .cw-section-head p{max-width:68ch;line-height:1.75}
.estro-case-polish main h2{overflow-wrap:break-word;text-wrap:balance}
.estro-case-polish .cs-gallery-item img{max-height:620px;object-fit:contain}
.cs-legacy{background:#f5f3ef}
.cs-legacy .cs-hero{padding:150px 0 95px;min-height:0;height:auto;background:radial-gradient(ellipse at 90% 0%,#db005a1f,transparent 55%),#0b0b0c;color:#fff}
.cs-legacy-opening{display:grid;grid-template-columns:minmax(140px,.65fr) minmax(0,1.25fr) minmax(0,1fr);gap:clamp(25px,4vw,70px);align-items:center}
.cs-legacy .cs-legacy-opening h1{font-size:clamp(28px,3.6vw,58px);line-height:1.12;text-transform:uppercase;letter-spacing:-.045em}
.cs-legacy-logo{display:block;max-width:240px;width:auto;max-height:155px;object-fit:contain;filter:brightness(0) invert(1)}
.cs-legacy-wordmark{font-family:'Special Gothic Expanded One',sans-serif;font-size:24px;line-height:1.2}
.cs-legacy-summary p{font-size:16px;line-height:1.75;color:#d0ccd0}
.cs-legacy .cs-back{color:#ddd}
.cs-legacy-chapter{padding:clamp(55px,7vw,112px) 0;border-bottom:1px solid #1919190d}
.cs-legacy-chapter:nth-of-type(3n){background-color:#eeeae3}
.cs-legacy-chapter>.cs-wrap{display:grid;grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);gap:clamp(30px,6vw,100px);align-items:start}
.cs-legacy-chapter header{min-width:0}
.cs-legacy .cs-legacy-chapter h2{font-size:clamp(25px,2.8vw,44px);line-height:1.17;text-transform:none;letter-spacing:-.035em}
.cs-legacy .cs-kicker{font-size:11px;letter-spacing:.13em;line-height:1.5}
.cs-legacy-flow{min-width:0;display:flex;flex-wrap:wrap;gap:28px;align-items:stretch}
.cs-legacy-flow>.cs-legacy-prose,.cs-legacy-flow>.cs-legacy-gallery,.cs-legacy-flow>.cs-legacy-player,.cs-legacy-flow>.cs-kicker,.cs-legacy-flow>blockquote{flex-basis:100%;min-width:0}
.cs-legacy-prose{font-size:17px;line-height:1.8;max-width:70ch}
.cs-legacy .cs-legacy-prose p{font-size:17px;line-height:1.8;margin:0 0 1.1em}
.cs-legacy-prose p:last-child{margin-bottom:0}
.cs-legacy-prose strong{font-weight:650}
.cs-legacy-prose ul,.cs-legacy-prose ol{padding-left:1.3em;line-height:1.8}
.cs-legacy-prose a{text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}
.cs-legacy-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.cs-legacy-gallery:has(>figure:only-child){grid-template-columns:minmax(0,1fr)}
.cs-legacy-gallery figure{margin:0;padding:12px;background:#fff;border:1px solid #00000006;box-shadow:0 15px 40px #19191906;border-radius:3px;min-width:0;display:flex;align-items:center;justify-content:center}
.cs-legacy-gallery img{display:block;width:100%;height:auto;max-height:570px;object-fit:contain}
.cs-legacy-metric{flex:1 1 190px;max-width:100%;padding:26px;background:#fff;border-top:2px solid #db005a;box-shadow:0 10px 24px #00000004}
.cs-legacy-metric strong{font-family:'Special Gothic Expanded One',sans-serif;font-size:clamp(28px,3.4vw,50px);line-height:1.1;letter-spacing:-.05em;color:#bd004b;overflow-wrap:anywhere}
.cs-legacy .cs-legacy-metric p{font-size:14px;line-height:1.65;margin-top:14px}
.cs-legacy-quote{margin:0;background:#f9f3d9;padding:30px;border-left:3px solid #db005a;box-shadow:7px 9px 0 #00000007;font-size:19px;line-height:1.7}
.cs-legacy-player{position:relative;aspect-ratio:16/9;background:radial-gradient(ellipse at 10% 80%,#db005a29,transparent 65%),#0d0e10;border-radius:6px;overflow:hidden;color:#fff}
.cs-legacy-player.is-vertical{aspect-ratio:9/16;max-width:360px;margin:auto}
.cs-legacy-player video,.cs-legacy-player iframe{width:100%;height:100%;display:block;object-fit:contain;border:0}
.cs-legacy-player .cs-load-film{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:14px;width:100%;border:0;background:transparent;color:inherit;cursor:pointer;font:inherit;padding:25px}
.cs-film-play{display:grid;place-items:center;border-radius:50%;width:60px;height:60px;background:#db005a;font-size:20px}
.cs-load-film small{font-size:11px;color:#bdb9bf}
.cs-load-film:hover .cs-film-play{background:#f2096b}
.cs-load-film:focus-visible{outline:3px solid #ffb4d5;outline-offset:-6px}
.cs-legacy-contact{padding:90px 0;background:#fff}
.cs-legacy-contact iframe{margin:35px auto 0;max-width:850px}
.cs-legacy .cs-legacy-contact h2{text-align:center;text-transform:none;font-size:clamp(30px,4vw,58px)}
.cs-legacy-contact>.cs-wrap>.cs-kicker{text-align:center}
@media(min-width:1600px){.cs-legacy .cs-wrap{max-width:1440px}}
@media(max-width:1000px){.cs-legacy-opening{grid-template-columns:.65fr 1.35fr}.cs-legacy-summary{grid-column:1/-1;max-width:700px}.cs-legacy-chapter>.cs-wrap{grid-template-columns:minmax(0,1fr);gap:28px}.cs-legacy-chapter header{max-width:850px}.cs-legacy-prose{max-width:74ch}}
@media(max-width:600px){.cs-legacy .cs-hero{padding:110px 0 55px}.cs-legacy-opening{grid-template-columns:minmax(0,1fr);gap:28px}.cs-legacy-logo{max-width:175px;max-height:105px}.cs-legacy-summary{grid-column:auto}.cs-legacy .cs-back{margin-bottom:32px}.cs-legacy-gallery{gap:12px}.cs-legacy-gallery figure{padding:6px}.cs-legacy .cs-wrap{width:calc(100% - 40px)}.cs-legacy .cs-legacy-prose p{font-size:16px}.cs-legacy-metric{padding:20px;flex-basis:140px}.cs-legacy-gallery img{max-height:440px}.cs-legacy-contact{padding:55px 0}}
