.rm-case .rm-city{background:#eaf2ff;padding:clamp(64px,7vw,112px) 0;color:#153064}
.rm-case .rm-city__heading{max-width:760px;margin-bottom:36px}
.rm-case .rm-city__heading h2{font-size:clamp(34px,4.6vw,68px);font-weight:500;line-height:1.07;letter-spacing:-.045em;color:#17366c!important;margin:0}
.rm-case .rm-city__heading>p:last-child{max-width:590px;font-size:clamp(15px,1.3vw,19px);line-height:1.65;color:#506887;margin:22px 0 0}
.rm-case .rm-city .rm-kicker{color:#2661d6;margin-bottom:18px}
.rm-city__caption{display:flex;align-items:center;justify-content:space-between;gap:16px;font-size:12px;line-height:1.5;color:#526b8e;margin-bottom:16px}
.rm-city__viewport{position:relative;min-height:760px;isolation:isolate;border:1px solid #c8daf3;border-radius:24px;overflow:hidden;background:#f3f7ff;box-shadow:0 20px 60px #1e438817}
.rm-city__frame{display:block;width:100%;height:760px;border:0;background:#fff;opacity:0;pointer-events:none}
.rm-city[data-state=ready] .rm-city__frame{opacity:1;pointer-events:auto}
.rm-city__loading{position:absolute;inset:0;z-index:2;display:grid;place-items:start center;padding:clamp(60px,9vw,140px) 28px 45px;background:#f0f5ff;color:#17366c}
.rm-city__loading[hidden],.rm-city__retry[hidden]{display:none!important}
.rm-city__loading-content{width:min(100%,420px);text-align:center}
.rm-case .rm-city__loading h3{font-size:clamp(26px,2.8vw,37px);font-weight:500;letter-spacing:-.035em;line-height:1.18;color:#17366c!important;margin:0}
.rm-case [data-pdd-status]{min-height:45px;margin:19px 0 26px;font-size:14px;line-height:1.65;color:#536b8b}
.rm-city__graphic{position:relative;display:flex;align-items:flex-end;justify-content:center;gap:8px;width:90px;height:62px;margin:0 auto 32px;padding-bottom:8px}
.rm-city__graphic span{width:18px;border:1px solid #6290d4;background:#d7e6fb;animation:rm-city-breathe 2.4s ease-in-out infinite}
.rm-city__graphic span:nth-child(1){height:26px;animation-delay:-1.6s}.rm-city__graphic span:nth-child(2){height:45px;animation-delay:-.8s}.rm-city__graphic span:nth-child(3){height:34px}.rm-city__graphic i{position:absolute;bottom:0;left:4px;right:4px;height:1px;background:#9ab7dd}
.rm-city__progress{height:3px;border-radius:3px;background:#d6e3f6;overflow:hidden}
.rm-city__progress>span{display:block;height:100%;background:#2b66e8;transform:scaleX(var(--city-progress,0));transform-origin:left;transition:transform .2s}
.rm-city__progress-caption{display:flex;justify-content:space-between;gap:12px;margin-top:12px;color:#526a8b;font-size:10px;line-height:1.6}
.rm-city__progress-caption [data-pdd-percent]{font-variant-numeric:tabular-nums}
.rm-case .rm-city__loading-note{margin:27px auto 0;max-width:285px;font-size:12px;color:#5a7090;line-height:1.7}
.rm-city__retry{display:flex;justify-content:space-between;align-items:center;gap:15px;width:100%;min-height:50px;margin-top:28px;border:0;border-radius:9px;background:#2461e4;color:#fff;padding:15px 18px;font:inherit;font-size:13px;cursor:pointer}
.rm-city__retry:focus-visible{outline:3px solid #769ffc;outline-offset:4px}.rm-city[data-state=error] .rm-city__graphic span{animation-play-state:paused}.rm-city__noscript{color:#506887;font-size:14px;margin-top:16px}
@keyframes rm-city-breathe{0%,100%{opacity:.5;transform:translateY(0)}50%{opacity:1;transform:translateY(-3px)}}
@media(max-width:820px){.rm-city__viewport{min-height:1080px}.rm-city__frame{height:1080px}.rm-city__loading{padding-top:100px}.rm-city__caption{font-size:11px}}
@media(max-width:520px){.rm-case .rm-city{padding-block:64px}.rm-city__viewport{border-radius:18px;min-height:1190px}.rm-city__frame{height:1190px}.rm-city__loading{padding:85px 24px 36px}.rm-city__caption{align-items:flex-start;flex-direction:column;gap:4px}.rm-case .rm-city__heading{margin-bottom:26px}.rm-case .rm-city__heading h2{font-size:36px}}
@media(prefers-reduced-motion:reduce){.rm-city__graphic span{animation:none}.rm-city__progress>span{transition:none}}

body#body.page-realmobile .rm-case .rm-city__heading h2,body#body.page-realmobile .rm-case .rm-city__loading h3{color:#17366c!important}
body#body.page-realmobile .rm-case .rm-city__heading>p:last-child{color:#506887!important;margin:22px 0 0}
body#body.page-realmobile .rm-case .rm-city__heading{margin-bottom:36px}
body#body.page-realmobile .rm-case .rm-city__loading h3{margin:0}
body#body.page-realmobile .rm-case [data-pdd-status]{color:#536b8b!important;margin:19px 0 26px}
body#body.page-realmobile .rm-case .rm-city__loading-note{color:#5a7090!important;margin:27px auto 0}
