/* 온리마음 앱 쇼케이스 */
.oms{--oms-c:#f09837;--oms-soft:#fff3e6;position:relative;overflow:hidden;padding:96px 20px 104px;background:var(--oms-soft);font-family:Pretendard,'Apple SD Gothic Neo','Malgun Gothic',sans-serif;letter-spacing:-.4px;color:#1d1d1f;transition:background .6s}
.oms *,.oms *:before,.oms *:after{box-sizing:border-box}
.oms-head{max-width:1100px;margin:0 auto 46px;text-align:center}
.oms-title{margin:0 0 28px !important;font-size:40px !important;line-height:1.25 !important;font-weight:800 !important;letter-spacing:-1.2px !important;color:#1d1d1f !important;word-break:keep-all}
.oms-tabs{position:relative;display:inline-grid;grid-auto-flow:column;grid-auto-columns:1fr;padding:6px;border-radius:999px;background:#fff;box-shadow:0 6px 24px rgba(30,20,10,.08),inset 0 0 0 1px rgba(0,0,0,.05)}
.oms-tab-thumb{position:absolute;top:6px;bottom:6px;left:6px;width:calc((100% - 12px)/2);border-radius:999px;background:var(--oms-c);box-shadow:0 6px 18px color-mix(in srgb,var(--oms-c) 45%,transparent);transition:transform .45s cubic-bezier(.2,.8,.2,1),background .4s}
.oms-tab{position:relative;z-index:1;display:flex;align-items:center;justify-content:center;gap:9px;min-width:178px;height:52px;padding:0 22px;border:0;border-radius:999px;background:none;font:inherit;font-size:16px;font-weight:800;color:#4a4a4a;cursor:pointer;transition:color .3s}
.oms-tab img{width:28px;height:28px;border-radius:8px;box-shadow:0 1px 4px rgba(0,0,0,.15)}
.oms-tab[aria-selected="true"]{color:#fff}
.oms-tab:focus-visible{outline:3px solid #175bb8;outline-offset:3px}
.oms-body{display:grid;grid-template-columns:minmax(300px,420px) minmax(0,560px);justify-content:center;align-items:center;gap:64px;max-width:1100px;margin:0 auto}
/* 휴대폰 */
.oms-stage{position:relative;display:flex;flex-direction:column;align-items:center;perspective:1300px}
.oms-phone{--rx:0deg;--ry:0deg;position:relative;width:300px;aspect-ratio:9/19.5;padding:11px;border-radius:50px;background:linear-gradient(145deg,#2c2c2e,#0c0c0d 60%,#232325);box-shadow:0 1px 0 1px #48484a inset,0 0 0 2px #0a0a0a,0 50px 80px -30px rgba(30,20,10,.45),transform:rotateX(var(--rx)) rotateY(var(--ry));transform-style:preserve-3d;transition:transform .35s cubic-bezier(.2,.8,.2,1),box-shadow .6s}
.oms-phone:before{content:"";position:absolute;top:22px;left:50%;z-index:3;width:92px;height:26px;margin-left:-46px;border-radius:999px;background:#050505}
.oms-screen{position:relative;width:100%;height:100%;overflow:hidden;border-radius:40px;background:#fff;touch-action:pan-y}
/* 스크린샷(1242×2688)은 자르지 않고 통째로 보여 줍니다. 위쪽은 카메라 자리(상태 표시줄 높이)만큼 비워 내용이 가려지지 않게 */
.oms-shot{position:absolute;top:var(--oms-bar,38px);left:0;right:0;bottom:6px;width:100%;height:calc(100% - var(--oms-bar,38px) - 6px);object-fit:contain;object-position:top center;opacity:0;transform:translateX(16%) scale(.98);transition:opacity .55s ease,transform .7s cubic-bezier(.2,.8,.2,1)}
.oms-shot.prev{transform:translateX(-16%) scale(.98)}
.oms-shot.on{opacity:1;transform:none}
.oms-shot.oms-broken{background:var(--oms-soft)}
.oms-dots{display:flex;gap:7px;margin-top:22px}
.oms-dot{width:8px;height:8px;padding:0;border:0;border-radius:999px;background:rgba(0,0,0,.18);cursor:pointer;transition:width .3s,background .3s}
.oms-dot.on{width:26px;background:var(--oms-c)}
/* 설명 */
.oms-app{display:flex;flex-direction:column;gap:4px;margin-bottom:18px}
.oms-app b{font-size:28px;font-weight:800;letter-spacing:-.8px}
.oms-app span{font-size:15px;font-weight:500;color:#6b6b6b}
.oms-steps{list-style:none;margin:0 0 26px;padding:0;counter-reset:none}
.oms-step{margin:0 0 8px}
.oms-step button{position:relative;display:flex;align-items:flex-start;gap:14px;width:100%;padding:16px 18px;overflow:hidden;border:0;border-radius:16px;background:transparent;font:inherit;text-align:left;color:inherit;cursor:pointer;transition:background .3s,box-shadow .3s,transform .3s}
.oms-step button:hover{background:rgba(255,255,255,.6)}
.oms-step.on button{background:#fff;box-shadow:0 10px 30px rgba(30,20,10,.08);transform:translateX(4px)}
.oms-step button:focus-visible{outline:3px solid #175bb8;outline-offset:2px}
.oms-num{flex:none;display:flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:50%;background:rgba(0,0,0,.06);font-size:14px;font-weight:800;color:#777;transition:background .3s,color .3s}
.oms-step.on .oms-num,.oms-step.done .oms-num{background:var(--oms-c);color:#fff}
.oms-tx{display:flex;flex-direction:column;gap:3px}
.oms-tx b{font-size:17px;font-weight:800;color:#2a2a2a}
.oms-tx span{max-height:0;overflow:hidden;font-size:14.5px;line-height:1.6;color:#666;opacity:0;transition:max-height .45s ease,opacity .35s ease;word-break:keep-all}
.oms-step.on .oms-tx span{max-height:80px;opacity:1}
.oms-step:not(.on) .oms-tx b{color:#6f6f6f}
.oms-bar{position:absolute;left:18px;right:18px;bottom:0;height:3px;border-radius:3px;background:var(--oms-c);transform:scaleX(0);transform-origin:left;opacity:0}
.oms-step.on .oms-bar{opacity:1;animation:oms-fill linear forwards}
.oms-paused .oms-step.on .oms-bar,.oms-hold .oms-step.on .oms-bar{animation-play-state:paused}
@keyframes oms-fill{to{transform:scaleX(1)}}
/* 스토어 */
.oms-stores{display:flex;flex-wrap:wrap;align-items:center;gap:16px 22px}
.oms-btns{display:flex;flex-wrap:wrap;gap:10px}
.oms-store{display:inline-flex;align-items:center;gap:10px;height:54px;padding:0 20px 0 16px;border-radius:14px;background:#111;color:#fff !important;text-decoration:none !important;box-shadow:0 8px 20px rgba(0,0,0,.14);transition:transform .2s,box-shadow .2s,background .2s}
.oms-store:hover{transform:translateY(-2px);box-shadow:0 12px 26px rgba(0,0,0,.2);background:#000}
.oms-store svg{width:24px;height:24px;fill:#fff}
.oms-store span{display:flex;flex-direction:column;line-height:1.1}
.oms-store small{font-size:10.5px;font-weight:600;opacity:.8;letter-spacing:.02em}
.oms-store b{font-size:18px;font-weight:700;letter-spacing:-.2px}
.oms-store.oms-primary{background:var(--oms-c);box-shadow:0 10px 24px color-mix(in srgb,var(--oms-c) 45%,transparent)}
.oms-qr{display:flex;align-items:center;gap:12px;padding:10px 14px 10px 10px;border-radius:16px;background:#fff;box-shadow:inset 0 0 0 1px rgba(0,0,0,.06)}
.oms-qr-code{width:84px;height:84px;padding:6px;border-radius:10px;background:#fff}
.oms-qr-code svg{display:block;width:100%;height:100%}
.oms-qr p{display:flex;flex-direction:column;gap:3px;margin:0;font-size:12.5px;line-height:1.45;color:#777;max-width:150px;word-break:keep-all}
.oms-qr b{font-size:14.5px;color:#222}
.oms-more{flex-basis:100%;font-size:14.5px;font-weight:700;color:var(--oms-c) !important;text-decoration:none !important}
@media (max-width:900px){
  .oms{padding:70px 18px 80px}
  .oms-title{font-size:28px !important}
  .oms-body{grid-template-columns:1fr;gap:34px}
  .oms-phone{width:250px;border-radius:44px}
  .oms-screen{border-radius:34px;--oms-bar:32px}
  .oms-phone:before{top:19px;width:78px;height:22px;margin-left:-39px}
  .oms-app{justify-content:center}
  .oms-step.on button{transform:none}
  .oms-stores{justify-content:center}
  .oms-btns{width:100%;justify-content:center}
  .oms-more{text-align:center}
}
@media (max-width:420px){.oms-tab{min-width:0;padding:0 16px;font-size:15px}.oms-store{flex:1;justify-content:center;padding:0 12px}}
@media (prefers-reduced-motion:reduce){.oms *{animation:none !important;transition:none !important}}

.oms-phone.oms-fade{opacity:.2;transition:opacity .18s}

/* 아래 3D 섹션(흰색에서 시작)으로 이어지도록 끝을 흰색으로 */
.oms:after{content:"";position:absolute;left:0;right:0;bottom:0;height:90px;background:linear-gradient(rgba(255,255,255,0),#fff);pointer-events:none}

/* 3D 다음 마무리 띠: 상담 연결 */
.om-cta{padding:84px 20px 96px;background:#fff;text-align:center;font-family:Pretendard,'Apple SD Gothic Neo','Malgun Gothic',sans-serif;letter-spacing:-.4px;color:#1d1d1f}
.om-cta *{box-sizing:border-box}
.om-cta h2{margin:0 0 12px !important;font-size:30px !important;font-weight:800 !important;letter-spacing:-.9px !important;color:#1d1d1f !important;word-break:keep-all}
.om-cta p{max-width:560px;margin:0 auto 28px !important;font-size:16px !important;line-height:1.7 !important;color:#5e5e5e !important;word-break:keep-all}
.om-cta-btns{display:flex;flex-wrap:wrap;justify-content:center;gap:10px}
.om-cta a{display:inline-flex;align-items:center;justify-content:center;height:52px;padding:0 24px;border-radius:12px;font-size:16px;font-weight:800;text-decoration:none !important}
.om-cta .om-cta-main{background:#f09837;color:#fff !important}
.om-cta .om-cta-main:hover{background:#e3851f}
.om-cta .om-cta-sub{background:#fff;color:#1d1d1f !important;box-shadow:inset 0 0 0 1.5px #e4ddd4}
.om-cta .om-cta-sub:hover{box-shadow:inset 0 0 0 1.5px #c9bfb3}
.om-cta-note{margin-top:18px;font-size:14px;color:#8a8279}
.om-cta-note a{display:inline;height:auto;padding:0;font-size:14px;font-weight:700;color:#c86b12 !important}
@media (max-width:600px){.om-cta{padding:60px 18px 72px}.om-cta h2{font-size:24px !important}.om-cta-btns a{flex:1 1 100%}}
