/* Kaspersky work: a distinct chapter within the portfolio's reading hierarchy. */
.mint{--accent:#216f5c;--tint:#e1eee7;--wash:#c9e1d5}
.kaspersky-section{background:#163d36;color:#f5f8f3;padding-block:88px 64px;border-block:1px solid #0a2d26;scroll-margin-top:88px}
.kaspersky-intro{display:grid;grid-template-columns:1.1fr 1fr;gap:100px;align-items:end;margin-bottom:48px}
.kaspersky-intro .brand-logo{width:172px;height:42px;object-fit:contain;object-position:left;filter:brightness(0) invert(1);margin-bottom:32px}
.kaspersky-intro .eyebrow{display:block;color:#b9d3c8;font-size:.625rem}
.kaspersky-intro h2{font-size:clamp(2.8rem,5vw,4.8rem);font-weight:650;letter-spacing:-.055em;line-height:1.02;margin-top:20px}
.kaspersky-dek{font-size:1.625rem;line-height:1.3;letter-spacing:-.025em;font-weight:600;margin-bottom:20px}
.kaspersky-intro>div>p:not(.kaspersky-dek){color:#d2e0d9;font-size:1rem;line-height:1.7;max-width:490px}
.kaspersky-context{border-top:1px solid #6d9285;margin-top:24px;padding-top:18px;display:flex;flex-direction:column;gap:8px;font-size:.75rem;color:#c2d8cd}
.kaspersky-context>span:first-child{color:#fff;font-weight:600}
.kaspersky-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.kaspersky-grid .project-card{border:0;background:#edf2ec;color:var(--ink);border-radius:12px;overflow:hidden;margin:0}
.kaspersky-grid .project-link{display:flex;flex-direction:column;height:100%}
.kaspersky-grid .project-art{min-height:0;height:auto;aspect-ratio:1.6;background:#cfdfd5;padding:20px}
.kaspersky-grid .original-project-image{width:100%;height:100%;position:static;object-fit:cover;object-position:top;transform:none;border-radius:5px;box-shadow:0 8px 24px #0c332420}
.kaspersky-grid .project-copy{padding:30px;display:flex;flex-direction:column;flex:1}
.kaspersky-grid .project-brand{margin-bottom:22px}
.kaspersky-grid .project-brand img{max-width:125px;height:28px;object-position:left}
.kaspersky-grid .project-brand>span{font-size:.625rem}
.kaspersky-grid .project-copy .eyebrow{font-size:.6rem;gap:16px;line-height:1.6;align-items:start}
.kaspersky-grid .project-copy h3{font-size:1.75rem;line-height:1.12;letter-spacing:-.035em;margin-top:20px;font-weight:700}
.kaspersky-grid .project-thesis{font-size:1.125rem;line-height:1.45;font-weight:600;color:#294f43;margin-top:18px}
.kaspersky-grid .project-copy>p:not(.project-thesis){font-size:.9375rem;line-height:1.7;color:#4d5b55;margin-top:12px}
.kaspersky-grid .project-role{margin-top:22px;font-size:.8125rem;line-height:1.6;border-color:#b0c4b8}
.kaspersky-grid .case-link{margin-top:auto;padding-top:24px}
.kaspersky-grid .case-reading-preview{margin-block:18px 20px}
.kaspersky-grid .project-safe-kids{grid-column:1/-1}
.kaspersky-grid .project-safe-kids .project-link{display:grid;grid-template-columns:1.2fr 1fr}
.kaspersky-grid .project-safe-kids .project-art{aspect-ratio:auto;height:100%;padding:28px;min-height:480px}
.kaspersky-grid .project-safe-kids .original-project-image{object-fit:contain}
.kaspersky-grid .project-safe-kids h3{font-size:2.25rem}
.kaspersky-source-note{max-width:850px;margin-top:28px;color:#b9d1c5;font-size:.75rem;line-height:1.7}
.case-page.mint .project-brand>span{color:#4e6258}
.published-work{background:#dfeae3}
.published-gallery{border:1px solid #99b3a5;border-radius:12px;overflow:hidden;background:#f8faf7;margin-top:24px}
.gallery-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:14px 20px;border-bottom:1px solid #b2c4b9;background:#f4f7f2}
.gallery-controls{display:flex;flex-wrap:wrap;gap:6px}
.gallery-controls button{font-size:.75rem;font-weight:600;line-height:1.4;min-height:44px;padding:10px 14px;border-radius:6px;color:#40574b;border:1px solid transparent}
.gallery-controls button:hover{background:#e0eae1}
.gallery-controls button[aria-pressed=true]{color:#fff;background:#1e4b3c;border-color:#1e4b3c}
.gallery-toolbar>a{font-size:.75rem;font-weight:650;white-space:nowrap;color:#244e3e;min-height:44px;display:flex;align-items:center}
.capture-stage{background:#d0ded5;display:flex;align-items:flex-start;justify-content:center;padding:24px;min-height:300px}
.capture-stage>img{display:block;max-width:100%;height:auto;width:100%;border-radius:4px;box-shadow:0 6px 24px #183b2920}
.capture-stage[data-capture-layout=mobile]>img{width:375px;max-width:100%;max-height:812px;object-fit:contain}
.published-gallery figcaption{padding:24px 28px;display:grid;grid-template-columns:.7fr 1.3fr;gap:32px;align-items:start}
.published-gallery figcaption>span{font-size:.75rem;font-weight:700;line-height:1.7;color:#294d3d}
.published-gallery figcaption>p{font-size:.9375rem;line-height:1.7;color:#4d6054;max-width:65ch}
.capture-note{font-size:.75rem;line-height:1.7;color:#4d6054;max-width:800px;margin-top:18px}
.case-evidence a{color:#245e49;text-decoration:underline;text-underline-offset:3px}
@media(max-width:900px){.kaspersky-intro{gap:40px}.kaspersky-grid .project-safe-kids .project-link{grid-template-columns:1fr 1fr}.kaspersky-grid .project-copy{padding:24px}.kaspersky-grid .project-safe-kids .project-art{min-height:400px;padding:20px}.kaspersky-grid .project-safe-kids h3{font-size:1.8rem}}
@media(max-width:650px){.kaspersky-section{padding-block:56px 44px}.kaspersky-intro{grid-template-columns:1fr;gap:28px;margin-bottom:32px}.kaspersky-intro h2{font-size:2.8rem}.kaspersky-intro .brand-logo{margin-bottom:24px}.kaspersky-dek{font-size:1.4rem}.kaspersky-grid{grid-template-columns:1fr;gap:24px}.kaspersky-grid .project-safe-kids .project-link{display:flex}.kaspersky-grid .project-safe-kids .project-art{min-height:0;aspect-ratio:1.6;height:auto;padding:20px}.kaspersky-grid .project-safe-kids .original-project-image{object-fit:cover}.kaspersky-grid .project-copy h3,.kaspersky-grid .project-safe-kids h3{font-size:1.7rem}.kaspersky-grid .project-brand{flex-wrap:wrap;gap:8px}.kaspersky-grid .project-copy .eyebrow{flex-wrap:wrap}.gallery-toolbar{align-items:flex-start;flex-direction:column;gap:6px;padding:14px}.gallery-controls{gap:4px}.gallery-controls button{padding:10px 9px;font-size:.6875rem}.gallery-toolbar>a{align-self:flex-end}.capture-stage{padding:12px;min-height:0}.published-gallery figcaption{grid-template-columns:1fr;gap:8px;padding:20px}.published-gallery figcaption>p{font-size:.875rem}.case-page.mint .case-reading{align-items:flex-start}.case-page.mint .project-brand{flex-wrap:wrap;gap:12px}}
