.header{position:sticky;top:0;z-index:50;background:rgba(0,0,0,.6);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid rgba(255,255,255,.08)}
.header__inner{display:flex;align-items:center;gap:1rem;min-height:76px}
.brand__logo{height:44px;width:auto;filter:drop-shadow(0 0 20px var(--primary)) drop-shadow(0 0 40px var(--secondary)) drop-shadow(0 0 60px var(--accent));animation:logoGlow 2s ease-in-out infinite alternate}
.nav{display:flex;gap:.9rem;align-items:center;margin-left:auto}
.nav__link{opacity:.85;font-weight:600;padding:.5rem .6rem;border-radius:10px;transition:var(--t)}
.nav__link:hover{opacity:1;background:rgba(255,255,255,.06)}
.header__ctas{display:flex;gap:.75rem;align-items:center}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;border-radius:999px;padding:.9rem 1.2rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em;transition:var(--t);border:1px solid rgba(255,255,255,.18)}
.btn--lg{padding:1.1rem 1.5rem}
.btn--block{width:100%}
.btn--primary{border:none;background:linear-gradient(45deg,var(--primary),var(--secondary));box-shadow:var(--shadow-strong)}
.btn--primary:hover{transform:translateY(-3px) scale(1.02)}
.btn--secondary{background:rgba(255,255,255,.06)}
.btn--secondary:hover{border-color:var(--primary);background:rgba(255,255,255,.1)}
.menu-btn{display:none;background:transparent;border:1px solid rgba(255,255,255,.18);border-radius:12px;width:44px;height:44px;align-items:center;justify-content:center}
.menu-btn__bars{width:18px;height:2px;background:var(--white);position:relative}
.menu-btn__bars::before,.menu-btn__bars::after{content:"";position:absolute;left:0;width:18px;height:2px;background:var(--white)}
.menu-btn__bars::before{top:-6px}.menu-btn__bars::after{top:6px}
.mobile-nav{display:none}
.mobile-nav__panel{padding:1rem;display:grid;gap:.5rem}
.mobile-nav__link{padding:.9rem 1rem;border-radius:12px;background:rgba(255,255,255,.05);font-weight:700}
.mobile-nav__ctas{display:grid;gap:.75rem;margin-top:.5rem}

.hero{min-height:calc(100vh - 76px);display:flex;align-items:center;position:relative;overflow:hidden}
.hero__inner{position:relative;z-index:2}
.hero__grid{display:grid;grid-template-columns:1.2fr .8fr;gap:2rem;align-items:center}
.hero__title{font-size:clamp(2.6rem,7vw,4.5rem);margin:0;font-weight:900;letter-spacing:.02em}
.hero__subtitle{margin:.4rem 0 1rem;font-size:clamp(1.1rem,2.4vw,1.7rem);color:var(--secondary);font-weight:800}
.hero__copy{opacity:.85;max-width:60ch}
.hero__ctas{display:flex;gap:1rem;margin-top:1.6rem;flex-wrap:wrap}
.hero__mubito{position:relative;max-width:420px;margin-left:auto;display:flex;flex-direction:column;align-items:center}
.mubito{border-radius:var(--radius-lg);box-shadow:0 0 40px rgba(244,60,184,.18)}
.mubito__glow{position:absolute;inset:-20px;background:radial-gradient(circle, rgba(244,60,184,.35), transparent 60%);filter:blur(10px);z-index:-1;animation:pulseGlow 2.2s ease-in-out infinite alternate}
.mubito-caption{text-align:center;margin-top:1.5rem;font-size:clamp(0.9rem, 1.5vw, 1.1rem);font-weight:600;letter-spacing:0.02em;color:var(--white);opacity:0.85;text-shadow:0 0 10px rgba(244, 60, 184, 0.3);animation:fadeIn 1s ease-out 0.5s both;}

.card{position:relative;background:rgba(255,255,255,.05);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.12);border-radius:var(--radius-lg);padding:1.5rem;box-shadow:var(--shadow-lamubi);transition:var(--t)}
.card::before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--primary),var(--secondary))}
.card:hover{transform:translateY(-6px)}
.card__title{margin:0 0 .6rem;font-weight:900;color:var(--primary)}
.card__text{margin:0;opacity:.9;line-height:1.6}

