/* Client title and subtitle form one rotating composition. */
.v-tile.case-preview{background:#f0b4bd;color:#000;text-decoration:none}
.case-preview:after{background:transparent}
.v-item:nth-child(4n+2) .case-preview,.v-item:nth-child(4n+3) .case-preview{background:#f8f6f4}
.case-preview-art{position:absolute;inset:0;display:flex;align-items:center;padding:8%;color:#000;isolation:isolate}
.case-preview-art:before,.case-preview-art:after{content:'';position:absolute;width:75%;height:60%;border:2px solid #0002;border-radius:50%;left:45%;top:-15%;transform:rotate(-30deg);z-index:-1}
.case-preview-art:after{top:25%;left:-30%;width:85%;height:90%;transform:rotate(20deg)}
.case-preview-copy{display:block;width:100%;transform:rotate(-5deg);transform-origin:50% 50%;transition:transform .8s cubic-bezier(.16,1,.3,1)}
.case-preview-copy>strong{display:block;color:#000!important;-webkit-text-stroke:0!important;font:clamp(30px,4vw,64px)/1.1 Anton,sans-serif;letter-spacing:-.035em;transform-origin:left center;transition:transform .8s cubic-bezier(.16,1,.3,1)}
.case-preview-subtitle{display:block;margin-top:20px;font:clamp(12px,1.2vw,17px)/1.5 OpenSans,sans-serif;max-width:43ch;transition:transform .8s cubic-bezier(.16,1,.3,1)}
@media(hover:hover){.case-preview:hover .case-preview-copy{transform:rotate(-3deg)}.case-preview:hover .case-preview-copy>strong{transform:scale(1.45)}.case-preview:hover .case-preview-subtitle{transform:translate(10px,8px)}}
.case-preview:focus-visible .case-preview-copy{transform:rotate(-3deg)}.case-preview:focus-visible .case-preview-copy>strong{transform:scale(1.45)}.case-preview:focus-visible .case-preview-subtitle{transform:translate(10px,8px)}
.case-preview>img{position:absolute;width:100%;height:100%;object-fit:cover;inset:0;z-index:-2}
.s-project .p-project-summary>div{display:grid;grid-template-columns:minmax(140px,.7fr) minmax(0,2fr);gap:5%;align-items:start}
.s-project .case-summary-content{min-width:0}.s-project .case-summary-content p{max-width:65ch;line-height:1.7;margin:0 0 18px}
.s-project .p-part-keywords{font-size:clamp(24px,2.7vw,38px);line-height:1.4;gap:5px 0}
.s-project .p-result{grid-template-columns:repeat(var(--metric-count,3),minmax(0,1fr));min-width:0;align-items:start}
.s-project .p-result>div{min-width:0}.s-project .p-result strong{white-space:nowrap;font-size:clamp(24px,2.55vw,40px)}
.s-project .p-result strong.case-metric-text{font-size:clamp(18px,1.7vw,26px);white-space:normal;overflow-wrap:normal}
.s-project .p-result small{font:10px/1.5 OpenSans,sans-serif}.s-project .case-sources{font:11px/1.6 OpenSans,sans-serif;margin-top:18px}.case-sources summary{cursor:pointer}.case-sources a{display:inline-block;margin:8px 18px 0 0}
.case-feedback img{display:block;max-width:100%;max-height:600px;object-fit:contain}
@media(max-width:700px){.case-preview-copy>strong{font-size:9vw}.case-preview-subtitle{font-size:12px;margin-top:16px}.s-project .p-project-summary>div{grid-template-columns:1fr;gap:18px;padding-block:20px}.s-project .p-part-keywords{font-size:27px}.s-project .p-result strong{font-size:27px}.s-project .p-result strong.case-metric-text{font-size:19px}}
@media(prefers-reduced-motion:reduce){.case-preview-copy,.case-preview-copy>strong,.case-preview-subtitle{transition:none!important;transform:none!important}}
body.motion-paused .case-preview-copy,body.motion-paused .case-preview-copy>strong,body.motion-paused .case-preview-subtitle{transition:none!important;transform:none!important}
.s-project .p-result small{order:2;margin-top:10px}.s-project .p-result-title{order:-1}

/* Restore the corner invitation independently of the central title motion. */
.case-preview .case-preview-open{position:absolute;right:30px;bottom:27px;color:#000;border-color:#000;z-index:2;font:11px/1.4 OpenSans,sans-serif}
.case-preview:is(:hover,:focus-visible) .case-preview-open{color:#000;border-color:#000}
@media(max-width:700px){.case-preview .case-preview-open{right:20px;bottom:18px;font-size:10px}}
/* Open typography: shared alignment, no card frames. */
.s-project .p-overview{align-items:start}
.s-project .p-result{border:0;padding:0;column-gap:20px;row-gap:15px;align-items:stretch}
.s-project .p-result-title{font-size:28px;line-height:1.2;min-height:34px;margin:0;transform:rotate(-3deg)}
.s-project .p-result>div{position:relative;display:flex;flex-direction:column;justify-content:center;min-height:148px;padding:0 0 0 18px;border:0}
.s-project .p-result>div:before{content:"";position:absolute;top:18px;bottom:18px;left:0;width:5px;background:#f0b4bd;clip-path:polygon(40% 0,80% 4%,100% 28%,78% 66%,90% 91%,50% 100%,15% 88%,0 46%,20% 13%);transform:rotate(1deg)}
.s-project .p-result>div:nth-of-type(2):before{transform:rotate(-1deg)}
.s-project .p-result strong,.s-project .p-result strong.case-metric-text{font-size:clamp(22px,2.1vw,28px);line-height:1.2;min-height:2.4em;display:flex;align-items:center;margin:0}
.s-project .p-result>div>span{font-size:11px;line-height:1.5;min-height:3em;display:block;margin:8px 0 0;overflow-wrap:anywhere;hyphens:auto}
.s-project .p-result>div>span:empty{display:none}
.s-project .p-result small{grid-column:1/-1;line-height:1.5;margin:0}
.metric-visual>span{display:inline-block}
@media(max-width:700px){.s-project .p-result{column-gap:12px}.s-project .p-result>div{min-height:132px;padding-left:12px}.s-project .p-result>div:before{width:4px}.s-project .p-result strong,.s-project .p-result strong.case-metric-text{font-size:20px}}

/* Real project embeds preserve the original video gallery. */
.s-project .p-media-grid iframe{display:block;width:100%;aspect-ratio:16/9;border:0;background:#000;box-shadow:0 15px 35px -25px #0008}
.s-project .p-media-grid figure:only-child{flex-basis:80%;margin-inline:auto;transform:none}
@media(max-width:700px){.s-project .p-media-grid figure:only-child{flex-basis:100%}}

/* Client footage, stills and original aspect ratios. */
.case-preview.has-project-video .case-preview-art:before,.case-preview.has-project-video .case-preview-art:after{display:none}
.case-preview.has-project-video:after{background:none}
.s-project .p-media-grid video{height:auto;aspect-ratio:auto;object-fit:contain}
.s-project .p-media-grid figure:only-child.p-media-portrait{flex-basis:min(420px,80%)}
.s-project .p-photo-track figure.project-photo-portrait{flex:0 0 24%;padding-top:0}
.s-project .p-photo-track figure.project-photo-landscape{flex:0 0 47%;padding-top:0}
.s-project .p-photo-track figure img{height:360px;object-fit:contain;width:100%}
@media(max-width:700px){.s-project .p-photo-track figure.project-photo-portrait{flex-basis:66%}.s-project .p-photo-track figure.project-photo-landscape{flex-basis:92%}.s-project .p-photo-track figure img{height:290px}}

.case-preview>.preview-still{z-index:-1;transition:opacity .25s}.case-preview.preview-playing>.preview-still{opacity:0}
