/* Natural apartment photography and a quiet blue-white information layer. */
.photo-stage{background:#e7edf5;box-shadow:0 26px 65px #1c2e5426;border:1px solid #dbe3ef}
.photo-stage #apartment-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:1;max-width:none;will-change:transform}
.photo-stage::after{content:'';position:absolute;inset:0;z-index:2;pointer-events:none;background:linear-gradient(180deg,#182a4b00 38%,#17223808 48%,#172238d9 80%,#172238 100%)}
.photo-stage .world-title{inset:20px 20px auto;color:#172238}
.photo-stage .world-title>span{background:#fffffff0;padding:10px 14px;border:1px solid #ffffffa8;box-shadow:0 6px 20px #152b4212;border-radius:12px;gap:8px;font-size:19px}
.photo-stage .world-title button{width:42px;height:42px;background:#fffffff2;color:#233450;border-color:#dce5f0;box-shadow:0 4px 12px #152b4212}
.photo-stage .world-caption{background:none;bottom:85px;left:22px;right:22px;padding:0;text-align:left}
.photo-stage .world-caption>span{font-size:23px;line-height:1.45;font-weight:700;letter-spacing:-.035em;color:#fff}
.photo-stage .world-caption p{font-size:14px;color:#d8e2f4;margin-top:9px;line-height:1.65}
.photo-stage .world-steps{bottom:23px;left:20px;right:20px;gap:7px}
.photo-stage .world-steps button{background:#ffffff12;border-color:#ffffff35;color:#dce5f5;font-size:13px;padding:12px 4px;border-radius:8px}
.photo-stage .world-steps button.active{background:#4b61dd;border-color:#9aafff;color:#fff}
.photo-stage .world-steps button:focus-visible,.photo-stage .world-title button:focus-visible{outline:3px solid #b5caff;outline-offset:3px}
.photo-insight{position:absolute;top:105px;left:20px;z-index:3;width:192px;border:1px solid #ffffffb0;background:#fffffff2;border-radius:14px;box-shadow:0 10px 28px #17223814;padding:17px 18px;color:#20304c;backdrop-filter:blur(10px)}
.photo-insight .insight-label{display:block;color:#64728c;font-size:11px;margin-bottom:9px;line-height:1.5}
.photo-insight strong{display:flex;align-items:center;gap:7px;font-size:15px;line-height:1.5;letter-spacing:-.02em}
.photo-insight .icon{width:18px;height:18px;color:#5264d9;flex-shrink:0}
.photo-insight ul{list-style:none;margin:12px 0 0;padding:0;font-size:12px;line-height:1.9;color:#5d6b83}
.photo-insight li::before{content:'';display:inline-block;width:5px;height:5px;border-radius:50%;margin-right:7px;background:#6d83df;vertical-align:middle}.photo-insight li:last-child::before{background:#8e7dcc}
.photo-insight small{display:block;font-size:10px;line-height:1.6;color:#64728c;margin-top:10px}
.photo-bars{height:43px;display:flex;align-items:end;gap:5px;margin-top:14px;border-bottom:1px solid #dce3ef;padding:0 2px 3px}
.photo-bars i{flex:1;height:55%;background:#8395df;border-radius:3px 3px 0 0}.photo-bars i:nth-child(2){height:70%}.photo-bars i:nth-child(3){height:48%}.photo-bars i:nth-child(4){height:90%;background:#5265d1}.photo-bars i:nth-child(5){height:76%}.photo-bars i:nth-child(6){height:62%;background:#8b80c6}.photo-bars i:nth-child(7){height:42%}.photo-bars i:nth-child(8){height:56%}
.photo-options{display:grid;gap:7px;margin-top:14px}.photo-options span{font-size:12px;color:#566888;background:#f1f4fc;border:1px solid #e4e9f5;border-radius:6px;padding:7px 9px}.photo-options span:last-child{color:#70709a;background:#f7f5fb}
.photo-connect{display:flex;align-items:center;justify-content:space-between;margin-top:14px;gap:5px;font-size:11px}.photo-connect span{background:#eef2fb;border-radius:6px;padding:8px 7px}.photo-connect b{font-size:17px;font-weight:500;color:#6580d6}
@media(max-width:980px){.photo-insight{width:177px;padding:14px 15px}.photo-stage .world-caption>span{font-size:21px}.photo-stage .world-caption p{font-size:12px}}
@media(max-width:720px){.photo-stage{height:560px}.photo-stage .world-title{inset:17px 17px auto}.photo-stage .world-title>span{font-size:17px;padding:9px 12px}.photo-stage .world-title button{width:39px;height:39px}.photo-insight{top:91px;left:17px;width:170px;padding:14px 15px}.photo-stage .world-caption{left:19px;right:19px;bottom:82px}.photo-stage .world-caption>span{font-size:21px}.photo-stage .world-caption p{font-size:12px}.photo-stage .world-steps{left:16px;right:16px;gap:5px;bottom:23px}.photo-stage .world-steps button{font-size:11px;padding:11px 3px}}
@media(max-width:360px){.photo-stage{height:510px}.photo-insight{width:156px;top:88px;padding:13px 14px}.photo-insight strong{font-size:14px}.photo-stage .world-caption>span{font-size:18px}.photo-stage .world-caption p{font-size:11px}.photo-stage .world-steps button{font-size:10px}}
