@import url('https://cdn.jsdelivr.net/gh/orioncactus/pretendard@v1.3.9/dist/web/variable/pretendardvariable-dynamic-subset.min.css');
:root{--accent:#9180db;--tint:#f2eefb;color:#242724;background:#fff;font-family:'Pretendard Variable',Pretendard,-apple-system,BlinkMacSystemFont,sans-serif}*{box-sizing:border-box}body{margin:0}a{color:inherit;text-decoration:none}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit}button:focus-visible,a:focus-visible,.phone:focus-visible{outline:3px solid var(--accent);outline-offset:6px}header{height:100px;display:flex;align-items:center;justify-content:space-between;padding:0 5.3vw}.brand{font-size:25px;letter-spacing:-1.1px;font-weight:720;display:flex;align-items:center;gap:10px}.brand svg{width:23px;height:29px;fill:none;stroke:#253b2d;stroke-width:1.8;stroke-linejoin:round}.brand>span{font-size:10px;align-self:flex-start;margin:5px 0 0 -5px}.contact{font-size:13px}.contact span{margin-left:16px}.showcase{position:relative;text-align:center;overflow:hidden;padding:13px 20px 25px}.eyebrow{font-size:10px;letter-spacing:3px;color:#777e79;position:relative;z-index:2}.ambient-word{position:absolute;top:112px;left:0;right:0;font-family:Georgia,serif;font-style:italic;font-size:clamp(120px,20vw,300px);letter-spacing:-.07em;line-height:1;color:#f4f5f2;user-select:none;pointer-events:none}.stage{height:421px;position:relative;display:flex;align-items:center;justify-content:center;gap:115px;margin-top:18px}.phone-area{position:relative;width:190px;height:399px;perspective:1200px}.phone{height:366px;width:178px;border:4px solid #313431;border-radius:28px;background:#313431;padding:3px;position:relative;transform:rotate(-7deg) rotateY(-10deg);box-shadow:1px 0 0 1px #999d98,8px 12px 14px #20282018;animation:float 6s ease-in-out infinite;touch-action:pan-y;cursor:grab;user-select:none;will-change:transform}.phone:active{cursor:grabbing}.screen{width:100%;height:100%;position:relative;overflow:hidden;border-radius:21px;background:var(--tint)}.screen img{position:absolute;max-width:none;pointer-events:none;transition:opacity .16s}.phone:before{content:'';position:absolute;right:-7px;top:75px;width:3px;height:42px;border-radius:2px;background:#5b615c}.phone:after{content:'';position:absolute;left:-7px;top:67px;width:3px;height:24px;border-radius:2px;background:#5b615c}.shadow{position:absolute;bottom:0;left:12px;width:170px;height:16px;background:#373d3b22;filter:blur(12px);border-radius:50%}.arrow{background:white;border:1px solid #e6e8e5;border-radius:50%;width:44px;height:44px;font-size:21px;color:#566057;cursor:pointer;z-index:2;transition:background .2s,transform .2s}.arrow:hover{background:var(--tint);transform:scale(1.08)}.side-note{position:absolute;left:calc(50% + 290px);top:190px;display:flex;align-items:center;gap:14px;color:#8a918a;font-size:9px;letter-spacing:1.5px;white-space:nowrap}.line{width:34px;height:1px;background:#daddd8}.app-copy{min-height:83px;position:relative}.app-copy h1{font-size:32px;letter-spacing:-1.3px;margin:5px 0 11px;font-weight:720}.app-copy p{font-size:14px;color:#7c817b;margin:0;letter-spacing:-.3px}.stores{display:flex;justify-content:center;gap:8px;margin-top:11px}.stores a{border:1px solid #e6e8e3;border-radius:9px;font-size:12px;font-weight:550;padding:10px 14px;display:flex;align-items:center;gap:7px;transition:background .2s}.stores a:hover{background:var(--tint)}.stores svg{width:18px;height:18px;fill:currentColor}.stores a>span{margin-left:10px;color:#8e948d}.dock{display:flex;justify-content:center;gap:18px;margin:30px auto 0;width:max-content;padding:14px 20px 13px;border:1px solid #eeefeb;border-radius:22px;background:#fafbf9}.app-tab{position:relative;border:0;background:none;padding:0;cursor:pointer;width:43px;height:43px;transition:transform .25s}.app-tab img{width:100%;height:100%;object-fit:cover;border-radius:12px;box-shadow:0 3px 7px #0000000b}.app-tab:hover{transform:translateY(-5px)}.app-tab[aria-selected=true]{transform:translateY(-5px)}.app-tab[aria-selected=true]:after{content:'';position:absolute;bottom:-11px;left:calc(50% - 2px);width:4px;height:4px;border-radius:50%;background:var(--accent)}.hint{font-size:10px;color:#9ba198;margin:16px 0 0}.hint span{margin-right:6px}footer{margin:0 5.3vw;border-top:1px solid #edf0ea;display:flex;justify-content:space-between;align-items:center;padding:23px 0;color:#9aa096;font-size:10px}footer>span:last-child{font-size:8px;letter-spacing:1.3px}@keyframes float{0%,100%{transform:translateY(0) rotate(-7deg) rotateY(-10deg)}50%{transform:translateY(-11px) rotate(-5deg) rotateY(-7deg)}}.phone.changing{animation:none;transform:translateX(var(--slide,30px)) rotate(3deg);opacity:.3;transition:transform .15s,opacity .15s}@media(min-height:950px) and (min-width:701px){.showcase{padding-top:35px}.stage{height:490px}.phone-area{transform:scale(1.15)}.ambient-word{top:150px}.dock{margin-top:38px}footer{margin-top:30px}}@media(max-width:700px){header{height:76px;padding:0 24px}.brand{font-size:22px}.contact{font-size:11px}.showcase{padding-top:13px}.eyebrow{font-size:8px;letter-spacing:2px}.stage{height:363px;gap:42px;margin-top:20px}.phone-area{width:158px;height:348px}.phone{width:155px;height:319px;border-radius:25px}.screen{border-radius:19px}.shadow{width:140px;left:0}.arrow{width:35px;height:35px;font-size:18px}.ambient-word{top:135px;font-size:26vw}.side-note{display:none}.app-copy h1{font-size:28px;margin-top:0}.app-copy p{font-size:12px}.app-copy{min-height:72px}.stores{margin-top:5px}.dock{gap:15px;padding:13px 17px;margin-top:26px}.app-tab{width:37px;height:37px}.app-tab img{border-radius:10px}footer{padding:20px 0;margin:0 24px;font-size:9px}footer>span:last-child{display:none}}@media(max-width:359px){.stage{gap:28px}.dock{gap:12px;padding:12px}.app-tab{width:34px;height:34px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}
@media (min-width:701px) and (max-width:1100px){.side-note{display:none}}
/* Separate floating position from interactive 3D rotation. */
.phone-area{width:210px;height:439px;perspective:950px}
.stage{height:461px}
.float-wrap{width:202px;height:430px;transform-style:preserve-3d;animation:hover-float 6s ease-in-out infinite}
.phone{width:202px;height:430px;padding:4px;border:3px solid #525853;border-radius:30px;animation:none;transform-style:preserve-3d;transform:rotateX(var(--rx,2deg)) rotateY(calc(var(--ry,-11deg) + var(--turn,0deg))) rotateZ(var(--rz,-4deg));transition:transform .45s cubic-bezier(.2,.8,.2,1),box-shadow .45s,opacity .18s;box-shadow:1px 1px 0 #bbc0b8,2px 2px 0 #777e74,3px 3px 0 #5c6459,4px 4px 0 #464e43,5px 5px 0 #353e33,6px 6px 0 #2b3229,13px 20px 25px #20301c19}
.phone .screen{border-radius:23px;transform:translateZ(1px)}
.phone:before{height:44px;top:90px;right:-6px;background:linear-gradient(90deg,#a0a79b,#3c4438);transform:translateZ(-2px)}
.phone:after{height:30px;top:85px;left:-6px;background:linear-gradient(90deg,#afb6a9,#454e3f);transform:translateZ(-2px)}
.edge{position:absolute;inset:3px;border-radius:25px;pointer-events:none;transform:translateZ(2px);background:radial-gradient(ellipse at var(--light-x,20%) var(--light-y,15%),#ffffff16,transparent 65%);border:1px solid #ffffff50}
.phone.dragging{transition:transform .08s linear;cursor:grabbing}
.phone.changing{animation:none;transform:rotateX(var(--rx)) rotateY(calc(var(--ry) + var(--turn))) rotateZ(var(--rz));opacity:.45}
.phone:not(.changing){--turn:0deg!important}
.shadow{bottom:-2px;left:13px;width:185px;transition:transform .45s}
@keyframes hover-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-9px)}}
@media(min-height:950px) and (min-width:701px){.phone-area{transform:scale(1.08)}.stage{height:500px}}
@media(max-width:700px){.phone-area{width:176px;height:386px}.float-wrap{width:174px;height:370px}.phone{width:174px;height:370px;border-radius:27px}.phone .screen{border-radius:20px}.edge{border-radius:22px}.stage{height:406px;gap:32px}.shadow{width:155px;left:10px}.hint{font-size:9px}}
@media(max-width:359px){.stage{gap:23px}.hint{font-size:8px}}
@media(prefers-reduced-motion:reduce){.float-wrap{animation:none}.phone{transform:none!important}.shadow{transform:none!important}}

.header-actions{display:flex;align-items:center;gap:28px}.languages{display:flex;align-items:center;gap:10px;font-size:11px;letter-spacing:.5px}.languages a{color:#969c94;padding:8px 0}.languages a[aria-current=page]{color:#283528;font-weight:750}.languages>span{color:#d6dbd2}.contact #contact-label{margin:0}.legal{text-align:center;font-size:9px;color:#969e92;padding:0 22px 22px;line-height:1.9}.legal a{white-space:nowrap}html[lang=en] .app-copy h1{letter-spacing:-1px}html[lang=en] .app-copy p{max-width:450px;margin:auto;line-height:1.5}@media(max-width:700px){.header-actions{gap:17px}.contact{display:none}html[lang=en] .app-copy p{font-size:11px}.legal{font-size:8px}}

/* Keep the device opaque; animate only the decoded incoming app screen. */
.phone .screen{isolation:isolate;clip-path:inset(0 round 23px)}
@media(max-width:700px){.phone .screen{clip-path:inset(0 round 20px)}}

/* A two-sided device with depth, rotated independently of its touch surface. */
.phone-area{touch-action:none;cursor:grab}.phone-area:active{cursor:grabbing}
.phone{border:0;background:transparent;padding:7px;box-shadow:none;overflow:visible;transition:transform .35s ease}
.phone .screen{transform:translateZ(7px);backface-visibility:hidden;-webkit-backface-visibility:hidden;border:1px solid #252b25}
.phone-layer{position:absolute;inset:0;border:1px solid #858c80;border-radius:30px;background:linear-gradient(100deg,#373e33,#b4b9af 45%,#444c3e);transform:translateZ(var(--depth));pointer-events:none}
.phone-back{position:absolute;inset:0;border-radius:30px;background:linear-gradient(130deg,#e4e7df,#c5cec0 50%,#adbba6);border:2px solid #6c7765;transform:translateZ(-6px) rotateY(180deg);backface-visibility:hidden;-webkit-backface-visibility:hidden;display:flex;align-items:center;justify-content:center;flex-direction:column;pointer-events:none;color:#53614a}
.phone-back>span{font-size:19px;letter-spacing:-1px;font-weight:650}.phone-back>small{position:absolute;bottom:33px;font-size:5px;letter-spacing:1px}.cameras{position:absolute;top:15px;left:13px;width:65px;height:85px;border-radius:19px;background:#aab7a0;box-shadow:inset 0 1px 2px #fff9,1px 2px 4px #3c49374d}.cameras i{position:absolute;width:27px;height:27px;background:radial-gradient(circle,#293749 10%,#090d13 23%,#182222 37%,#050707 55%,#515c49 60%);border:2px solid #606c56;border-radius:50%;left:8px;top:9px}.cameras i+i{top:48px}.cameras b{position:absolute;right:8px;top:34px;width:12px;height:12px;background:#f7f7df;border-radius:50%}.edge{transform:translateZ(8px);backface-visibility:hidden;-webkit-backface-visibility:hidden}.phone:before,.phone:after{display:none}.phone.dragging{transition:none}.float-wrap:has(.dragging){animation-play-state:paused}.reset-rotation{display:block;margin:14px auto 0;border:0;background:none;color:#7b8476;font-size:10px;cursor:pointer;padding:5px 10px}.hint{margin-top:7px}@media(max-width:700px){.phone-layer,.phone-back{border-radius:27px}}@media(prefers-reduced-motion:reduce){.phone{transform:rotateX(var(--rx)) rotateY(var(--ry)) rotateZ(var(--rz))!important}}
