:root{--cream:#f5f3ed;--ink:#171714;--muted:#6f6e68;--line:#d9d5cc;--orange:#d3512c;--green:#496c58;--rust:#8c593e;--rose:#8b4c5d;--blue:#405c78}*{box-sizing:border-box}html,body,#app{margin:0;width:100%;height:100%;overflow:hidden;background:var(--cream);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif}button{font:inherit}.hidden{display:none!important}.loader{height:100%;position:relative;isolation:isolate;overflow:hidden;background:var(--cream)}.grain{position:absolute;inset:0;opacity:.28;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 160 160' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.15'/%3E%3C/svg%3E");mix-blend-mode:multiply;z-index:4;pointer-events:none}.orb{position:absolute;border-radius:50%;filter:blur(2px);opacity:.65}.orb-a{width:48vw;height:48vw;background:radial-gradient(circle at 35% 35%,#fff,rgba(211,81,44,.23) 44%,transparent 70%);top:-25vw;right:-8vw;animation:floatA 8s ease-in-out infinite}.orb-b{width:42vw;height:42vw;background:radial-gradient(circle at 55% 45%,rgba(73,108,88,.24),transparent 68%);bottom:-24vw;left:-9vw;animation:floatB 9s ease-in-out infinite}.stage{height:100%;display:grid;grid-template-columns:1fr 1.2fr;align-items:center;gap:8vw;padding:8vw;perspective:1000px;animation:camera 8s cubic-bezier(.22,.8,.22,1) both}.aperture{width:min(34vw,430px);aspect-ratio:1;border:1px solid rgba(23,23,20,.15);border-radius:50%;position:relative;animation:turn 13s linear infinite;box-shadow:0 35px 90px rgba(23,23,20,.12)}.aperture span{position:absolute;width:48%;height:48%;left:26%;top:26%;background:var(--ink);clip-path:polygon(50% 0,100% 38%,80% 100%,20% 100%,0 38%);transform-origin:50% 100%;border-radius:50% 50% 12% 12%;opacity:.92}.aperture span:nth-child(2){transform:rotate(60deg)}.aperture span:nth-child(3){transform:rotate(120deg)}.aperture span:nth-child(4){transform:rotate(180deg)}.aperture span:nth-child(5){transform:rotate(240deg)}.aperture span:nth-child(6){transform:rotate(300deg)}.aperture:after{content:"";position:absolute;inset:28%;border-radius:50%;background:var(--cream);z-index:2;box-shadow:inset 0 0 0 1px rgba(23,23,20,.25)}.aperture i{position:absolute;inset:37%;z-index:3;background:var(--ink);color:#fff;border-radius:14px;display:grid;place-items:center;font:700 4.8vw Georgia,serif;font-style:normal}.brandline,.logo{display:flex;align-items:center;gap:9px}.brandline b,.logo b{background:var(--ink);color:white;border-radius:10px;font:700 30px Georgia;padding:5px 11px}.brandline span,.logo span{font-size:27px;font-weight:650}.brandline em,.logo em{font-size:10px;font-style:normal;font-weight:800;background:#e7e4dc;border-radius:20px;padding:5px 8px;letter-spacing:.09em}.brand h1{font:400 clamp(45px,5.3vw,86px)/.95 Georgia,serif;letter-spacing:-.045em;margin:40px 0}.brand h1 i,.copy h2 i,.mini-home h3 i{color:var(--orange);font-weight:400}.status{display:flex;gap:13px;align-items:center;border-top:1px solid var(--line);padding-top:22px;max-width:520px}.status p{margin:0 0 4px;font-weight:650}.status small{color:var(--muted)}.pulse{width:11px;height:11px;background:var(--orange);border-radius:50%;box-shadow:0 0 0 0 rgba(211,81,44,.4);animation:pulse 1.5s infinite}.rail{position:absolute;left:8vw;right:8vw;bottom:45px;height:2px;background:#dedbd3}.rail span{display:block;width:0;height:100%;background:var(--ink);animation:load 8s linear forwards}.counter{position:absolute;right:8vw;bottom:55px;font:12px ui-monospace;color:var(--muted)}.counter b{color:var(--ink)}.skip{border:1px solid var(--line);background:rgba(245,243,237,.78);color:var(--ink);border-radius:100px;padding:10px 16px;cursor:pointer}.top-skip{position:absolute;right:4vw;top:4vw;z-index:9}.tour{height:100%;display:grid;grid-template-rows:82px 3px 1fr 74px;padding:0 5vw;background:var(--cream);position:relative;overflow:hidden}.tour:before{content:"";position:absolute;width:54vw;height:54vw;border-radius:50%;background:radial-gradient(circle,rgba(211,81,44,.09),transparent 66%);right:-18vw;top:-20vw;pointer-events:none}.tour header{display:flex;align-items:center;justify-content:space-between}.logo b{font-size:20px;border-radius:7px;padding:4px 8px}.logo span{font-size:20px}.tour-progress{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.tour-progress span{height:2px;background:#ddd9d0}.tour-progress span.on{background:var(--ink)}.slide{display:none;grid-template-columns:.85fr 1.15fr;align-items:center;gap:8vw;animation:slideIn .7s cubic-bezier(.2,.75,.2,1)}.slide.active{display:grid}.copy small{font-size:11px;letter-spacing:.18em;color:var(--orange);font-weight:800}.copy h2{font:400 clamp(44px,5.3vw,78px)/.98 Georgia,serif;letter-spacing:-.045em;margin:25px 0}.copy p{max-width:540px;color:var(--muted);font-size:17px;line-height:1.7}.visual{height:min(55vh,560px);position:relative;perspective:1200px}.toolcard{width:48%;height:44%;position:absolute;border:1px solid rgba(23,23,20,.14);border-radius:25px;padding:25px;background:#fff;box-shadow:0 30px 70px rgba(23,23,20,.09);display:flex;flex-direction:column;justify-content:flex-end;transform-style:preserve-3d}.toolcard b{position:absolute;top:22px;right:22px;font:22px Georgia;color:rgba(23,23,20,.35)}.toolcard span{font:31px Georgia}.toolcard i{text-transform:uppercase;font-size:10px;letter-spacing:.17em;margin-top:10px;color:var(--orange);font-style:normal}.passport{left:4%;top:4%;background:linear-gradient(145deg,#fff,#e4e0d6);transform:rotateY(9deg) rotateZ(-3deg)}.watermark{right:3%;top:1%;background:linear-gradient(145deg,#fff,#e0c8bb);transform:rotateY(-8deg) rotateZ(3deg)}.frame{left:7%;bottom:1%;background:linear-gradient(145deg,#fff,#c9d8cf);transform:rotateY(10deg) rotateZ(2deg)}.poster{right:0;bottom:5%;background:linear-gradient(145deg,#fff,#c9d4df);transform:rotateY(-9deg) rotateZ(-2deg)}.privacy{display:grid;place-items:center}.photo{height:88%;aspect-ratio:.78;border-radius:35px;background:linear-gradient(145deg,#d6d2ca,#a7aaa4);position:relative;overflow:hidden;box-shadow:0 30px 80px rgba(23,23,20,.12)}.face{position:absolute;width:43%;height:50%;border-radius:48% 48% 40% 40%;background:linear-gradient(145deg,#e9be9b,#b68164);left:28%;top:17%;box-shadow:0 40px 0 30px #26352e}.scan{position:absolute;left:8%;right:8%;height:1px;top:25%;background:#fff;box-shadow:0 0 24px 6px rgba(255,255,255,.5);animation:scan 2.3s ease-in-out infinite}.lock{position:absolute;right:18%;bottom:7%;width:72px;height:72px;border-radius:25px;background:var(--green);color:#fff;display:grid;place-items:center;font-size:30px;box-shadow:0 15px 40px rgba(73,108,88,.3)}.privacy>p{position:absolute;left:10%;bottom:5%;font-size:10px;letter-spacing:.17em}.sheet{display:grid;place-items:center}.paper{width:56%;height:82%;background:#fff;box-shadow:0 35px 80px rgba(23,23,20,.12);padding:7%;display:grid;grid-template-columns:1fr 1fr;gap:6%;transform:rotateY(-7deg) rotateZ(2deg)}.paper div{background:linear-gradient(#d9d7d1 42%,#bfa68f 43% 68%,#3f5047 69%);border:1px solid #ddd}.crop{position:absolute;width:40px;height:40px;border-color:var(--orange);border-style:solid}.c1{left:13%;top:4%;border-width:2px 0 0 2px}.c2{right:13%;top:4%;border-width:2px 2px 0 0}.c3{left:13%;bottom:4%;border-width:0 0 2px 2px}.c4{right:13%;bottom:4%;border-width:0 2px 2px 0}.portal{display:grid;place-items:center}.mini-home{width:88%;height:67%;border:12px solid var(--ink);border-radius:32px;background:#f8f6f1;padding:8%;box-shadow:0 40px 90px rgba(23,23,20,.18);transform:rotateY(-7deg) rotateX(3deg)}.mini-home>b{background:var(--ink);color:#fff;border-radius:6px;padding:6px 10px;font:23px Georgia}.mini-home h3{font:36px Georgia;margin:40px 0 25px}.mini-home div{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.mini-home div span{height:85px;border-radius:12px;background:#e3ded4}.mini-home div span:nth-child(2){background:#d9c4b8}.mini-home div span:nth-child(3){background:#c9d8cf}.mini-home div span:nth-child(4){background:#c9d4df}.primary{border:0;background:var(--ink);color:#fff;border-radius:100px;padding:16px 21px;margin-top:18px;cursor:pointer;font-weight:700}.primary span{margin-left:35px}.tour footer{border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between}.tour footer button{border:0;background:transparent;cursor:pointer;font-weight:650}.tour footer .next{background:var(--ink);color:#fff;border-radius:100px;padding:12px 18px}.tour footer .next span{margin-left:25px}.tour footer p{font:12px ui-monospace;color:var(--muted)}.tour footer p b{color:var(--ink)}.done{height:100%;display:grid;place-items:center;text-align:center;background:radial-gradient(circle at 50% 30%,#fff,var(--cream) 55%)}.done>div>b{display:inline-grid;place-items:center;background:var(--ink);color:#fff;width:72px;height:72px;border-radius:20px;font:50px Georgia}.done h2{font:48px Georgia;margin:28px 0 10px}.done p{color:var(--muted)}@keyframes load{to{width:100%}}@keyframes turn{to{transform:rotate(360deg)}}@keyframes camera{0%{transform:scale(1.16) translate3d(3vw,2vh,0);filter:blur(8px);opacity:0}12%{filter:blur(0);opacity:1}55%{transform:scale(1) translate3d(0,0,0)}100%{transform:scale(1.04) translate3d(-1.5vw,-1vh,0)}}@keyframes pulse{70%{box-shadow:0 0 0 12px rgba(211,81,44,0)}}@keyframes floatA{50%{transform:translate(-4vw,7vh) scale(1.08)}}@keyframes floatB{50%{transform:translate(5vw,-5vh) scale(.92)}}@keyframes scan{50%{top:74%}}@keyframes slideIn{from{opacity:0;transform:translateX(45px) scale(.985)}to{opacity:1;transform:none}}@media(max-width:760px){.stage{grid-template-columns:1fr;padding:18vw 8vw 15vw}.aperture{width:60vw;margin:auto}.brand h1{font-size:13vw;margin:22px 0}.status{font-size:14px}.tour{padding:0 6vw;grid-template-rows:70px 3px 1fr 65px}.slide,.slide.active{grid-template-columns:1fr;gap:10px;padding-top:7vh}.copy h2{font-size:10.5vw;margin:15px 0}.copy p{font-size:14px;line-height:1.45}.visual{height:40vh}.toolcard{padding:14px;border-radius:16px}.toolcard span{font-size:20px}.logo em{display:none}.done h2{font-size:38px}}@media(prefers-reduced-motion:reduce){*{animation-duration:.001ms!important;animation-iteration-count:1!important}}
#threeStage{position:absolute;inset:0;width:100%;height:100%;z-index:-1}.loader{background:#f5f3ed}.loader:after{content:"";position:absolute;inset:0;z-index:-2;background:radial-gradient(circle at 78% 18%,rgba(211,81,44,.12),transparent 34%),radial-gradient(circle at 14% 86%,rgba(73,108,88,.12),transparent 30%),#f5f3ed}.three-copy{position:relative;z-index:2;grid-template-columns:1fr 1fr}.aperture-spacer{width:min(34vw,430px);aspect-ratio:1}.shot-label{position:absolute;left:4vw;top:4vw;z-index:8;display:flex;align-items:center;gap:12px;font-size:10px;letter-spacing:.13em}.shot-label span{color:var(--orange);font-weight:800}.shot-label b{font-weight:600;color:var(--muted);letter-spacing:.03em}.three-copy .brand{background:linear-gradient(90deg,rgba(245,243,237,.55),rgba(245,243,237,.88));padding:35px;border-radius:34px;backdrop-filter:blur(8px)}@media(max-width:760px){.shot-label{top:75px}.three-copy{grid-template-columns:1fr}.three-copy .brand{padding:20px}.aperture-spacer{height:35vh;width:100%}}
#threeStage{z-index:0}.loader:after{z-index:-1}.loader>.grain{z-index:5}.loader>.orb{z-index:1}.loader>.stage{z-index:2}.loader>.rail,.loader>.counter{z-index:6}
.webgl-fallback{border:1px solid var(--line);border-radius:50%;background:radial-gradient(circle,var(--ink) 0 12%,var(--cream) 13% 26%,var(--ink) 27% 42%,transparent 43%)}
/* Photoshop-style application splash: artwork + identity + bottom load telemetry */
.loader{background:#e9e6de}.loader:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 50% 44%,rgba(255,255,255,.86),transparent 48%);z-index:0}.loader>.orb,.loader>.shot-label{display:none}.three-copy{position:absolute!important;width:min(1000px,88vw);height:min(570px,78vh);left:50%;top:50%;transform:translate(-50%,-50%)!important;display:grid!important;grid-template-columns:56% 44%;padding:0!important;gap:0!important;background:#f5f3ed;box-shadow:0 38px 110px rgba(23,23,20,.2),0 0 0 1px rgba(23,23,20,.09);overflow:hidden;animation:splashIn .7s cubic-bezier(.2,.75,.2,1) both}.aperture-spacer{width:auto;height:100%;background:linear-gradient(145deg,rgba(23,23,20,.04),rgba(211,81,44,.08))}.three-copy .brand{height:100%;border-radius:0!important;padding:64px 48px!important;background:#f7f5ef!important;backdrop-filter:none!important;position:relative;display:block}.three-copy .brandline b{font-size:25px}.three-copy .brandline span{font-size:24px}.three-copy .brand h1{font-size:46px;line-height:1.03;margin:76px 0 20px}.edition{font-size:9px;letter-spacing:.18em;color:var(--orange);font-weight:800;margin:14px 0}.splash-copy{font-size:12px;color:var(--muted);line-height:1.6}.version{position:absolute;bottom:82px;left:48px;font-size:10px;line-height:1.7;color:var(--muted)}#threeStage{position:absolute;left:calc(50% - min(500px,44vw));top:50%;transform:translateY(-50%);width:min(560px,49.3vw);height:min(570px,78vh);z-index:3}.status{position:absolute;z-index:8;width:min(390px,35vw);left:calc(50% + min(110px,9vw));bottom:calc(50% - min(250px,34vh));border-top:1px solid var(--line);padding:15px 0 0}.status p{font-size:12px}.status small{font-size:10px}.loader>.rail{left:calc(50% + min(110px,9vw));right:calc(50% - min(450px,39vw));bottom:calc(50% - min(272px,37vh));height:2px}.loader>.counter{right:calc(50% - min(450px,39vw));bottom:calc(50% - min(260px,35.5vh))}.top-skip{top:calc(50% - min(324px,44vh));right:calc(50% - min(500px,44vw));background:transparent;border:0;text-decoration:underline;text-underline-offset:4px;font-size:11px}.grain{opacity:.16}@keyframes splashIn{from{opacity:0;transform:translate(-50%,-47%) scale(.96)!important}to{opacity:1;transform:translate(-50%,-50%) scale(1)!important}}@media(max-width:760px){.three-copy{width:90vw;height:78vh;grid-template-columns:1fr;grid-template-rows:48% 52%}.aperture-spacer{height:auto}.three-copy .brand{padding:25px!important}.three-copy .brand h1{font-size:9vw;margin:24px 0 12px}.version{left:25px;bottom:60px}.edition{margin:8px 0}.splash-copy{font-size:10px}#threeStage{left:5vw;top:11vh;transform:none;width:90vw;height:37vh}.status{left:10vw;right:10vw;width:auto;bottom:14vh}.loader>.rail{left:10vw;right:10vw;bottom:10vh}.loader>.counter{right:10vw;bottom:10.5vh}.top-skip{top:3vh;right:5vw}}
/* Keep the launch art within its dedicated splash panel, never over the identity panel. */
#threeStage{clip-path:inset(0);object-fit:cover}.three-copy .brand{z-index:5;box-shadow:-1px 0 0 var(--line)}
@media(min-width:761px){#threeStage{width:min(500px,44vw);height:min(570px,78vh)}.three-copy{grid-template-columns:56% 44%}.aperture-spacer{z-index:1}.three-copy .brand{z-index:6}}
@media(max-width:760px){.three-copy{grid-template-rows:42% 58%}.three-copy .brand{z-index:6}#threeStage{left:5vw;top:11vh;width:90vw;height:33vh}.status{z-index:9}.top-skip{z-index:10}.loader>.rail,.loader>.counter{z-index:10}}
#threeStage{width:min(560px,44vw)!important;height:min(570px,78vh)!important}.three-copy .brand{overflow:hidden}.three-copy .brand:after{content:"";position:absolute;width:180px;height:180px;border-radius:50%;right:-85px;top:-75px;background:radial-gradient(circle,rgba(211,81,44,.11),transparent 70%);pointer-events:none}.status p,.status small{transition:opacity .25s ease,transform .45s cubic-bezier(.16,1,.3,1)}@media(max-width:760px){#threeStage{width:90vw!important;height:33vh!important}}
/* Mobile motion reference: compact two-zone card, 55/45 art-copy balance, fixed footer controls. */
@media(max-width:760px){.three-copy{width:90vw;height:76vh;grid-template-rows:46% 54%;top:51%;box-shadow:0 28px 70px rgba(23,23,20,.18)}.three-copy .brand{padding:22px 25px!important;display:flex;flex-direction:column;align-items:flex-start}.three-copy .brandline b{font-size:19px}.three-copy .brandline span{font-size:21px}.three-copy .brand h1{font-size:8.5vw;margin:18px 0 7px}.edition{font-size:8px}.splash-copy{font-size:9px}.version{left:25px;bottom:18px;font-size:8px;line-height:1.45}#threeStage{top:13vh;height:35vh!important}.status{left:11.5vw;right:11.5vw;bottom:12.2vh;padding-top:11px}.status p{font-size:11px}.status small{font-size:9px}.loader>.rail{left:11.5vw;right:11.5vw;bottom:8.1vh}.loader>.counter{right:11.5vw;bottom:8.5vh}.top-skip{top:2vh}.grain{opacity:.11}}
