.service-scene{--scene-orange:#ff6a00;--scene-ink:#191d1e;display:grid;grid-template-columns:minmax(240px,.95fr) minmax(280px,1fr);align-items:center;gap:clamp(16px,3vw,42px);margin:0 0 28px;padding:24px 30px;background:#fff;border:1px solid #e5e7e8;border-radius:18px;overflow:hidden;color:var(--scene-ink)}
.service-scene-stage{position:relative;isolation:isolate;width:100%;aspect-ratio:3/2;max-height:330px;overflow:hidden;contain:layout paint}
.service-scene-orbit{position:absolute;inset:13% 24%;border-radius:50%;background:#fff1e7;z-index:-1}
.service-scene-art{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;z-index:1}
.service-scene-badge{position:absolute;left:36%;top:10%;width:27%;height:72%;object-fit:contain;z-index:3;filter:drop-shadow(4px 7px 0 #191d1e12);transform:rotate(-5deg);animation:service-badge-arrive 1.3s cubic-bezier(.2,.8,.2,1) both}
.service-scene-route{position:absolute;inset:0;width:100%;height:100%;z-index:2;stroke:var(--scene-orange);stroke-width:5;stroke-linecap:round;stroke-linejoin:round}
.service-scene-route>path:first-child{stroke-dasharray:420;stroke-dashoffset:0;animation:service-route-arrive 1.2s .6s both}
.service-scene-route-head{animation:service-ticket-arrive .4s 1.5s both}
.service-scene-ticket{position:absolute;left:72%;top:29%;width:17%;aspect-ratio:.76;background:#fff;border:3px solid var(--scene-ink);box-shadow:4px 4px 0 var(--scene-orange);border-radius:5px;z-index:4;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6%;transform:rotate(7deg);animation:service-ticket-arrive .65s 1.25s both}
.service-scene-ticket svg{width:42%;stroke:var(--scene-ink);stroke-width:2.3;stroke-linecap:round;stroke-linejoin:round}
.service-scene-ticket b{font-size:clamp(9px,1vw,13px);line-height:1.15}.service-scene-ticket i{width:59%;height:3px;background:#d4d7d8}.service-scene-ticket i:last-child{width:39%;align-self:flex-start;margin-left:20%}
.service-scene-seal{position:absolute;left:82%;top:25%;width:10%;aspect-ratio:1;border-radius:50%;background:var(--scene-orange);border:3px solid #fff;z-index:5;display:grid;place-items:center;animation:service-seal-arrive .5s 2s both}
.service-scene-seal svg{width:64%;stroke:#fff;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}
.service-scene figcaption{padding:10px 0}.service-scene-kicker{display:block;color:#a74400;font-size:11px;font-weight:750;letter-spacing:.1em;margin-bottom:10px}.service-scene figcaption>strong{font-size:clamp(21px,2vw,29px);line-height:1.4;letter-spacing:-.025em;display:block}.service-scene figcaption>p{font-size:14px;line-height:1.8;color:#5e6468;margin:12px 0 20px;max-width:40em}.service-scene ol{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:12px 20px}.service-scene li{display:flex;align-items:center;gap:7px;font-size:12px;font-weight:650}.service-scene li span{color:#ad4700;font-size:10px;font-weight:800;letter-spacing:.04em}
.service-scene--compact{grid-template-columns:1fr;gap:0;padding:14px 18px;margin:0 0 20px;background:#fff}.service-scene--compact .service-scene-stage{max-height:225px}.service-scene--compact figcaption>strong{font-size:18px}.service-scene--compact figcaption>p{font-size:12px;margin:8px 0 14px}.service-scene--compact ol{gap:8px 14px}.service-scene--compact li{font-size:11px}.service-scene--compact .service-scene-kicker{margin-bottom:6px}
.service-scene--job .service-scene-badge{left:44%;width:25%}.service-scene--job .service-scene-ticket{left:14%;top:22%;transform:rotate(-7deg)}.service-scene--job .service-scene-seal{left:27%;top:18%}
@keyframes service-badge-arrive{from{opacity:0;transform:translate(-18px,14px) rotate(-12deg)}to{opacity:1;transform:translate(0,0) rotate(-5deg)}}
@keyframes service-route-arrive{from{stroke-dashoffset:420}to{stroke-dashoffset:0}}
@keyframes service-ticket-arrive{from{opacity:0;translate:0 12px}to{opacity:1;translate:0 0}}
@keyframes service-seal-arrive{from{opacity:0;scale:1.3}to{opacity:1;scale:1}}
@media(max-width:760px){.service-scene{grid-template-columns:1fr;gap:0;padding:18px 20px}.service-scene-stage{max-height:245px}.service-scene figcaption>strong{font-size:21px}.service-scene figcaption>p{margin:8px 0 15px;font-size:13px}.service-scene ol{gap:10px 14px}.service-scene li{font-size:11px}.service-scene--compact .service-scene-stage{max-height:190px}.service-scene *{animation:none!important}}
@media(prefers-reduced-motion:reduce){.service-scene *{animation:none!important}}
.service-scene--artwork{display:block;min-width:0;padding:5px;border:0;background:transparent}.service-scene--artwork .service-scene-stage{max-height:none}.service-scene--artwork figcaption{display:none}