.portfolio{display:grid;gap:1.5rem}
.portfolio__featured{display:grid;justify-items:center}
.portfolio__featured .embed{width:50%}
.portfolio .embed{border-radius:var(--radius-lg);overflow:hidden;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.04);min-height:400px;display:flex;align-items:center;justify-content:center}
.portfolio__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:1rem}
.portfolio .instagram-media{margin:0 !important;max-width:100% !important;width:100% !important;min-height:400px !important}
.portfolio .tiktok-embed{margin:0 !important;max-width:100% !important;width:100% !important;min-height:400px !important}
.portfolio .tiktok-embed iframe{width:100% !important;max-width:100% !important;min-height:400px !important}
.portfolio__b2b{text-align:center;display:grid;justify-items:center;gap:.6rem;margin-top:1rem}
.portfolio__note{margin:0;opacity:.75}

.contact{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}
.footer{padding:2rem 0;border-top:1px solid rgba(255,255,255,.08);background:rgba(0,0,0,.7)}
.footer__inner{display:flex;justify-content:center}
.mubito-scene{position:relative;isolation:isolate;display:block}
.mubito-scene .mubito{position:relative;z-index:3;width:100%;height:auto;transform-origin:50% 100%;transform:translateY(40px) scale(.92);opacity:0}
.mubito-scene .mubito__glow{z-index:1;opacity:0;transition:opacity var(--t)}

.ufo{position:absolute;left:50%;top:-18px;transform:translateX(-50%) translateY(-160px) scale(.9);width:72%;height:90px;z-index:4;pointer-events:none;opacity:0;filter:drop-shadow(0 0 18px rgba(244,60,184,.75)) drop-shadow(0 0 36px rgba(187,17,117,.6))}
.ufo::before{content:"";position:absolute;inset:10px 0 0 0;border-radius:999px;background:linear-gradient(45deg, rgba(187,17,117,.9), rgba(244,60,184,.6));border:1px solid rgba(255,255,255,.18)}
.ufo::after{content:"";position:absolute;left:50%;top:-2px;transform:translateX(-50%);width:46%;height:34px;border-radius:999px;background:radial-gradient(circle at 50% 70%, rgba(255,255,255,.22), rgba(255,255,255,0) 70%), rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.14);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}

.beam{position:absolute;left:50%;top:52px;transform:translateX(-50%);width:78%;height:78%;z-index:2;pointer-events:none;opacity:0;clip-path:polygon(50% 0%, 0% 100%, 100% 100%)}
.beam::before{content:"";position:absolute;inset:0;background:linear-gradient(to bottom, rgba(243,97,229,0), rgba(244,60,184,.78) 25%, rgba(187,17,117,.62) 60%, rgba(243,97,229,0));box-shadow:0 0 40px rgba(244,60,184,.45);filter:blur(.2px)}
.beam::after{content:"";position:absolute;inset:-6px;background:radial-gradient(circle at 50% 20%, rgba(255,255,255,.35), rgba(255,255,255,0) 65%);mix-blend-mode:screen;opacity:.65}

.replay-btn{position:absolute;top:10px;right:10px;z-index:6;width:40px;height:40px;border-radius:999px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.18);color:var(--white);font-weight:900;cursor:pointer;transition:var(--t);opacity:.85}
.replay-btn:hover{opacity:1;border-color:var(--primary);box-shadow:0 0 18px rgba(244,60,184,.35)}
.replay-btn:focus-visible{outline:2px solid var(--secondary);outline-offset:2px}

.mubito-scene.scene--ufo-enter .ufo{opacity:1;animation:ufoEnter 1.2s ease forwards}
.mubito-scene.scene--beam-on .beam{opacity:1;animation:beamFlicker .8s ease forwards}
.mubito-scene.scene--mubito-descend .mubito{opacity:1;animation:mubitoDescend 1s ease forwards}
.mubito-scene.scene--mubito-descend .mubito__glow{opacity:1}
.mubito-scene.scene--ufo-exit .ufo{opacity:1;animation:ufoExit .6s ease forwards}
.mubito-scene.scene--dance .mubito{opacity:1;transform:translateY(0) scale(1);animation:mubitoDance 1.4s ease-in-out infinite}
.mubito-scene.scene--dance .mubito__glow{opacity:1}

.mubito-scene.is-boosting .mubito{animation:mubitoDance 1.4s ease-in-out infinite, danceBoost 1.2s ease-in-out 1}
