:root{--ink:#0d0d0f;--mauve-top:#d9d0d2;--mauve-bot:#b79fa8;--line:#ffffff8c;--glass:#ffffff47;--ease:cubic-bezier(.22,.8,.2,1);--font:"Figtree", system-ui, sans-serif}*{box-sizing:border-box;margin:0}html,body{overscroll-behavior:none;height:100%;overflow:hidden}body{font-family:var(--font);color:var(--ink);background:linear-gradient(var(--mauve-top), var(--mauve-bot))}#stage{width:100%;height:100%;display:block;position:fixed;inset:0}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0}.frame{border:1px solid var(--line);border-radius:14px;position:relative}.frame:before,.frame:after{content:"";pointer-events:none;border:4px solid #fff;width:20px;height:20px;position:absolute}.frame:before{border-bottom:0;border-right:0;border-top-left-radius:14px;top:-2px;left:-2px}.frame:after{border-top:0;border-left:0;border-bottom-right-radius:14px;bottom:-2px;right:-2px}.top{z-index:5;pointer-events:none;justify-content:space-between;align-items:flex-start;padding:28px 28px 0;display:flex;position:fixed;inset:0 0 auto}.top>*{pointer-events:auto}.logo{color:#fff;letter-spacing:.32em;align-items:baseline;gap:6px;margin-top:12px;font-size:18px;font-weight:500;text-decoration:none;display:flex}.logo i{letter-spacing:.1em;border:1px solid #fff;padding:2px 6px;font-size:14px;font-style:normal}nav.frame{background:0 0;align-items:center;gap:4px;padding:10px;display:flex}nav button{transition:background .3s var(--ease);border-radius:8px;padding:12px 16px;font-size:14px;font-weight:500}nav button:hover{background:var(--glass)}.links{background:#ffffff38;border-radius:6px;gap:4px;margin-right:6px;padding:2px 4px;display:flex}.cta{background:var(--ink);color:#fff;transition:transform .3s var(--ease);border-radius:6px;margin-left:8px;padding:14px 28px;font-size:14px;font-weight:500;text-decoration:none}.cta:hover{transform:translateY(-2px)}.cta.big{margin:20px 0 0;display:inline-block}#panels{z-index:2;pointer-events:none;position:fixed;inset:0}.panel{opacity:0;visibility:hidden;will-change:opacity, transform;position:absolute}.panel.on{pointer-events:auto}.hero{transform:translateY(var(--dy,0px));text-align:center;flex-direction:column;align-items:center;padding-top:28vh;display:flex;inset:0}.hero h1{letter-spacing:-.02em;font-size:clamp(42px,4.4vw,68px);font-weight:700;line-height:1}.hero .sub{min-height:2.7em;margin:5vh 0 4.5vh;font-size:clamp(19px,1.8vw,26px);line-height:1.35}.btn{background:var(--glass);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);padding:22px 40px;font-size:14px}.side{transform:translateY(calc(-46% + var(--dy,0px)));scrollbar-width:none;width:min(460px,40vw);max-height:78vh;top:50%;left:6vw;overflow:auto}.side h2{letter-spacing:-.02em;margin-bottom:20px;font-size:clamp(30px,3.2vw,46px);font-weight:700;line-height:1.05}.side p,.steps{font-size:17px;line-height:1.5}.type{min-height:1.5em;margin-bottom:18px;font-size:20px}.caret{background:var(--ink);vertical-align:-.15em;width:2px;height:1.1em;margin-left:2px;animation:1s step-end infinite blink;display:inline-block}@keyframes blink{50%{opacity:0}}.steps{gap:10px;margin-bottom:22px;padding-left:1.2em;display:grid}.ph{background:#c8b6bd;border-radius:14px;overflow:hidden}.ph img{object-fit:cover;width:100%;height:100%;display:block}.shot{aspect-ratio:16/10}.sq{aspect-ratio:1}.port{aspect-ratio:4/5}.plans{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.plans article{background:var(--glass);border:1px solid var(--line);border-radius:14px;padding:10px}.plans .pick{background:#fff}.plans h3{margin:10px 0 2px;font-size:18px}.plans .price{font-size:22px;font-weight:700}.plans small{font-size:12px;font-weight:400}.plans article p:last-child{margin-top:6px;font-size:13px;line-height:1.35}.team{grid-template-columns:repeat(3,1fr);gap:10px;margin-top:20px;display:grid}.team figcaption{margin-top:8px;font-size:14px;font-weight:600}.team span{opacity:.7;font-size:12px;font-weight:400;display:block}.faq details{border-top:1px solid var(--line);padding:14px 0}.faq summary{cursor:pointer;font-size:17px;font-weight:600;list-style:none}.faq summary:after{content:"+";float:right}.faq details[open] summary:after{content:"–"}.faq details p{margin-top:8px;font-size:15px}#hotspots{z-index:3;pointer-events:none;position:fixed;inset:0}.hs{opacity:.7;pointer-events:auto;background:#fff;border-radius:50%;width:10px;height:10px;margin:-5px 0 0 -5px;animation:2.4s infinite ping;position:absolute;box-shadow:0 0 #ffffffb3}.hs.on{opacity:1;background:#fff;animation:none}@keyframes ping{70%{box-shadow:0 0 0 8px #fff0}to{box-shadow:0 0 #fff0}}.hint{z-index:4;color:#fff;align-items:center;gap:14px;max-width:200px;font-size:14px;font-weight:500;line-height:1.25;transition:opacity .4s;display:flex;position:fixed;bottom:28px;left:32px}.mouse{border:1px solid #fff;border-radius:10px;flex:none;place-items:start center;width:18px;height:30px;padding-top:6px;display:grid}.mouse i{width:4px;height:4px;animation:wheel 1.6s var(--ease) infinite;background:#fff;border-radius:50%}@keyframes wheel{to{opacity:0;transform:translateY(12px)}}.chat{z-index:6;flex-direction:column;align-items:flex-end;gap:14px;display:flex;position:fixed;bottom:28px;right:28px}.fab{outline:1px solid var(--line);outline-offset:4px;background:#fff;border-radius:12px;width:52px;height:52px;margin:4px;font-weight:700}.bubble{max-width:330px;transition:opacity .3s, transform .3s var(--ease);background:#fff;border-radius:10px;padding:10px 14px;font-size:14px;font-weight:500;position:relative}.bubble:after{content:"";border:7px solid #0000;border-top-color:#fff;border-bottom:0;position:absolute;bottom:-6px;right:22px}.bubble.gone{opacity:0;pointer-events:none;transform:translateY(8px)}.win{background:#fff;border-radius:16px;width:min(340px,100vw - 56px);overflow:hidden;box-shadow:0 20px 50px #3c1e3240}.win[hidden]{display:none}.win header{background:var(--ink);color:#fff;justify-content:space-between;padding:14px 16px;font-weight:700;display:flex}.win header button{color:#fff;font-size:20px;line-height:1}.log{flex-direction:column;gap:8px;height:220px;padding:14px;font-size:14px;display:flex;overflow:auto}.log p{border-radius:12px;max-width:85%;padding:8px 12px;line-height:1.35}.log .bot{background:#efe8ea;align-self:flex-start}.log .me{background:var(--ink);color:#fff;align-self:flex-end}.win form{border-top:1px solid #eee;display:flex}.win input{font:inherit;border:0;outline:0;flex:1;min-width:0;padding:14px;font-size:14px}.win form button{padding:0 16px;font-weight:600}@media (width<=800px){.bubble{display:none}.top{padding:16px 16px 0}.logo{letter-spacing:.24em;margin-top:6px;font-size:15px}nav.frame{padding:6px}nav .links{display:none}.cta{margin:0;padding:12px 18px}.hero{padding-top:20vh}.side{width:auto;transform:translateY(var(--dy,0px));-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff8c;border-radius:16px;max-height:46vh;padding:16px;inset:auto 16px 84px}.side h2{margin-bottom:10px;font-size:26px}.side p,.steps{font-size:15px}.shot{display:none}.plans,.team{gap:6px}.plans article{padding:6px}.plans .ph,.plans article p:last-child{display:none}.plans .price{font-size:17px}.hint{max-width:150px;font-size:12px;bottom:22px;left:16px}.chat{bottom:16px;right:16px}}@media (prefers-reduced-motion:reduce){.hs,.mouse i,.caret{animation:none}}
