/* Case studies: full-bleed square artwork, visible summaries and explicit actions. */
.projects{padding-top:90px;padding-bottom:100px}
.case-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:64px 30px;align-items:start}
.case-card{min-width:0}
.case-media,.case-modal-media{display:block;position:relative;aspect-ratio:1;width:100%;padding:0;overflow:hidden;border-radius:2px;isolation:isolate;background:#161936}
.case-media img,.case-modal-media img{display:block;position:absolute;width:100%;height:100%;object-fit:cover;max-width:none;inset:0;transition:filter .35s ease}
.case-view{position:absolute;z-index:2;bottom:22px;right:22px;border-radius:30px;padding:13px 18px;background:#fff;color:#161616;font-size:12px;display:flex;align-items:center;gap:24px;box-shadow:0 2px 12px #00000012;transition:background .2s,color .2s}
.case-view>span{font-size:24px;line-height:1}
.case-media:hover .case-view,.case-media:focus-visible .case-view{background:#191919;color:#fff}
.case-media:hover img{filter:brightness(1.055)}
.art-zaklinateli img{object-position:50% 50%}
.art-bravly img{width:213.333%;height:auto;top:-8.889%;left:0}
.art-skrepyshi img{width:218.182%;height:auto;top:-11.364%;left:0}
.art-surf img{object-position:left center}
.art-derzko img{object-position:right center}
.art-smeshariki img{width:166.667%;height:auto;top:0;left:-64.286%}
.art-smeshariki:after{content:"";position:absolute;inset:91% 0 0;background:linear-gradient(transparent,#162b64 45%);pointer-events:none}
.case-meta{display:flex;justify-content:space-between;gap:20px;font-size:11px;color:#62625d;margin:22px 0 12px}
.case-meta>span:last-child{font-size:10px;color:#73736c}
.case-card h3{font-size:clamp(24px,2.25vw,35px);font-weight:600;line-height:1.2;letter-spacing:-.045em}
.case-card h3 button{display:flex;width:100%;text-align:left;align-items:baseline;justify-content:space-between;gap:20px;padding:0;font:inherit;letter-spacing:inherit}
.case-card h3 button>span{font-size:25px;line-height:1;font-weight:400;color:#79796f;flex:none}
.case-card h3 button:hover{color:var(--violet)}
.case-summary{font-size:15px;line-height:1.65;color:#55554f;margin-top:17px;max-width:560px}
.case-tags{display:flex;gap:7px 14px;flex-wrap:wrap;margin-top:18px;font-size:10px;color:#65655d}
.case-tags span+span:before{content:"/";margin-right:14px;color:#99998e}
.case-results{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin:24px 0 0;padding-top:22px;border-top:1px solid var(--line)}
.case-results div{min-width:0}
.case-results dt{font-size:clamp(25px,2.5vw,39px);line-height:1.1;letter-spacing:-.055em;font-weight:600}
.case-results dd{margin:8px 0 0;font-size:11px;line-height:1.5;color:#62625a;max-width:210px}
.case-invite{align-self:stretch;border-top:1px solid var(--line);display:flex;flex-direction:column;justify-content:space-between;padding:34px 30px;background:#eeeee8;min-height:620px;border-radius:2px}
.case-invite>div{padding:30px 0}
.invite-heart{display:block;width:90px;height:90px;color:var(--violet);margin:0 0 35px;transform:rotate(-8deg)}
.case-invite h3{font-size:clamp(32px,3vw,48px);font-weight:600;line-height:1.1;letter-spacing:-.05em}
.case-invite p{margin:23px 0 28px;font-size:15px;line-height:1.6;color:#5c5c54;max-width:320px}
.invite-note{font-size:11px;color:#686862}
.case-modal{border:0;padding:0;background:var(--paper);color:var(--ink);width:min(1160px,calc(100% - 48px));max-height:90svh;overflow:auto;border-radius:5px;overscroll-behavior:contain}
.case-modal::backdrop{background:#10101ac4;backdrop-filter:blur(9px)}
.case-modal-layout{display:grid;grid-template-columns:1fr 1fr;align-items:start;position:relative}
.case-modal-media{position:sticky;top:0;border-radius:0}
.case-modal-copy{padding:50px 34px 35px}
.case-modal-copy h2{font-size:clamp(30px,3vw,46px);line-height:1.1;letter-spacing:-.05em;margin-top:22px}
.case-modal-copy>p{font-size:14px;line-height:1.75;color:#55554f;margin-top:22px}
.case-modal-copy .case-tags{margin-top:20px}
.modal-results{gap:22px 16px}
.modal-results[hidden]{display:none}
.modal-results dt{font-size:32px}
.modal-results dd{font-size:11px}
.case-modal-copy>h3{font-size:13px;font-weight:600;margin-top:30px}
.case-modal-copy ul{padding-left:17px;font-size:13px;line-height:1.7;color:#55554f;margin-top:12px}
.case-modal-copy>p.case-detail{font-size:12px;color:#686862;margin-top:24px;border-top:1px solid var(--line);padding-top:20px}
.case-modal-copy .button{margin-top:27px;font-size:12px;gap:20px}
.case-modal .dialog-close{position:sticky;float:right;top:12px;right:12px;margin:12px 12px -50px 0;width:38px;height:38px;z-index:5;box-shadow:0 1px 10px #0000000d}
.header-cta{background:var(--ink);color:white;border-color:var(--ink)}
.header-cta:hover{background:var(--violet);border-color:var(--violet)}
@media(min-width:1700px){.case-grid{gap:75px 40px}.case-summary{font-size:17px}.case-meta{font-size:13px}.case-tags{font-size:12px}.case-results dd{font-size:13px}}
@media(max-width:1000px){.case-grid{gap:50px 24px}.case-view{right:15px;bottom:15px;padding:12px 15px;font-size:11px;gap:17px}.case-summary{font-size:14px}.case-results{gap:14px}.case-results dd{font-size:10px}.case-invite{min-height:520px;padding:26px 24px}.case-modal-copy{padding:45px 24px 30px}.modal-results dt{font-size:27px}.case-modal-copy h2{font-size:32px}}
@media(max-width:700px){.projects{padding-top:58px;padding-bottom:65px}.case-grid{grid-template-columns:1fr;gap:45px}.case-media{border-radius:2px}.case-view{right:16px;bottom:16px;font-size:12px;padding:12px 17px;gap:22px}.case-card h3{font-size:28px}.case-meta{margin-top:18px;font-size:11px}.case-summary{font-size:14px;margin-top:13px;line-height:1.65}.case-tags{font-size:10px;margin-top:15px}.case-results{margin-top:21px;padding-top:20px;gap:20px}.case-results dt{font-size:30px}.case-results dd{font-size:11px}.case-invite{min-height:430px;padding:27px 25px}.case-invite h3{font-size:36px}.case-invite p{font-size:14px}.invite-heart{width:66px;height:66px;margin-bottom:28px}.case-invite>div{padding:30px 0}.case-modal{width:calc(100% - 24px);max-height:92svh}.case-modal-layout{grid-template-columns:1fr}.case-modal-media{position:relative;max-height:none}.case-modal-copy{padding:29px 24px 32px}.case-modal-copy h2{font-size:32px;margin-top:18px}.case-modal-copy>p{font-size:14px;margin-top:20px}.case-modal-copy .button{width:100%;padding:16px 20px;font-size:11px}.case-modal .dialog-close{position:sticky}.modal-results dt{font-size:30px}}
@media(prefers-reduced-motion:reduce){.case-media img,.case-view{transition:none}}

.art-zaklinateli .case-view{top:18px;bottom:auto}
