/* Es.Cultura case study; shared presentation with the existing project pages. */
.es-case [id]{scroll-margin-top:105px}
.es-case .es-client-logo{display:block;width:205px;height:auto;margin-bottom:28px}
.es-case .es-status{display:inline-flex;align-items:center;gap:9px;border:1px solid #b7d5c8;background:#eff8f3;color:#215a43;border-radius:24px;padding:7px 14px;font-size:12px;font-weight:700;margin-top:24px}
.es-case .es-status>span{width:7px;height:7px;border-radius:50%;background:#24704d}
.es-case .pd-hero-grid{grid-template-columns:1.25fr .85fr;gap:68px}
.es-case .es-hero-screen{background:white;border:1px solid #dfe3eb;border-radius:15px;overflow:hidden;box-shadow:0 24px 60px -30px #4b5c9280;transform:rotate(1.5deg)}
.es-case .es-window{display:flex;align-items:center;gap:5px;padding:15px;border-bottom:1px solid #e8ebf1}
.es-case .es-window>span{width:6px;height:6px;border-radius:50%;background:#b9c2d8}
.es-case .es-window strong{font-size:9px;letter-spacing:.06em;color:#62697a;margin-left:7px}
.es-case .es-hero-screen img{display:block;width:100%;height:480px;object-fit:cover;object-position:top}
.es-case figcaption{font-size:12px;color:#62697a;line-height:1.6}
.es-case .es-hero-screen figcaption{padding:20px}
.es-case figcaption a{color:#364b83;text-underline-offset:4px}
.es-case .es-caption{font-size:12px;color:#62697a;line-height:1.7;margin-top:23px}
.es-case .es-section{padding-block:72px}
.es-case .es-soft{padding-block:72px;background:#f3f5fa;border-block:1px solid #dfe3eb}
.es-case .es-game-cards{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.es-case .es-game-cards>div{padding:32px;background:white;border:1px solid #dfe3eb;border-radius:10px}
.es-case .es-game-cards svg{width:36px;height:36px;color:#4b5c92;margin-bottom:20px}
.es-case .es-game-cards h3{margin-bottom:17px;font-size:25px}
.es-case .es-game-cards p{font-size:15px;color:#4b5262}
.es-case .es-game-cards .es-game-key{border-top:1px solid #e2e6ee;padding-top:20px;margin-top:23px;font-size:13px}
.es-case .es-game-key strong{display:block;color:#202b48}
.es-case .es-demo{margin-top:32px;padding:28px;border:1px solid #dfe3eb;border-radius:12px;background:white}
.es-case .es-demo-head{display:flex;justify-content:space-between;align-items:center;gap:22px;margin-bottom:24px}
.es-case .es-demo-head strong,.es-case .es-demo-head span{display:block}
.es-case .es-demo-head span{font-size:11px;color:#62697a;margin-top:5px}
.es-case .es-mode-controls{display:none;gap:7px}
.es-case.es-ready .es-mode-controls{display:flex}
.es-case .es-mode-controls button{border:1px solid #b9c3d9;border-radius:5px;background:white;color:#364b83;padding:12px 18px;min-height:44px;font:700 13px Arial,sans-serif;cursor:pointer;text-transform:none;letter-spacing:normal}
.es-case .es-mode-controls button[aria-pressed=true]{background:#4b5c92;color:white}
.es-case button:focus-visible{outline:3px solid #a46c00;outline-offset:4px}
.es-case .es-map{display:block;width:100%;height:auto;max-height:360px}
.es-case .es-zones{opacity:.12}
.es-case .es-zones text{fill:white;font:bold 17px Arial,sans-serif;text-anchor:middle}
.es-case [data-mode=poly] .es-zones{opacity:1}
.es-case [data-mode=poly] .es-route{opacity:.15}
.es-case .es-demo-description{margin-top:23px;font-size:15px;max-width:900px}
.es-case .es-demo-legend{margin-top:12px;font-size:12px;color:#4b5262}
.es-case .es-intro{max-width:820px;margin-top:25px}
.es-case .es-wide-screen{margin-top:32px;border:1px solid #dfe3eb;border-radius:12px;overflow:hidden;box-shadow:0 20px 50px -35px #4b5c92}
.es-case .es-wide-screen img{display:block;width:100%;height:auto}
.es-case .es-wide-screen figcaption{padding:18px 24px;background:#f7f8fb;border-top:1px solid #e5e8ef}
.es-case .es-screen-story{display:grid;grid-template-columns:.85fr 1.25fr;align-items:center;gap:72px;margin-top:75px}
.es-case .es-phone-screen{border:1px solid #dfe3eb;border-radius:14px;overflow:hidden;background:white;box-shadow:0 20px 50px -35px #4b5c92;max-width:390px;margin:auto}
.es-case .es-phone-screen img{display:block;width:100%;height:auto}
.es-case .es-phone-screen figcaption{padding:18px 22px;border-top:1px solid #e5e8ef;background:#f7f8fb}
.es-case .es-screen-story h2{margin-bottom:26px}
.es-case .es-screen-story .pd-eyebrow{font-size:11px;color:#4b5c92}
.es-case .es-evolution{padding-block:70px;background:#f3f5fa;border-block:1px solid #dfe3eb}
.es-case .es-timeline{display:grid;grid-template-columns:repeat(3,1fr);gap:36px;list-style:none;padding:0;margin:40px 0 0}
.es-case .es-timeline li{border-top:2px solid #c8d0e2;padding-top:25px}
.es-case .es-timeline li>span{display:block;font-size:38px;line-height:1;color:#4b5c92;font-weight:700;margin-bottom:20px}
.es-case .es-timeline h3{font-size:20px;margin-bottom:15px}
.es-case .es-timeline p{font-size:14px;color:#4b5262}
.es-case .es-stack{display:flex;flex-wrap:wrap;gap:10px;margin-top:32px}
.es-case .es-stack span{border:1px solid #cbd3e3;background:white;border-radius:24px;font-size:12px;padding:6px 15px;color:#364b83}
.es-case .es-tv{background:#202b48;color:white;padding-block:76px}
.es-case .es-tv-grid{display:grid;grid-template-columns:.9fr 1.2fr;gap:65px;align-items:center}
.es-case .es-tv h2{color:white;margin-bottom:27px}
.es-case .es-tv .pd-eyebrow{color:#ffca42}
.es-case .es-tv .pd-prose p{color:#d5dbea}
.es-case .es-tv .pd-prose a{color:#ffda76}
.es-case .es-tv-frame{background:radial-gradient(ellipse at center,#586ca7,#293858);border:7px solid #7282af;border-radius:24px;padding:32px;text-align:center;box-shadow:0 0 0 8px #172037,0 25px 60px #11182f}
.es-case .es-tv-label{display:block;color:#fff;font-size:12px;font-weight:700;letter-spacing:.2em}
.es-case .es-tv-frame strong{display:block;font-size:85px;line-height:1.05;font-weight:900;letter-spacing:-.06em;color:#ffce55;margin:26px 0;text-shadow:0 5px #101b39}
.es-case .es-tv-strip{display:flex;justify-content:center;gap:8px}
.es-case .es-tv-strip span{border:1px solid #8e9ab7;border-radius:20px;padding:4px 9px;font-size:9px;letter-spacing:.06em}
.es-case .es-tv-visual>p{font-size:11px;color:#c6cee1;text-align:center;margin-top:28px}
.es-case .es-evidence{display:grid;grid-template-columns:1fr 1fr;gap:0 42px;margin-top:28px}
.es-case .es-evidence>div{padding-block:24px;border-bottom:1px solid #dfe3eb}
.es-case .es-evidence dt{font-size:12px;color:#4b5c92;font-weight:700;margin-bottom:10px}
.es-case .es-evidence dd{font-size:15px}
.es-case .es-references{display:flex;flex-wrap:wrap;gap:18px;margin-top:20px;font-size:12px;color:#364b83}
.es-case .es-related{border-top:1px solid #dfe3eb}
.es-case .es-related-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:32px}
.es-case .es-related-grid a{display:block;background:#f7f8fb;border:1px solid #dfe3eb;border-radius:8px;padding:24px;text-decoration:none}
.es-case .es-related-grid a:hover{background:#edf0f7;border-color:#4b5c92}
.es-case .es-related-grid strong,.es-case .es-related-grid span{display:block}
.es-case .es-related-grid strong{font-size:15px;color:#364b83}
.es-case .es-related-grid span{font-size:13px;color:#4b5262;margin-top:12px}
.es-case .pd-cta{margin-top:0}
@media(max-width:950px){.es-case .pd-hero-grid,.es-case .es-screen-story,.es-case .es-tv-grid{gap:34px}.es-case .es-demo-head{align-items:start;flex-direction:column}.es-case .es-tv-frame{padding:25px}.es-case .es-tv-frame strong{font-size:66px}.es-case .es-related-grid{grid-template-columns:1fr 1fr}}
@media(max-width:680px){.es-case .pd-hero-grid,.es-case .es-game-cards,.es-case .es-screen-story,.es-case .es-tv-grid,.es-case .es-timeline,.es-case .es-evidence,.es-case .es-related-grid{grid-template-columns:1fr}.es-case .es-hero-screen{transform:none;max-width:440px;margin:auto}.es-case .es-hero-screen img{height:auto;max-height:450px;object-fit:cover;object-position:top}.es-case .es-section,.es-case .es-soft,.es-case .es-evolution,.es-case .es-tv{padding-block:46px}.es-case .es-game-cards>div{padding:25px}.es-case .es-demo{padding:18px}.es-case .es-mode-controls button{padding:11px 15px}.es-case .es-screen-story{margin-top:42px}.es-case .es-phone-screen{max-width:340px}.es-case .es-screen-story .pd-prose{order:-1}.es-case .pd-service-grid{grid-template-columns:1fr}.es-case .es-tv-visual{max-width:360px;width:100%;margin:12px auto 22px}.es-case .es-tv-grid{gap:26px}.es-case .es-tv-frame strong{font-size:78px}.es-case .es-wide-screen figcaption{padding:16px}.es-case .es-client-logo{width:180px}}
@media(prefers-reduced-motion:reduce){.es-case *{transition:none!important;animation:none!important}}
