:root{
  --ink:#18002c; --paper:#fff8ff; --hot:#ff2fd6; --sun:#ffe500; --aqua:#00f5ff; --lime:#7cff00; --violet:#8b5cff; --orange:#ff7a00;
  --grad:linear-gradient(90deg,#ff2fd6,#ff7a00,#ffe500,#7cff00,#00f5ff,#8b5cff,#ff2fd6);
  --card:rgba(255,255,255,.64); --line:rgba(24,0,44,.18); --shadow:0 24px 70px rgba(86,0,150,.22);
}
*{box-sizing:border-box} html{scroll-behavior:smooth;max-width:100%;overflow-x:hidden} body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:radial-gradient(circle at 12% 0,#fff 0 10%,transparent 28%),radial-gradient(circle at 100% 12%,#00f5ff 0 12%,transparent 34%),radial-gradient(circle at 6% 80%,#ff2fd6 0 12%,transparent 32%),linear-gradient(135deg,#fffb00 0%,#ff8ef3 25%,#83fffb 55%,#b6ff4d 78%,#fff2a6 100%);min-height:100vh;overflow-x:hidden;width:100%;max-width:100%;position:relative}.site-bg{position:fixed;inset:0;z-index:-3;background:conic-gradient(from 120deg at 50% 50%,#ff2fd6,#ffe500,#00f5ff,#7cff00,#8b5cff,#ff2fd6);filter:saturate(1.4);opacity:.34}.orb{position:fixed;border-radius:999px;filter:blur(18px);opacity:.55;z-index:-2;animation:floaty 12s ease-in-out infinite}.orb.one{width:220px;height:220px;background:#00f5ff;left:-60px;top:12%}.orb.two{width:260px;height:260px;background:#ff2fd6;right:-80px;top:42%;animation-delay:-4s}.orb.three{width:190px;height:190px;background:#ffe500;left:48%;bottom:-70px;animation-delay:-7s}@keyframes floaty{50%{transform:translate3d(28px,-42px,0) scale(1.15)}}
a{color:inherit;text-decoration:none}.topbar{position:sticky;top:0;z-index:30;padding:12px 14px;background:rgba(255,255,255,.5);backdrop-filter:blur(18px);border-bottom:1px solid var(--line)}.nav{max-width:1180px;margin:0 auto;display:grid;grid-template-columns:44px 1fr 44px;align-items:center}.brand{justify-self:center;font-weight:1000;letter-spacing:-.06em;font-size:clamp(1.45rem,8vw,3.4rem);line-height:.9;background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent;text-shadow:0 5px 22px rgba(255,47,214,.25)}.brand sup{font-size:.32em;color:#18002c;-webkit-text-fill-color:#18002c;letter-spacing:0}.desktop-links{display:none}.hamb{grid-column:3;justify-self:end;width:42px;height:42px;border:1px solid var(--line);border-radius:16px;background:rgba(255,255,255,.7);font-size:1.15rem;box-shadow:0 10px 30px rgba(0,0,0,.08)}.mobile-menu{display:none;position:absolute;top:70px;right:14px;left:14px;padding:14px;border:1px solid var(--line);border-radius:26px;background:rgba(255,255,255,.82);backdrop-filter:blur(22px);box-shadow:var(--shadow)}.mobile-menu.open{display:grid;gap:10px}.mobile-menu a{padding:14px;border-radius:18px;background:rgba(255,255,255,.7);font-weight:900}
main{position:relative}.section{max-width:1180px;margin:0 auto;padding:34px 16px}.hero{min-height:calc(100svh - 68px);display:grid;place-items:center;text-align:center;padding-top:18px}.kicker{text-transform:uppercase;letter-spacing:.18em;font-weight:1000;font-size:.72rem}.rainbow{background:var(--grad);background-size:220% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:rainbow 4s linear infinite}@keyframes rainbow{to{background-position:220% 0}}h1,h2,h3{font-family:"Space Grotesk",Inter,sans-serif;margin:0;letter-spacing:-.06em}h1{font-size:clamp(3rem,17vw,9.5rem);line-height:.78;max-width:1050px}h2{font-size:clamp(2.1rem,10vw,6rem);line-height:.86}h3{font-size:clamp(1.25rem,5vw,2rem);line-height:1}.lead{font-size:clamp(1.05rem,4.6vw,1.45rem);line-height:1.35;max-width:760px;margin:18px auto;color:rgba(24,0,44,.8);font-weight:750}.buttons{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-top:22px}.btn{border:1px solid var(--line);border-radius:999px;padding:14px 18px;font-weight:1000;background:rgba(255,255,255,.68);box-shadow:0 14px 40px rgba(86,0,150,.13)}.btn.primary{background:var(--ink);color:white}.hero-device{width:min(86vw,410px);height:min(72svh,530px);min-height:410px;border-radius:46px;margin:20px auto 24px;padding:12px;background:linear-gradient(135deg,#fff,#ff8ef3 26%,#00f5ff 52%,#ffe500 77%,#fff);box-shadow:var(--shadow);position:relative;overflow:hidden;transform-style:preserve-3d}.phone-canvas{position:absolute;inset:0;width:100%;height:100%}.glass-screen{position:absolute;inset:14px;border-radius:36px;background:rgba(255,255,255,.28);border:1px solid rgba(255,255,255,.6);backdrop-filter:blur(10px);overflow:hidden}.phone-glyph{position:absolute;inset:0;display:grid;place-items:center;font-size:clamp(7rem,32vw,12rem);filter:drop-shadow(0 18px 35px rgba(24,0,44,.2));animation:spinTilt 7s ease-in-out infinite}.pulse-ring{position:absolute;left:50%;top:50%;width:58%;aspect-ratio:1;border-radius:50%;border:3px solid rgba(255,255,255,.74);transform:translate(-50%,-50%);animation:pulse 2.2s linear infinite}.pulse-ring.r2{animation-delay:.7s}.pulse-ring.r3{animation-delay:1.4s}@keyframes pulse{from{opacity:1;transform:translate(-50%,-50%) scale(.35)}to{opacity:0;transform:translate(-50%,-50%) scale(1.35)}}@keyframes spinTilt{50%{transform:rotate(-8deg) scale(1.1)}}.ticker{overflow:hidden;border-block:1px solid var(--line);background:rgba(255,255,255,.46);padding:12px 0}.ticker span{display:inline-block;white-space:nowrap;font-size:clamp(1rem,4vw,1.4rem);font-weight:1000;animation:marquee 20s linear infinite}.ticker b{margin:0 20px}@keyframes marquee{to{transform:translateX(-50%)}}
.grid{display:grid;gap:16px}.cards{grid-template-columns:1fr}.card{border:1px solid var(--line);border-radius:34px;background:var(--card);box-shadow:var(--shadow);padding:24px;position:relative;overflow:hidden}.card:before{content:"";position:absolute;inset:-40%;background:conic-gradient(from 90deg,#ff2fd6,#00f5ff,#ffe500,#7cff00,#ff2fd6);opacity:.16;animation:rotate 12s linear infinite}.card>*{position:relative}.emoji{font-size:3rem;display:inline-block;animation:bounce 3s ease-in-out infinite}.card:nth-child(2) .emoji{animation-delay:-1s}.card:nth-child(3) .emoji{animation-delay:-2s}@keyframes bounce{50%{transform:translateY(-10px) rotate(6deg)}}@keyframes rotate{to{transform:rotate(1turn)}}.mini{font-weight:800;line-height:1.55;color:rgba(24,0,44,.76)}.showcase{display:grid;gap:18px}.visual{min-height:280px;border-radius:38px;position:relative;overflow:hidden;background:radial-gradient(circle at 30% 20%,#fff 0 9%,transparent 20%),conic-gradient(#ff2fd6,#ffe500,#00f5ff,#7cff00,#8b5cff,#ff2fd6);box-shadow:var(--shadow)}.blob{position:absolute;border-radius:40% 60% 50% 50%;background:rgba(255,255,255,.55);border:2px solid rgba(255,255,255,.65);animation:morph 5s ease-in-out infinite}.blob.a{width:150px;height:150px;left:8%;top:16%}.blob.b{width:110px;height:110px;right:13%;bottom:14%;animation-delay:-1.6s}.visual .bigemoji{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);font-size:8rem;animation:spinTilt 4.5s ease-in-out infinite}.bubble{display:inline-flex;align-items:center;gap:8px;margin:7px;padding:12px 14px;background:rgba(255,255,255,.68);border:1px solid var(--line);border-radius:20px;font-weight:900}@keyframes morph{50%{border-radius:60% 40% 35% 65%;transform:translate(20px,-16px) rotate(18deg)}}.page-hero{min-height:78svh}.footer{margin-top:30px;padding:34px 16px;border-top:1px solid var(--line);background:rgba(255,255,255,.52);backdrop-filter:blur(18px);text-align:center}.footer-brand{font-size:clamp(2rem,12vw,6rem);font-weight:1000;letter-spacing:-.08em}.footlinks{display:flex;justify-content:center;gap:10px;flex-wrap:wrap;margin-top:16px;font-weight:900}.seo-list{display:grid;gap:12px;margin-top:18px}.seo-list div{padding:16px;border-radius:22px;background:rgba(255,255,255,.6);font-weight:800}.canvas-wrap{position:relative;min-height:340px;border-radius:36px;overflow:hidden;border:1px solid var(--line);box-shadow:var(--shadow);background:rgba(255,255,255,.3)}#sparkCanvas{position:absolute;inset:0;width:100%;height:100%}.copy{position:relative;padding:28px;z-index:2}.copy p{font-weight:750;line-height:1.45;color:rgba(24,0,44,.78)}
@media (min-width:760px){.nav{grid-template-columns:1fr auto 1fr}.desktop-links{display:flex;gap:8px;justify-content:flex-start}.desktop-links a{padding:10px 13px;border-radius:999px;background:rgba(255,255,255,.48);font-weight:900}.hamb{display:none}.cards{grid-template-columns:repeat(3,1fr)}.showcase{grid-template-columns:1.05fr .95fr;align-items:center}.hero{padding-top:48px}.hero-device{height:560px}.mobile-menu{display:none!important}}
@media (prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;scroll-behavior:auto!important}}

/* v2 mobile production containment */
html,body{width:100%;max-width:100%;overflow-x:hidden;overscroll-behavior-x:none}
img,canvas,svg,video{max-width:100%;height:auto}
main,.topbar,.footer,.section,.ticker,.nav{max-width:100%;overflow-x:clip}
.brand,.footer-brand{max-width:100%;white-space:nowrap}
.mobile-menu{max-width:calc(100vw - 28px)}
@media (max-width:480px){
  .topbar{padding:10px max(10px,env(safe-area-inset-left)) 10px max(10px,env(safe-area-inset-right))}
  .nav{grid-template-columns:34px minmax(0,1fr) 42px;width:100%;gap:4px}
  .brand{font-size:clamp(1.12rem,6.4vw,1.62rem);letter-spacing:-.055em;line-height:1;min-width:0;transform:scale(.98);transform-origin:center}
  .brand sup{font-size:.28em;position:relative;top:-.12em}
  .hamb{width:40px;height:40px;border-radius:14px}
  .section{padding-left:max(14px,env(safe-area-inset-left));padding-right:max(14px,env(safe-area-inset-right))}
  .hero-device{width:min(88vw,360px);height:min(68svh,500px);min-height:360px;border-radius:38px}
  h1{font-size:clamp(2.55rem,15vw,4.35rem)}
  h2{font-size:clamp(2rem,11vw,3.2rem)}
  .lead{font-size:clamp(1rem,4.2vw,1.18rem)}
  .footer-brand{font-size:clamp(1.42rem,8.6vw,2.25rem);letter-spacing:-.065em;line-height:1.05;overflow-wrap:normal}
  .footlinks{gap:8px}
  .footlinks a,.footer-email{font-size:.95rem}
}
.footer-email{display:inline-flex;margin-top:14px;padding:10px 14px;border-radius:999px;background:rgba(255,255,255,.58);border:1px solid var(--line);font-weight:900}

/* v3 fit polish: keep the domain logo fully visible everywhere */
.brand,
.footer-brand{
  display:inline-block;
  max-width:calc(100vw - 28px);
  white-space:nowrap;
  overflow:visible;
  text-wrap:nowrap;
}
.footer-brand{
  font-size:clamp(1.9rem,6.4vw,4.6rem);
  letter-spacing:-.075em;
  line-height:1.02;
  padding-inline:4px;
}
.footer-brand sup,
.brand sup{
  font-size:.28em;
  position:relative;
  top:-.12em;
  letter-spacing:0;
}
@media (max-width:760px){
  .brand{font-size:clamp(1rem,5.55vw,1.48rem);letter-spacing:-.055em;line-height:1.05;max-width:calc(100vw - 112px)}
  .footer-brand{font-size:clamp(1.25rem,7.15vw,2rem);letter-spacing:-.06em;max-width:calc(100vw - 28px)}
  h1{font-size:clamp(2.18rem,12.8vw,3.85rem);line-height:.86;max-width:100%}
  h2{font-size:clamp(1.8rem,9.4vw,3rem)}
}
@media (max-width:390px){
  .brand{font-size:clamp(.92rem,5.15vw,1.28rem);max-width:calc(100vw - 106px)}
  .footer-brand{font-size:clamp(1.1rem,6.75vw,1.72rem);letter-spacing:-.055em}
  h1{font-size:clamp(2rem,11.5vw,3.2rem)}
}
@media (max-width:340px){
  .brand{font-size:.92rem;letter-spacing:-.045em;max-width:calc(100vw - 100px)}
  .footer-brand{font-size:1.1rem;letter-spacing:-.045em}
}

/* v4 final header rebuild: corporate centered mobile logo, no clipping */
.topbar{overflow:visible;width:100%;max-width:100vw}
.nav{position:relative;width:100%;max-width:1180px;min-height:48px;padding-inline:8px;overflow:visible}
.brand{
  grid-column:2;
  justify-self:center;
  text-align:center;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  max-width:calc(100vw - 132px);
  padding:0 6px;
  white-space:nowrap;
  overflow:visible;
  text-overflow:clip;
}
.brand sup{flex:0 0 auto;margin-left:.06em}
@media (max-width:760px){
  .topbar{padding:10px max(12px,env(safe-area-inset-left)) 10px max(12px,env(safe-area-inset-right))}
  .nav{
    display:flex;
    justify-content:center;
    align-items:center;
    min-height:54px;
    padding-inline:58px;
  }
  .brand{
    position:static;
    margin:0 auto;
    max-width:calc(100vw - 140px);
    font-size:clamp(.98rem,4.6vw,1.38rem);
    line-height:1.05;
    letter-spacing:-.045em;
    transform:none !important;
  }
  .hamb{
    position:absolute;
    right:max(10px,env(safe-area-inset-right));
    top:50%;
    transform:translateY(-50%);
    z-index:4;
  }
  .mobile-menu{top:72px}
}
@media (max-width:430px){
  .brand{font-size:clamp(.92rem,4.35vw,1.18rem);max-width:calc(100vw - 130px);letter-spacing:-.04em}
}
@media (max-width:360px){
  .brand{font-size:.86rem;max-width:calc(100vw - 118px);letter-spacing:-.035em}
  .nav{padding-inline:50px}
}
