:root{--bg-primary:#10002b;--bg-secondary:#240046;--bg-tertiary:#3c096c;--bg-card:#3c096c40;--neon-purple:#7b2cbf;--neon-purple-light:#c77dff;--neon-cyan:#91e5f6;--neon-pink:#f72585;--champagne:#e8c78a;--champagne-light:#f5e2b8;--text-primary:#f5f0ff;--text-secondary:#b8a9d9;--text-muted:#8a7ba8;--border-glow:#91e5f640;--border-hairline:#b8a9d924;--border-hairline-strong:#b8a9d92e;--border-champagne:#e8c78a8c;--border-champagne-soft:#e8c78a47;--glow-cyan:0 0 20px #91e5f659;--glow-purple:0 0 25px #7b2cbf73;--glow-pink:0 0 20px #f7258559;--glow-champagne:0 0 8px #e8c78ab3;--gradient-primary:linear-gradient(135deg, #7b2cbf 0%, #91e5f6 100%);--gradient-bg:linear-gradient(180deg, #10002b 0%, #240046 100%);--gradient-text:linear-gradient(90deg, #91e5f6 0%, #c77dff 50%, #f72585 100%);--gradient-champagne-cyan:linear-gradient(100deg, var(--champagne) 0%, var(--neon-cyan) 100%);--gradient-champagne-btn:linear-gradient(120deg, var(--champagne), var(--champagne-light) 45%, var(--champagne));--aurora-purple:#7b2cbf3d;--aurora-cyan:#91e5f61f;--aurora-champagne:#e8c78a12;--surface-card:#1e003ab8;--surface-card-soft:#1e003a80;--max-width:1280px;--radius-sm:8px;--radius-md:16px;--radius-lg:24px;--font-heading:"Poppins", "Segoe UI", sans-serif;--font-body:"Inter", "Segoe UI", sans-serif;--font-display:"Fraunces", var(--font-heading), serif}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}html,body{background:var(--gradient-bg)}body{color:var(--text-primary);font-family:var(--font-body);line-height:1.6;position:relative;overflow-x:hidden}body:before{content:"";z-index:0;pointer-events:none;background:radial-gradient(40% 46% at 80% 10%, var(--aurora-purple), transparent 70%), radial-gradient(32% 36% at 6% 80%, var(--aurora-cyan), transparent 70%), radial-gradient(24% 26% at 92% 90%, var(--aurora-champagne), transparent 70%);filter:blur(80px) hue-rotate(var(--scroll-hue,0deg));transition:filter .4s ease-out;animation:24s ease-in-out infinite auroraDrift;position:fixed;inset:0}body:after{content:"";z-index:0;pointer-events:none;opacity:var(--scroll-grain-opacity,.045);mix-blend-mode:overlay;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E"), linear-gradient(var(--border-hairline-strong) 1px, transparent 1px), linear-gradient(90deg, var(--border-hairline-strong) 1px, transparent 1px);background-position:0 0, 0 var(--scroll-grid-shift,0px), var(--scroll-grid-shift,0px) 0;background-size:auto,64px 64px,64px 64px;transition:opacity .4s ease-out;position:fixed;inset:0;-webkit-mask-image:radial-gradient(70% 60% at 50% 35%,#000 10%,#0000 75%);mask-image:radial-gradient(70% 60% at 50% 35%,#000 10%,#0000 75%)}@keyframes auroraDrift{0%,to{transform:translate(0, var(--scroll-shift,0px)) scale(1)}50%{transform:translate(-2%, calc(var(--scroll-shift,0px) + 2%)) scale(1.05)}}a{color:inherit;text-decoration:none}ul{list-style:none}button{font-family:var(--font-body);cursor:pointer;border:none;outline:none}img{max-width:100%;display:block}::selection{background:var(--neon-purple);color:var(--text-primary)}::-webkit-scrollbar{width:10px}::-webkit-scrollbar-track{background:var(--bg-primary)}::-webkit-scrollbar-thumb{background:var(--gradient-primary);border-radius:10px}.container{z-index:2;max-width:var(--max-width);margin:0 auto;padding:0 24px;position:relative}.gradient-text{background:var(--gradient-text);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}@media (prefers-reduced-motion:reduce){body:before{filter:blur(80px)!important;animation:none!important}body:after{background-position:0 0,0 0,0 0!important}}.navbar{z-index:1000;-webkit-backdrop-filter:blur(18px)saturate(1.3);background:#10002bd1;border-bottom:1px solid #91e5f614;padding:15px 0;transition:padding .4s cubic-bezier(.22,1,.36,1),background .4s cubic-bezier(.22,1,.36,1),-webkit-backdrop-filter .4s cubic-bezier(.22,1,.36,1),backdrop-filter .4s cubic-bezier(.22,1,.36,1),box-shadow .4s cubic-bezier(.22,1,.36,1),border-color .4s cubic-bezier(.22,1,.36,1);position:fixed;top:0;left:0;right:0;box-shadow:0 4px 30px #0000001f}.navbar__logo-image{object-fit:contain;filter:drop-shadow(0 0 10px #91e5f62e);border-radius:10px;flex-shrink:0;width:42px;height:42px;transition:transform .3s,filter .3s;display:block}.navbar__logo:hover .navbar__logo-image{filter:drop-shadow(0 0 14px #91e5f64d);transform:scale(1.05)}.navbar--scrolled{-webkit-backdrop-filter:blur(24px)saturate(1.4);border-bottom:1px solid var(--border-glow);background:#10002beb;padding:12px 0;box-shadow:0 4px 30px #7b2cbf2e}.navbar__inner{justify-content:space-between;align-items:center;gap:24px;display:flex}.navbar__logo{flex-shrink:0;align-items:center;gap:12px;display:flex}.navbar__logo-mark{border-radius:var(--radius-sm);background:var(--gradient-primary);color:#10002b;width:38px;height:38px;font-family:var(--font-heading);box-shadow:var(--glow-purple);flex-shrink:0;place-items:center;font-size:1rem;font-weight:800;display:grid}.navbar__logo-body{flex-direction:column;gap:2px;line-height:1;display:flex}.navbar__logo-text{font-family:var(--font-heading);color:var(--text-primary);font-size:1.25rem;font-weight:700}.navbar__logo-status{letter-spacing:.02em;color:var(--text-secondary);opacity:.85;align-items:center;gap:6px;font-size:.7rem;font-weight:500;display:flex}.navbar__status-dot{background:#5be49b;border-radius:50%;width:6px;height:6px;animation:2.4s ease-in-out infinite statusPulse;box-shadow:0 0 8px #5be49bcc}@keyframes statusPulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(.8)}}.navbar__links--desktop{align-items:center;gap:4px;display:flex}.navbar__link{border-radius:var(--radius-sm);color:var(--text-primary);cursor:pointer;letter-spacing:.3px;background:0 0;border:none;align-items:center;gap:6px;padding:10px 16px;font-size:.95rem;font-weight:500;transition:all .2s;display:flex}.navbar__link:hover{color:var(--neon-cyan,#91e5f6);background:#91e5f624;transform:translateY(-1px)}.navbar__link:focus-visible{outline:2px solid var(--neon-cyan);outline-offset:2px}.navbar__dropdown{position:relative}.navbar__caret{color:var(--neon-cyan);transition:transform .25s}.navbar__caret--open{transform:rotate(180deg)}.navbar__dropdown-menu{-webkit-backdrop-filter:blur(22px);border:1px solid var(--border-glow);border-radius:var(--radius-md);width:380px;box-shadow:var(--glow-purple), 0 20px 50px #00000073;background:#1e003af5;padding:16px;animation:.18s dropdownIn;position:absolute;top:calc(100% + 14px);left:50%;transform:translate(-50%)}@keyframes dropdownIn{0%{opacity:0;transform:translate(-50%)translateY(-6px)}to{opacity:1;transform:translate(-50%)translateY(0)}}.navbar__dropdown-eyebrow{letter-spacing:.08em;text-transform:uppercase;color:var(--text-secondary);opacity:.6;padding:4px 8px 12px;font-size:.68rem;font-weight:600;display:block}.navbar__dropdown-grid{grid-template-columns:1fr 1fr;gap:8px;display:grid}.navbar__dropdown-item{border-radius:var(--radius-sm);background:#ffffff05;border:1px solid #0000;align-items:flex-start;gap:10px;padding:12px;transition:background .2s,border-color .2s,transform .15s;display:flex}.navbar__dropdown-item:hover{background:color-mix(in srgb, var(--role-color) 12%, transparent);border-color:color-mix(in srgb, var(--role-color) 40%, transparent);transform:translateY(-1px)}.navbar__dropdown-item:focus-visible{outline:2px solid var(--role-color);outline-offset:2px}.navbar__dropdown-icon{width:30px;height:30px;color:var(--role-color);background:color-mix(in srgb, var(--role-color) 18%, transparent);box-shadow:0 0 0 1px color-mix(in srgb, var(--role-color) 35%, transparent);border-radius:8px;flex-shrink:0;place-items:center;display:grid}.navbar__dropdown-text{flex-direction:column;gap:2px;min-width:0;display:flex}.navbar__dropdown-label{color:var(--text-primary);font-size:.85rem;font-weight:600}.navbar__dropdown-desc{color:var(--text-secondary);opacity:.85;font-size:.72rem;line-height:1.35}.role-guru{--role-color:var(--neon-cyan,#7ee8fa)}.role-admin{--role-color:var(--neon-purple,#b98cff)}.role-piket{--role-color:#ffc46b}.role-tu{--role-color:#ff8fc0}.navbar__actions{flex-shrink:0;align-items:center;gap:12px;display:flex}.navbar__download{border:1.5px solid var(--neon-cyan,#91e5f6);color:var(--neon-cyan,#91e5f6);letter-spacing:.4px;cursor:pointer;background:#91e5f61a;border-radius:999px;align-items:center;gap:6px;padding:11px 20px;font-size:.88rem;font-weight:700;text-decoration:none;transition:all .3s;display:flex}.navbar__download:hover{color:#10002b;border-color:var(--neon-cyan,#91e5f6);background:var(--neon-cyan,#91e5f6);transform:translateY(-2px);box-shadow:0 8px 24px #91e5f666}.navbar__download:focus-visible{outline:2px solid var(--neon-cyan);outline-offset:2px}.navbar__download svg{stroke-width:2.5px;flex-shrink:0}.navbar__cta{background:var(--gradient-primary);color:#10002b;letter-spacing:.5px;cursor:pointer;border:none;border-radius:999px;padding:12px 28px;font-size:.92rem;font-weight:700;text-decoration:none;transition:all .3s;position:relative;overflow:hidden;box-shadow:0 8px 24px #91e5f659}.navbar__cta:before{content:"";background:linear-gradient(115deg,#0000 30%,#fff3 50%,#0000 70%);transition:transform .6s;position:absolute;inset:0;transform:translate(-100%)}.navbar__cta:hover{transform:translateY(-3px);box-shadow:0 12px 32px #91e5f680}.navbar__cta:hover:before{transform:translate(100%)}.navbar__cta:focus-visible{outline-offset:2px;outline:2px solid #10002b}.navbar__cta span{z-index:1;position:relative}.navbar__burger{cursor:pointer;background:0 0;border:none;flex-direction:column;justify-content:center;gap:5px;width:32px;height:32px;display:none}.navbar__burger span{background:var(--neon-cyan);border-radius:2px;width:100%;height:2px;transition:transform .25s,opacity .25s}.navbar__burger--open span:first-child{transform:translateY(7px)rotate(45deg)}.navbar__burger--open span:nth-child(2){opacity:0}.navbar__burger--open span:nth-child(3){transform:translateY(-7px)rotate(-45deg)}.navbar__mobile{-webkit-backdrop-filter:blur(20px);border-top:1px solid var(--border-glow);z-index:999;transform-origin:top;background:#1e003af7;flex-direction:column;gap:2px;margin-top:0;padding:18px;animation:.35s cubic-bezier(.22,1,.36,1) both mobileMenuDrop;display:flex;position:relative;box-shadow:0 18px 40px #00000047}@keyframes mobileMenuDrop{0%{opacity:0;transform:translateY(-18px)}to{opacity:1;transform:translateY(0)}}.navbar__mobile-link,.navbar__mobile-details summary{color:var(--text-primary);border-radius:var(--radius-sm);cursor:pointer;padding:12px 8px;font-size:.95rem;font-weight:500;list-style:none;transition:all .2s}.navbar__mobile-link:hover,.navbar__mobile-details summary:hover{color:var(--neon-cyan);background:#91e5f61a;transform:translate(4px)}.navbar__mobile-details summary::-webkit-details-marker{display:none}.navbar__mobile-submenu{border-left:2px solid var(--border-glow);flex-direction:column;margin:4px 0 8px 8px;padding-left:12px;display:flex}.navbar__mobile-link--sub{align-items:center;gap:10px;font-size:.88rem;display:flex}.navbar__mobile-icon{color:var(--role-color);flex-shrink:0}.navbar__mobile-download{text-align:center;border-radius:var(--radius-sm);border:1.5px solid var(--neon-cyan,#91e5f6);color:var(--neon-cyan,#91e5f6);background:#91e5f61a;justify-content:center;align-items:center;gap:8px;margin-top:8px;padding:12px 8px;font-weight:700;transition:all .2s;display:flex}.navbar__mobile-download:hover{background:var(--neon-cyan,#91e5f6);color:#10002b}.navbar__mobile-cta{text-align:center;background:var(--gradient-primary);border-radius:var(--radius-sm);border:none;margin-top:6px;padding:12px 8px;font-weight:700;transition:all .2s;color:#10002b!important}.navbar__mobile-cta:hover{transform:translateY(-2px);box-shadow:0 6px 20px #91e5f666}@media (width<=900px){.navbar__links--desktop,.navbar__cta,.navbar__download{display:none}.navbar__burger{display:flex}}@media (prefers-reduced-motion:reduce){.navbar__status-dot,.navbar__dropdown-menu,.navbar__mobile,.navbar__caret,.navbar__cta,.navbar__download,.navbar__link,.navbar__dropdown-item{transition:none!important;animation:none!important}}.navbar__link:focus-visible,.navbar__cta:focus-visible,.navbar__download:focus-visible,.navbar__dropdown-item:focus-visible{outline:2px solid var(--neon-cyan);outline-offset:2px}.footer{border-top:1px solid var(--border-hairline);margin-top:120px;padding:80px 0 32px;position:relative;overflow:hidden}.footer__inner{z-index:2;position:relative}.footer__grid{border-bottom:1px solid var(--border-hairline);grid-template-columns:1.5fr 1fr 1fr 1fr;gap:40px;padding-bottom:48px;display:grid}.footer__logo{font-family:var(--font-display);color:var(--text-primary);align-items:center;gap:10px;margin-bottom:16px;font-size:1.3rem;font-weight:500;display:flex}.footer__logo-icon{border-radius:var(--radius-sm);background:var(--gradient-champagne-btn);width:36px;height:36px;color:var(--bg-primary);place-items:center;font-size:.85rem;font-weight:800;display:grid}.footer__tagline{color:var(--text-secondary);max-width:320px;font-size:.9rem;line-height:1.7}.footer__col h4{color:var(--text-primary);font-family:var(--font-body);letter-spacing:.03em;margin-bottom:18px;font-size:.95rem;font-weight:600}.footer__col ul{flex-direction:column;gap:12px;display:flex}.footer__col a{color:var(--text-secondary);font-size:.88rem;transition:all .2s}.footer__col a:hover{color:var(--champagne);padding-left:4px}.footer__contact-text{color:var(--text-secondary);margin-bottom:16px;font-size:.85rem;line-height:1.6}.footer__cta{background:var(--gradient-champagne-btn);color:var(--bg-primary);border-radius:999px;padding:10px 20px;font-size:.85rem;font-weight:700;transition:all .25s;display:inline-block;box-shadow:0 8px 22px #e8c78a38}.footer__cta:hover{transform:translateY(-2px);box-shadow:0 12px 30px #e8c78a52}.footer__bottom{color:var(--text-muted);justify-content:space-between;align-items:center;padding-top:28px;font-size:.8rem;display:flex}@media (width<=900px){.footer__grid{grid-template-columns:1fr 1fr;gap:32px}}@media (width<=560px){.footer__grid{grid-template-columns:1fr}.footer__bottom{text-align:center;flex-direction:column;gap:8px}}.hero{isolation:isolate;align-items:center;min-height:100vh;padding:140px 0 80px;display:flex;position:relative;overflow:hidden}.hero:after{content:"";z-index:1;clip-path:polygon(14% 0%,100% 0%,100% 100%,0% 100%);background-image:url(/hook/dashboard.png);background-position:0;background-size:cover;width:52%;height:100%;animation:.9s cubic-bezier(.22,1,.36,1) .3s both panelSlideIn;position:absolute;top:0;right:0;-webkit-mask-image:linear-gradient(90deg,#0000 0%,#000 18%);mask-image:linear-gradient(90deg,#0000 0%,#000 18%)}@keyframes panelSlideIn{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0%)}}.hero__inner{z-index:2;grid-template-columns:1fr;align-items:center;gap:0;margin-left:0;padding-left:80px;display:grid;position:relative}.hero__content{max-width:560px}.hero__eyebrow{font-family:var(--font-body);letter-spacing:.14em;text-transform:uppercase;color:var(--text-muted);align-items:center;gap:10px;margin-bottom:26px;font-size:.78rem;font-weight:600;display:inline-flex}.hero__eyebrow-dot{background:var(--champagne);width:5px;height:5px;box-shadow:var(--glow-champagne);border-radius:50%}.hero__title{font-family:var(--font-display);letter-spacing:-.01em;color:var(--text-primary);margin-bottom:22px;font-size:clamp(2.4rem,4.6vw,3.9rem);font-weight:500;line-height:1.14}.hero__title-accent{background:var(--gradient-champagne-cyan);color:#0000;-webkit-background-clip:text;background-clip:text;font-style:italic}.hero__desc{color:var(--text-secondary);max-width:500px;margin-bottom:36px;font-size:1.05rem;line-height:1.65}.hero__actions{align-items:center;gap:20px;margin-bottom:52px;display:flex}.hero__btn-primary{background:var(--gradient-champagne-btn);color:var(--bg-primary);letter-spacing:.01em;border-radius:999px;padding:15px 32px;font-size:.92rem;font-weight:700;transition:transform .3s,box-shadow .3s;position:relative;overflow:hidden;box-shadow:0 8px 28px #e8c78a40}.hero__btn-primary span{z-index:1;position:relative}.hero__btn-primary:before{content:"";background:linear-gradient(115deg,#0000 30%,#ffffff8c 50%,#0000 70%);transition:transform .6s;position:absolute;inset:0;transform:translate(-120%)}.hero__btn-primary:hover{transform:translateY(-2px);box-shadow:0 12px 36px #e8c78a59}.hero__btn-primary:hover:before{transform:translate(120%)}.hero__btn-secondary{border:1px solid var(--border-glow);color:var(--text-primary);border-radius:999px;padding:15px 30px;font-size:.92rem;font-weight:500;transition:all .3s}.hero__btn-secondary:hover{border-color:var(--champagne);color:var(--champagne)}.hero__stats{align-items:center;gap:28px;display:flex}.hero__stat{flex-direction:column;gap:4px;display:flex}.hero__stat-divider{background:var(--border-hairline-strong);width:1px;height:32px}.hero__stat-number{font-family:var(--font-display);letter-spacing:-.01em;color:var(--text-primary);font-size:1.7rem;font-weight:500}.hero__stat-label{color:var(--text-muted);letter-spacing:.02em;font-size:.78rem}@media (width<=900px){.hero:after{display:none}.hero{padding:120px 20px 70px}.hero__inner{flex-direction:column;align-items:center;width:100%;max-width:680px;margin:0 auto;padding-left:0;padding-right:0;display:flex}.hero__content{text-align:center;width:100%;max-width:680px}.hero__title{text-align:center;width:100%}.hero__desc{text-align:center;width:100%;max-width:560px;margin-left:auto;margin-right:auto}.hero__actions,.hero__stats{justify-content:center}}@media (width<=768px){.hero{min-height:calc(100vh - 64px);padding:110px 20px 60px}.hero__inner{width:100%;margin:0 auto;padding:0}.hero__content{text-align:center;width:100%;max-width:620px}.hero__title{letter-spacing:-.025em;text-align:center;margin-bottom:20px;font-size:clamp(2.1rem,7vw,3rem);line-height:1.13}.hero__desc{text-align:center;max-width:560px;margin-bottom:30px;margin-left:auto;margin-right:auto;font-size:.98rem;line-height:1.65}.hero__actions{justify-content:center;gap:12px;width:100%;max-width:520px;margin-left:auto;margin-right:auto}.hero__btn-primary,.hero__btn-secondary{text-align:center}.hero__stats{justify-content:center;width:100%;max-width:560px}}@media (width<=480px){.hero{min-height:calc(100vh - 64px);padding:105px 16px 55px}.hero__inner{width:100%;padding:0}.hero__content{width:100%;max-width:100%}.hero__title{width:100%;margin-bottom:22px;font-size:clamp(2rem,8.5vw,2.45rem);line-height:1.12}.hero__desc{width:100%;max-width:390px;margin-bottom:30px;font-size:.94rem;line-height:1.65}.hero__actions{flex-direction:column;align-items:center;gap:12px;width:100%;max-width:390px;margin-bottom:42px}.hero__btn-primary,.hero__btn-secondary{box-sizing:border-box;text-align:center;justify-content:center;width:100%;padding:15px 24px}.hero__stats{grid-template-columns:repeat(4,1fr);justify-content:center;align-items:start;gap:0;width:100%;max-width:390px;display:grid}.hero__stat{text-align:center;align-items:center;min-width:0}.hero__stat-divider{display:none}.hero__stat-number{white-space:nowrap;font-size:1.35rem}.hero__stat-label{white-space:nowrap;font-size:.68rem;line-height:1.3}}.hero__floaters{z-index:1;pointer-events:none;position:absolute;inset:0}.hero__floater{color:var(--text-muted);opacity:.3;transform:translate(calc(var(--mx,0) * var(--depth,10) * 1px), calc(var(--my,0) * var(--depth,10) * 1px));transition:transform .4s cubic-bezier(.22,1,.36,1);position:absolute}.hero__floater-inner{animation:eduOrbitDrift var(--orbit-duration,18s) ease-in-out infinite;animation-delay:var(--orbit-delay,0s);display:block}@keyframes eduOrbitDrift{0%{transform:translate(0)rotate(-3deg)scale(1)}20%{transform:translate(8px,-11px)rotate(4deg)scale(1.04)}42%{transform:translate(14px,3px)rotate(7deg)scale(.97)}60%{transform:translate(3px,13px)rotate(-2deg)scale(1.03)}80%{transform:translate(-9px,5px)rotate(-6deg)scale(.98)}to{transform:translate(0)rotate(-3deg)scale(1)}}.hero__floater:first-child .hero__floater-inner{--orbit-duration:19s;--orbit-delay:0s}.hero__floater:nth-child(2) .hero__floater-inner{--orbit-duration:15s;--orbit-delay:-3s}.hero__floater:nth-child(3) .hero__floater-inner{--orbit-duration:21s;--orbit-delay:-7s}.hero__floater:nth-child(4) .hero__floater-inner{--orbit-duration:17s;--orbit-delay:-1.5s}.hero__floater:nth-child(5) .hero__floater-inner{--orbit-duration:20s;--orbit-delay:-9s}@media (width<=900px){.hero__floaters{display:none}}@media (prefers-reduced-motion:reduce){.hero__floater,.hero__floater-inner{transition:none!important;animation:none!important;transform:none!important}}@keyframes dashboardSlideInRight{0%{opacity:0;transform:perspective(1000px)translate(120px)rotateY(-15deg)}to{opacity:1;transform:perspective(1000px)translate(0)rotateY(0)}}@keyframes dashboardSlideInLeft{0%{opacity:0;transform:perspective(1000px)translate(-120px)rotateY(15deg)}to{opacity:1;transform:perspective(1000px)translate(0)rotateY(0)}}.hero__dashboard-image{animation:.8s cubic-bezier(.22,1,.36,1) forwards dashboardSlideInRight}@media (width<=900px){.hero__dashboard-image{animation:.8s cubic-bezier(.22,1,.36,1) forwards dashboardSlideInLeft}}@media (prefers-reduced-motion:reduce){.hero__dashboard-image{opacity:1!important;animation:none!important;transform:none!important}}.about{padding:120px 0;position:relative;overflow:hidden}.about__inner{z-index:2;position:relative}.about__header{text-align:center;max-width:720px;margin:0 auto 64px}.about__eyebrow{font-family:var(--font-body);letter-spacing:.14em;text-transform:uppercase;color:var(--text-muted);align-items:center;gap:10px;margin-bottom:22px;font-size:.78rem;font-weight:600;display:inline-flex}.about__eyebrow-dot{background:var(--champagne);width:5px;height:5px;box-shadow:var(--glow-champagne);border-radius:50%}.about__title{font-family:var(--font-display);letter-spacing:-.01em;color:var(--text-primary);margin-bottom:20px;font-size:clamp(1.8rem,4vw,2.6rem);font-weight:500;line-height:1.25}.about__title-accent{background:var(--gradient-champagne-cyan);color:#0000;-webkit-background-clip:text;background-clip:text;font-style:italic}.about__desc{color:var(--text-secondary);font-size:1rem;line-height:1.7}.about__grid{grid-template-columns:repeat(4,1fr);gap:24px;display:grid}.about__slider,.about__dots{display:none}@media (width<=1024px){.about__grid{grid-template-columns:repeat(2,1fr)}}@media (width<=600px){.about{padding:70px 0}.about__header{margin-bottom:36px;padding:0 20px}.about__title{font-size:1.8rem;line-height:1.2}.about__desc{font-size:.9rem;line-height:1.6}.about__grid{display:none}.about__slider{width:100%;display:block;overflow:hidden}.about__slider-track{width:100%;transition:transform .45s cubic-bezier(.22,1,.36,1);display:flex}.about__slide{box-sizing:border-box;flex:0 0 100%;width:100%;padding:0 20px}.about__slide .about__card{box-sizing:border-box;border-radius:18px;width:100%;padding:28px 24px}.about__card-icon{width:44px;height:44px;margin-bottom:16px}.about__card-title{margin-bottom:8px;font-size:1.05rem}.about__card-desc{font-size:.86rem;line-height:1.6}.about__dots{justify-content:center;align-items:center;gap:7px;margin-top:20px;display:flex}.about__dot{background:var(--border-glow);cursor:pointer;border:0;border-radius:50%;width:7px;height:7px;padding:0;transition:width .25s,background .25s}.about__dot--active{background:var(--champagne);border-radius:999px;width:22px}}.about__card{border-radius:var(--radius-lg);background:var(--surface-card-soft);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid var(--border-hairline);border-top:1px solid var(--border-champagne-soft);padding:32px 24px;transition:transform .35s cubic-bezier(.22,1,.36,1),border-color .35s,box-shadow .35s;position:relative}.about__card:hover{border-color:#91e5f64d;border-top-color:var(--border-champagne);transform:translateY(-6px);box-shadow:0 24px 50px #00000059,0 0 24px #e8c78a14}.about__card-icon{width:48px;height:48px;color:var(--champagne);border:1px solid var(--border-champagne-soft);background:#e8c78a14;border-radius:12px;justify-content:center;align-items:center;margin-bottom:18px;display:flex}.about__card-title{font-family:var(--font-display);color:var(--text-primary);margin-bottom:10px;font-size:1.05rem;font-weight:500}.about__card-desc{color:var(--text-secondary);font-size:.88rem;line-height:1.65}.about__gallery{margin-top:110px;position:relative}.about__gallery-header{text-align:center;max-width:680px;margin:0 auto 42px}.about__gallery-header .about__eyebrow{margin-bottom:16px}.about__gallery-title{font-family:var(--font-display);color:var(--text-primary);margin-bottom:14px;font-size:clamp(1.6rem,3.5vw,2.25rem);font-weight:500;line-height:1.3}.about__gallery-desc{max-width:580px;color:var(--text-secondary);margin:0 auto;font-size:.94rem;line-height:1.7}.about__gallery-view{border-radius:24px;width:100%;position:relative;overflow:hidden}.about__gallery-track{will-change:transform;width:100%;transition:transform .65s cubic-bezier(.22,1,.36,1);display:flex}.about__gallery-slide{box-sizing:border-box;flex:0 0 100%;width:100%;min-width:100%;padding:0 48px}.about__gallery-image-wrap{border:1px solid var(--border-hairline);border-top-color:var(--border-champagne-soft);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:linear-gradient(145deg,#ffffff0b,#ffffff05);border-radius:22px;justify-content:center;align-items:center;width:100%;height:clamp(380px,48vw,620px);display:flex;position:relative;overflow:hidden;box-shadow:0 30px 80px #00000052,0 0 40px #e8c78a0f}.about__gallery-image{object-fit:contain;object-position:center;box-sizing:border-box;width:100%;height:100%;padding:18px;transition:transform .5s,opacity .4s;display:block}.about__gallery-caption{text-align:center;max-width:650px;margin:22px auto 0}.about__gallery-caption h4{font-family:var(--font-display);color:var(--text-primary);margin-bottom:7px;font-size:1.15rem;font-weight:500}.about__gallery-caption p{color:var(--text-secondary);font-size:.86rem;line-height:1.6}.about__gallery-arrow{z-index:5;width:46px;height:46px;color:var(--text-primary);border:1px solid var(--border-champagne-soft);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);cursor:pointer;background:#0a0519b8;border-radius:50%;justify-content:center;align-items:center;padding:0;transition:transform .3s,background .3s,border-color .3s,box-shadow .3s;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.about__gallery-arrow:hover{border-color:var(--border-champagne);background:#e8c78a1f;box-shadow:0 10px 30px #0000004d,0 0 18px #e8c78a1a}.about__gallery-arrow--prev{left:12px}.about__gallery-arrow--next{right:12px}.about__gallery-dots{justify-content:center;align-items:center;gap:7px;margin-top:24px;display:flex}.about__gallery-dot{background:var(--border-glow);cursor:pointer;border:0;border-radius:50%;width:7px;height:7px;padding:0;transition:width .25s,background .25s,box-shadow .25s}.about__gallery-dot--active{background:var(--champagne);width:26px;box-shadow:var(--glow-champagne);border-radius:999px}@media (width<=1024px){.about__gallery{margin-top:90px}.about__gallery-slide{padding:0 32px}.about__gallery-image-wrap{height:480px}}@media (width<=600px){.about__gallery{margin-top:72px}.about__gallery-header{margin-bottom:28px;padding:0 20px}.about__gallery-title{font-size:1.55rem}.about__gallery-desc{font-size:.86rem;line-height:1.6}.about__gallery-view{border-radius:18px}.about__gallery-slide{padding:0 20px}.about__gallery-image-wrap{border-radius:18px;height:200px}.about__gallery-image{object-fit:contain;object-position:center;width:108%;max-width:none;height:auto;padding:0}.about__gallery-caption{margin-top:16px;padding:0 10px}.about__gallery-caption h4{margin-bottom:5px;font-size:1rem}.about__gallery-caption p{font-size:.8rem;line-height:1.55}.about__gallery-arrow{width:36px;height:36px}.about__gallery-arrow svg{width:18px;height:18px}.about__gallery-arrow--prev{left:8px}.about__gallery-arrow--next{right:8px}.about__gallery-dots{gap:6px;margin-top:18px}.about__gallery-dot{width:6px;height:6px}.about__gallery-dot--active{width:20px}}.features{padding:120px 0;position:relative;overflow:hidden}.features__inner{z-index:2;position:relative}.features__header{text-align:center;max-width:720px;margin:0 auto 64px}.features__eyebrow{font-family:var(--font-body);letter-spacing:.14em;text-transform:uppercase;color:var(--text-muted);align-items:center;gap:10px;margin-bottom:22px;font-size:.78rem;font-weight:600;display:inline-flex}.features__title{font-family:var(--font-display);letter-spacing:-.01em;color:var(--text-primary);margin-bottom:20px;font-size:clamp(1.8rem,4vw,2.6rem);font-weight:500;line-height:1.25}.features__desc{color:var(--text-secondary);font-size:1rem;line-height:1.7}.features__grid{grid-template-columns:repeat(4,1fr);gap:24px;display:grid}@media (width<=1024px){.features__grid{grid-template-columns:repeat(2,1fr);gap:20px}}@media (width<=600px){.features{padding:72px 0}.features__header{margin-bottom:44px}.features__grid{grid-template-columns:1fr;gap:16px}}.features__card{border-radius:var(--radius-lg);background:var(--surface-card-soft);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid var(--border-hairline);border-top:1px solid var(--border-champagne-soft);padding:28px 24px;transition:transform .35s cubic-bezier(.22,1,.36,1),border-color .35s,box-shadow .35s;position:relative;overflow:hidden}.features__card:hover{border-color:#91e5f64d;border-top-color:var(--border-champagne);transform:translateY(-6px);box-shadow:0 24px 50px #00000059,0 0 24px #e8c78a14}@media (width<=600px){.features__card{padding:22px 20px}.features__card:hover{transform:none}}.features__card-top{justify-content:space-between;align-items:center;margin-bottom:18px;display:flex}.features__card-icon,.features__highlight-icon{width:44px;height:44px;color:var(--champagne);border:1px solid var(--border-champagne-soft);background:#e8c78a14;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.features__card-icon svg,.features__highlight-icon svg{width:22px;height:22px}.features__card-badge{font-family:var(--font-body);letter-spacing:.06em;text-transform:uppercase;color:var(--neon-cyan);border:1px solid var(--border-glow);background:#91e5f60f;border-radius:999px;padding:4px 10px;font-size:.68rem}.features__card-title{font-family:var(--font-display);color:var(--text-primary);margin-bottom:8px;font-size:1.05rem;font-weight:500}.features__card-desc{color:var(--text-secondary);margin-bottom:18px;font-size:.88rem;line-height:1.6}.features__card-list{flex-direction:column;gap:10px;list-style:none;display:flex}.features__card-list li{color:var(--text-secondary);align-items:flex-start;gap:8px;font-size:.82rem;line-height:1.5;display:flex}.features__card-dot{background:var(--champagne);width:6px;height:6px;box-shadow:var(--glow-champagne);border-radius:50%;flex-shrink:0;margin-top:6px}.features__highlights{margin-top:100px}@media (width<=600px){.features__highlights{margin-top:64px}}.features__highlights-header{text-align:center;max-width:720px;margin:0 auto 48px}@media (width<=600px){.features__highlights-header{margin-bottom:32px}}.features__highlights-title{font-family:var(--font-display);letter-spacing:-.01em;color:var(--text-primary);margin-top:18px;font-size:clamp(1.5rem,3.2vw,2.1rem);font-weight:500;line-height:1.3}.features__highlights-list{grid-template-columns:repeat(2,1fr);gap:20px;display:grid}@media (width<=600px){.features__highlights-list{scroll-snap-type:x mandatory;scroll-behavior:smooth;-webkit-overflow-scrolling:touch;scrollbar-width:none;gap:14px;margin-right:-20px;padding-right:20px;display:flex;overflow:auto hidden}.features__highlights-list::-webkit-scrollbar{display:none}.features__highlight-item{scroll-snap-align:start;flex:0 0 86%;gap:14px;min-width:86%;padding:16px}.features__highlight-item:hover{transform:none}.features__highlight-icon{width:38px;height:38px}.features__highlight-icon svg{width:18px;height:18px}}.features__highlight-item{border-radius:var(--radius-lg);background:var(--surface-card-soft);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid var(--border-hairline);border-left:2px solid var(--border-champagne-soft);align-items:flex-start;gap:18px;padding:22px;transition:transform .35s cubic-bezier(.22,1,.36,1),border-color .35s,box-shadow .35s;display:flex}.features__highlight-item:hover{border-left-color:var(--champagne);transform:translateY(-4px);box-shadow:0 20px 44px #00000052,0 0 20px #e8c78a14}@media (width<=600px){.features__highlight-item{gap:14px;padding:16px}.features__highlight-item:hover{transform:none}.features__highlight-icon{width:38px;height:38px}.features__highlight-icon svg{width:18px;height:18px}}.features__highlight-text{flex:1;min-width:0}.features__highlight-title{font-family:var(--font-display);color:var(--text-primary);margin-bottom:6px;font-size:1rem;font-weight:500}.features__highlight-desc{color:var(--text-secondary);font-size:.86rem;line-height:1.65}.features__cta-wrap{justify-content:center;margin-top:44px;display:flex}.features__cta-btn{font-family:var(--font-body);letter-spacing:.02em;color:var(--text-primary);border:1px solid var(--border-champagne);cursor:pointer;background:#e8c78a14;border-radius:999px;padding:14px 34px;font-size:.9rem;font-weight:600;transition:transform .3s cubic-bezier(.22,1,.36,1),box-shadow .3s,background .3s}.features__cta-btn:hover{background:#e8c78a24;transform:translateY(-2px);box-shadow:0 16px 36px #0000004d,0 0 20px #e8c78a1f}@media (width<=600px){.features{padding:72px 0}.features__header{margin-bottom:44px}.features__grid{scroll-snap-type:x mandatory;scroll-behavior:smooth;-webkit-overflow-scrolling:touch;scrollbar-width:none;gap:16px;margin-right:-20px;padding-right:20px;display:flex;overflow:auto hidden}.features__grid::-webkit-scrollbar{display:none}.features__card{scroll-snap-align:start;flex:0 0 82%;width:82%;min-width:82%;padding:22px 20px}.features__card:hover{transform:none}}.download__phone-wrapper{will-change:transform, opacity}.download__phone-wrapper--1,.download__phone-wrapper--2,.download__phone-wrapper--3,.download__phone-wrapper--4{backface-visibility:hidden}@media (width<=900px){.download__phone-wrapper{will-change:transform, opacity}}@media (prefers-reduced-motion:reduce){.download__phone-wrapper{will-change:auto}}.download{padding:120px 0;position:relative;overflow:hidden}.download__glow-orb{pointer-events:none;z-index:1;background:radial-gradient(circle,#e8c78a1f,#0000 70%);border-radius:50%;width:560px;height:560px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.download__inner{z-index:2;justify-content:center;width:100%;display:flex;position:relative}.download__content{text-align:center;width:100%;max-width:1200px}.download__eyebrow{font-family:var(--font-body);letter-spacing:.14em;text-transform:uppercase;color:var(--text-muted);justify-content:center;align-items:center;gap:10px;margin-bottom:22px;font-size:.78rem;font-weight:600;display:inline-flex}.download__title{font-family:var(--font-display);letter-spacing:-.01em;color:var(--text-primary);margin-bottom:20px;font-size:clamp(1.8rem,4vw,2.8rem);font-weight:500;line-height:1.25}.download__desc{width:100%;max-width:620px;color:var(--text-secondary);margin:0 auto 36px;font-size:1rem;line-height:1.7}.download__buttons{flex-wrap:wrap;justify-content:center;align-items:center;gap:16px;display:flex}.download__btn{border-radius:var(--radius-md);background:var(--surface-card-soft);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--border-hairline);border-top:1px solid var(--border-champagne-soft);align-items:center;gap:12px;padding:12px 22px;text-decoration:none;transition:transform .3s,border-color .3s,box-shadow .3s;display:flex}.download__btn:hover{border-color:#91e5f64d;border-top-color:var(--border-champagne);transform:translateY(-4px);box-shadow:0 16px 36px #0000004d,0 0 20px #e8c78a1a}.download__btn-icon{width:30px;height:30px;color:var(--champagne);border:1px solid var(--border-champagne-soft);background:#e8c78a14;border-radius:9px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.download__btn-icon svg{width:16px;height:16px}.download__btn-text{text-align:left;flex-direction:column;line-height:1.3;display:flex}.download__btn-label{color:var(--text-muted);font-size:.7rem}.download__btn-sub{font-family:var(--font-display);color:var(--text-primary);font-size:.95rem;font-weight:500}.download__visual{justify-content:center;align-items:center;width:100%;margin-top:65px;display:flex;overflow:visible}.download__phones{justify-content:center;align-items:flex-end;gap:22px;width:100%;display:flex}.download__phone-wrapper{opacity:0;will-change:transform, opacity;backface-visibility:hidden;flex:none;transition:transform 1s cubic-bezier(.22,1,.36,1),opacity .65s;transform:translate(180px)translateY(15px)scale(.88)}.download__visual--visible .download__phone-wrapper{opacity:1;transform:translate(0)translateY(0)scale(1)}.download__visual--visible .download__phone-wrapper--1{transition-delay:0s}.download__visual--visible .download__phone-wrapper--2{transition-delay:.14s}.download__visual--visible .download__phone-wrapper--3{transition-delay:.28s}.download__visual--visible .download__phone-wrapper--4{transition-delay:.42s}.download__phone-mockup{box-sizing:border-box;background:#080808;border:1px solid #ffffff29;border-radius:30px;width:190px;height:382px;position:relative;overflow:hidden;box-shadow:0 25px 55px #00000073,0 0 0 1px #ffffff09}.download__phone-mockup:before{content:"";pointer-events:none;z-index:5;border:1px solid #ffffff14;border-radius:27px;position:absolute;inset:4px}.download__phone-notch{z-index:10;background:#050505;border-radius:999px;width:58px;height:14px;position:absolute;top:9px;left:50%;transform:translate(-50%);box-shadow:0 1px 3px #000c}.download__phone-screen{z-index:1;background:#111;border-radius:28px;position:absolute;inset:1px;overflow:hidden}.download__phone-image{object-fit:contain;object-position:center;image-rendering:auto;background:#111;width:100%;height:100%;display:block}@media (width>=1400px){.download__content{max-width:1350px}.download__phones{gap:28px}.download__phone-mockup{border-radius:32px;width:210px;height:422px}.download__phone-mockup:before{border-radius:29px;inset:4px}.download__phone-screen{border-radius:30px}.download__phone-notch{width:64px;height:15px;top:10px}}@media (width>=1200px) and (width<=1399px){.download__phones{gap:20px}.download__phone-mockup{border-radius:28px;width:180px;height:362px}.download__phone-mockup:before{border-radius:25px;inset:4px}.download__phone-screen{border-radius:26px}.download__phone-notch{width:55px;height:13px;top:8px}}@media (width<=1199px) and (width>=901px){.download__phones{gap:12px}.download__phone-mockup{border-radius:24px;width:155px;height:311px}.download__phone-mockup:before{border-radius:21px;inset:3px}.download__phone-screen{border-radius:22px}.download__phone-notch{width:45px;height:11px;top:7px}}@media (width<=900px){.download{padding:90px 0}.download__content{max-width:100%}.download__visual{width:100%;margin-top:50px;overflow:hidden}.download__phones{scroll-snap-type:x mandatory;scroll-behavior:smooth;-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none;justify-content:flex-start;align-items:flex-end;gap:0;width:100%;padding-left:calc(50% - 130px);padding-right:calc(50% - 130px);display:flex;overflow:auto hidden}.download__phones::-webkit-scrollbar{display:none}.download__phone-wrapper{scroll-snap-align:center;opacity:1;will-change:transform, opacity;flex:0 0 260px;justify-content:center;width:260px;transition:transform .8s cubic-bezier(.22,1,.36,1),opacity .6s;display:flex;transform:translateY(25px)scale(.92)}.download__visual--visible .download__phone-wrapper{opacity:1;transform:translateY(0)scale(1)}.download__visual--visible .download__phone-wrapper--1,.download__visual--visible .download__phone-wrapper--2,.download__visual--visible .download__phone-wrapper--3,.download__visual--visible .download__phone-wrapper--4{transition-delay:0s}.download__phone-mockup{border-radius:30px;width:220px;height:442px}.download__phone-mockup:before{border-radius:27px;inset:4px}.download__phone-screen{border-radius:28px;inset:1px}.download__phone-notch{width:58px;height:13px;top:9px}}@media (width<=480px){.download{padding:80px 0}.download__desc{padding:0 10px;font-size:.92rem;line-height:1.65}.download__buttons{gap:10px}.download__btn{padding:10px 16px}.download__visual{margin-top:45px}.download__phones{padding-left:calc(50% - 125px);padding-right:calc(50% - 125px)}.download__phone-wrapper{flex-basis:250px;width:250px}.download__phone-mockup{border-radius:28px;width:200px;height:402px}.download__phone-mockup:before{border-radius:25px;inset:3px}.download__phone-screen{border-radius:26px;inset:1px}.download__phone-notch{width:53px;height:12px;top:8px}}@media (width<=360px){.download__phones{padding-left:calc(50% - 115px);padding-right:calc(50% - 115px)}.download__phone-wrapper{flex-basis:230px;width:230px}.download__phone-mockup{width:180px;height:362px}.download__phone-notch{width:48px;height:11px}}@media (prefers-reduced-motion:reduce){.download__phone-wrapper{opacity:1;transition:none;transform:none}.download__phones{scroll-behavior:auto}}.testimoni-section{z-index:2;padding:96px 0 120px;position:relative}.testimoni-header{text-align:center;max-width:620px;margin:0 auto 56px}.testimoni-eyebrow{font-family:var(--font-body);letter-spacing:.14em;text-transform:uppercase;color:var(--champagne);border:1px solid var(--border-champagne-soft);border-radius:999px;margin-bottom:18px;padding:6px 16px;font-size:.78rem;font-weight:600;display:inline-block}.testimoni-title{font-family:var(--font-display);font-size:clamp(1.8rem,3.4vw,2.6rem);font-weight:600;line-height:1.25}.testimoni-grid{grid-template-columns:repeat(3,1fr);gap:24px;display:grid}@media (width<=860px){.testimoni-grid{gap:14px}}@media (width<=640px){.testimoni-grid{gap:10px}}.testimoni-card{background:var(--surface-card);border:1px solid var(--border-hairline);border-radius:var(--radius-md);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);will-change:transform, opacity;padding:32px 28px 26px;transition:opacity .4s,transform .4s,border-color .3s,box-shadow .3s;animation:.55s cubic-bezier(.34,1.56,.64,1) both testimoniPopIn;position:relative}.testimoni-card.testimoni-fading{opacity:0;transform:translateY(-14px)scale(.94)}@keyframes testimoniPopIn{0%{opacity:0;transform:translateY(24px)scale(.88)rotate(-3deg)}to{opacity:1;transform:translateY(0)scale(1)rotate(0)}}.testimoni-card:hover{border-color:var(--border-glow);box-shadow:var(--glow-cyan)}.testimoni-card:nth-child(2):hover{border-color:var(--border-champagne-soft);box-shadow:var(--glow-purple)}.testimoni-card:nth-child(3):hover{box-shadow:var(--glow-pink);border-color:#f7258559}.testimoni-quote-mark{font-family:var(--font-display);color:var(--neon-purple-light);opacity:.6;margin-bottom:4px;font-size:3rem;line-height:1;display:block}.testimoni-isi{color:var(--text-primary);min-height:72px;margin-bottom:22px;font-size:.96rem;line-height:1.65}.testimoni-footer{border-top:1px solid var(--border-hairline);align-items:center;gap:14px;padding-top:18px;display:flex}.testimoni-avatar{width:44px;height:44px;font-family:var(--font-heading);color:var(--text-primary);background:var(--gradient-primary);box-shadow:var(--glow-purple);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:1.05rem;font-weight:700;display:flex}.testimoni-card:nth-child(2) .testimoni-avatar{background:var(--gradient-champagne-cyan);color:var(--bg-primary)}.testimoni-card:nth-child(3) .testimoni-avatar{background:linear-gradient(135deg, var(--neon-pink), var(--neon-purple))}.testimoni-profil{flex-direction:column;gap:2px;display:flex}.testimoni-nama{font-family:var(--font-heading);color:var(--text-primary);font-size:.95rem;font-weight:600}@media (width<=860px){.testimoni-section{padding:72px 0 88px}.testimoni-card{border-radius:var(--radius-sm);padding:20px 16px 16px}.testimoni-quote-mark{margin-bottom:2px;font-size:2.1rem}.testimoni-isi{-webkit-line-clamp:5;-webkit-box-orient:vertical;min-height:0;margin-bottom:14px;font-size:.78rem;line-height:1.5;display:-webkit-box;overflow:hidden}.testimoni-footer{gap:8px;padding-top:12px}.testimoni-avatar{width:30px;height:30px;font-size:.8rem}.testimoni-nama{font-size:.72rem}}@media (width<=480px){.testimoni-card{padding:14px 10px 12px}.testimoni-isi{-webkit-line-clamp:4;font-size:.68rem}.testimoni-quote-mark{font-size:1.6rem}.testimoni-avatar{width:24px;height:24px;font-size:.68rem}.testimoni-nama{font-size:.62rem}}@media (prefers-reduced-motion:reduce){.testimoni-card{transition:opacity .3s!important;animation:none!important;transform:none!important}.testimoni-card.testimoni-fading{transform:none!important}}.contact{padding:100px 0 140px;position:relative;overflow:hidden}.contact__inner{z-index:2;position:relative}.contact__card{border-radius:var(--radius-lg);background:var(--surface-card-soft);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid var(--border-hairline);border-top:1px solid var(--border-champagne-soft);text-align:center;padding:64px 48px;position:relative;overflow:hidden}@media (width<=600px){.contact__card{padding:48px 24px}}.contact__card-content{z-index:1;max-width:640px;margin:0 auto;position:relative}.contact__eyebrow{font-family:var(--font-body);letter-spacing:.14em;text-transform:uppercase;color:var(--text-muted);align-items:center;gap:10px;margin-bottom:22px;font-size:.78rem;font-weight:600;display:inline-flex}.contact__title{font-family:var(--font-display);letter-spacing:-.01em;color:var(--text-primary);margin-bottom:18px;font-size:clamp(1.7rem,4vw,2.4rem);font-weight:500;line-height:1.3}.contact__desc{color:var(--text-secondary);margin-bottom:36px;font-size:1rem;line-height:1.7}.contact__actions{flex-wrap:wrap;justify-content:center;align-items:center;gap:18px;margin-bottom:36px;display:flex}@media (width<=480px){.contact__actions{flex-direction:column;width:100%}}.contact__btn-primary{font-family:var(--font-body);letter-spacing:.01em;color:var(--bg-primary);background:var(--gradient-champagne-btn);border-radius:999px;align-items:center;gap:8px;padding:14px 30px;font-size:.9rem;font-weight:700;text-decoration:none;transition:transform .3s,box-shadow .3s;display:inline-flex;position:relative;overflow:hidden;box-shadow:0 8px 28px #e8c78a40}.contact__btn-primary:hover{transform:translateY(-3px);box-shadow:0 12px 36px #e8c78a59}@media (width<=480px){.contact__btn-primary{justify-content:center;width:100%}.contact__btn-primary:hover{transform:none}}.contact__btn-arrow{align-items:center;transition:transform .3s;display:flex}.contact__btn-arrow svg{width:16px;height:16px}.contact__btn-primary:hover .contact__btn-arrow{transform:translate(4px)}.contact__btn-secondary{font-family:var(--font-body);color:var(--text-primary);border-bottom:1px solid var(--border-hairline-strong);padding-bottom:2px;font-size:.9rem;font-weight:500;text-decoration:none;transition:color .3s,border-color .3s}.contact__btn-secondary:hover{color:var(--champagne);border-color:var(--champagne)}.contact__meta{border-bottom:1px solid var(--border-hairline);flex-wrap:wrap;justify-content:center;align-items:center;gap:32px;margin-bottom:32px;padding-bottom:32px;display:flex}@media (width<=480px){.contact__meta{flex-direction:column;gap:14px}}.contact__meta-item{color:var(--text-secondary);align-items:center;gap:8px;font-size:.85rem;display:flex}.contact__meta-icon{color:var(--champagne);align-items:center;display:flex}.contact__meta-icon svg{width:16px;height:16px}.contact__socials{justify-content:center;align-items:center;gap:14px;display:flex}.contact__social-btn{width:44px;height:44px;color:var(--text-primary);border:1px solid var(--border-hairline-strong);background:#ffffff08;border-radius:50%;justify-content:center;align-items:center;text-decoration:none;transition:transform .3s,border-color .3s,box-shadow .3s,color .3s;display:flex}.contact__social-btn svg{width:19px;height:19px}.contact__social-btn:hover{border-color:var(--border-champagne);color:var(--champagne);transform:translateY(-3px);box-shadow:0 0 16px #e8c78a33}@media (width<=480px){.contact__social-btn:hover{transform:none}}.detail-fitur{padding:100px 0 120px;position:relative;overflow:hidden}.detail-fitur__inner{z-index:2;position:relative}.detail-fitur__back{font-family:var(--font-body);color:var(--text-secondary);border:1px solid var(--border-hairline);cursor:pointer;background:0 0;border-radius:999px;align-items:center;gap:8px;margin-bottom:40px;padding:10px 18px;font-size:.85rem;font-weight:500;transition:color .25s,border-color .25s,transform .25s;display:inline-flex}.detail-fitur__back:hover{color:var(--text-primary);border-color:var(--border-champagne-soft);transform:translate(-2px)}.detail-fitur__back-arrow{font-size:1rem}.detail-fitur__header{text-align:center;max-width:760px;margin:0 auto 80px}.detail-fitur__eyebrow{font-family:var(--font-body);letter-spacing:.14em;text-transform:uppercase;color:var(--text-muted);margin-bottom:22px;font-size:.78rem;font-weight:600;display:inline-flex}.detail-fitur__title{font-family:var(--font-display);letter-spacing:-.01em;color:var(--text-primary);margin-bottom:20px;font-size:clamp(1.9rem,4.5vw,2.9rem);font-weight:500;line-height:1.25}.detail-fitur__desc{color:var(--text-secondary);font-size:1rem;line-height:1.7}.detail-fitur__section{margin-top:88px}.detail-fitur__section:first-of-type{margin-top:0}.detail-fitur__section-title{font-family:var(--font-display);color:var(--text-primary);text-align:center;margin-bottom:32px;font-size:clamp(1.4rem,3vw,1.9rem);font-weight:500}@media (width<=600px){.detail-fitur{padding:72px 0 80px}.detail-fitur__header{margin-bottom:56px}.detail-fitur__section{margin-top:60px}.detail-fitur__section-title{margin-bottom:22px}}.detail-fitur__role-grid{grid-template-columns:repeat(3,1fr);gap:22px;display:grid}@media (width<=1024px){.detail-fitur__role-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=600px){.detail-fitur__role-grid{grid-template-columns:1fr;gap:16px}}.detail-fitur__role-card{border-radius:var(--radius-lg);background:var(--surface-card-soft);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid var(--border-hairline);border-top:1px solid var(--border-champagne-soft);padding:26px 22px;transition:transform .35s cubic-bezier(.22,1,.36,1),border-color .35s,box-shadow .35s}.detail-fitur__role-card:hover{border-color:#91e5f64d;border-top-color:var(--border-champagne);transform:translateY(-6px);box-shadow:0 24px 50px #00000059,0 0 24px #e8c78a14}@media (width<=600px){.detail-fitur__role-card{padding:20px 18px}.detail-fitur__role-card:hover{transform:none}}.detail-fitur__role-top{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.detail-fitur__role-icon,.detail-fitur__main-icon,.detail-fitur__why-icon{width:44px;height:44px;color:var(--champagne);border:1px solid var(--border-champagne-soft);background:#e8c78a14;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.detail-fitur__role-icon svg,.detail-fitur__main-icon svg,.detail-fitur__why-icon svg{width:22px;height:22px}.detail-fitur__role-badge{font-family:var(--font-body);letter-spacing:.06em;text-transform:uppercase;color:var(--neon-cyan);border:1px solid var(--border-glow);background:#91e5f60f;border-radius:999px;padding:4px 10px;font-size:.68rem}.detail-fitur__role-title{font-family:var(--font-display);color:var(--text-primary);margin-bottom:8px;font-size:1.05rem;font-weight:500}.detail-fitur__role-desc{color:var(--text-secondary);margin-bottom:16px;font-size:.86rem;line-height:1.6}.detail-fitur__role-list{flex-direction:column;gap:9px;list-style:none;display:flex}.detail-fitur__role-list li{color:var(--text-secondary);align-items:flex-start;gap:8px;font-size:.8rem;line-height:1.5;display:flex}.detail-fitur__role-dot{background:var(--champagne);width:6px;height:6px;box-shadow:var(--glow-champagne);border-radius:50%;flex-shrink:0;margin-top:6px}.detail-fitur__main-list{grid-template-columns:repeat(2,1fr);gap:20px;display:grid}@media (width<=900px){.detail-fitur__main-list{grid-template-columns:1fr;gap:14px}}.detail-fitur__main-item{border-radius:var(--radius-lg);background:var(--surface-card-soft);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid var(--border-hairline);border-left:2px solid var(--border-champagne-soft);align-items:flex-start;gap:18px;padding:22px;transition:transform .35s cubic-bezier(.22,1,.36,1),border-color .35s,box-shadow .35s;display:flex}.detail-fitur__main-item:hover{border-left-color:var(--champagne);transform:translateY(-4px);box-shadow:0 20px 44px #00000052,0 0 20px #e8c78a14}@media (width<=600px){.detail-fitur__main-item{gap:14px;padding:16px}.detail-fitur__main-item:hover{transform:none}.detail-fitur__main-icon{width:38px;height:38px}.detail-fitur__main-icon svg{width:18px;height:18px}}.detail-fitur__main-text{flex:1;min-width:0}.detail-fitur__main-title{font-family:var(--font-display);color:var(--text-primary);margin-bottom:6px;font-size:1rem;font-weight:500}.detail-fitur__main-desc{color:var(--text-secondary);font-size:.86rem;line-height:1.65}.detail-fitur__why-grid{grid-template-columns:repeat(2,1fr);gap:20px;display:grid}@media (width<=700px){.detail-fitur__why-grid{grid-template-columns:1fr;gap:14px}}.detail-fitur__why-card{border-radius:var(--radius-lg);background:var(--surface-card-soft);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid var(--border-hairline);border-top:1px solid var(--border-champagne-soft);align-items:flex-start;gap:18px;padding:26px 22px;display:flex}@media (width<=600px){.detail-fitur__why-card{gap:14px;padding:18px}}.detail-fitur__why-title{font-family:var(--font-display);color:var(--text-primary);margin-bottom:6px;font-size:1rem;font-weight:500}.detail-fitur__why-desc{color:var(--text-secondary);font-size:.86rem;line-height:1.65}.detail-fitur__cta-wrap{justify-content:center;margin-top:88px;display:flex}.detail-fitur__cta-btn{font-family:var(--font-body);letter-spacing:.02em;color:var(--text-primary);border:1px solid var(--border-champagne);cursor:pointer;background:#e8c78a14;border-radius:999px;padding:14px 34px;font-size:.9rem;font-weight:600;transition:transform .3s cubic-bezier(.22,1,.36,1),box-shadow .3s,background .3s}.detail-fitur__cta-btn:hover{background:#e8c78a24;transform:translateY(-2px);box-shadow:0 16px 36px #0000004d,0 0 20px #e8c78a1f}@media (width<=600px){.detail-fitur__cta-wrap{margin-top:56px}.detail-fitur__cta-btn{width:100%}}.tutorial-page{z-index:2;min-height:60vh;padding:140px 0 120px;position:relative}.tutorial-page__inner{max-width:1120px;margin:0 auto;position:relative}.tutorial-page__back{border:1px solid var(--border-hairline);border-radius:var(--radius-sm);font-family:var(--font-body);color:var(--text-secondary);background:0 0;align-items:center;gap:8px;margin-bottom:48px;padding:8px 16px;font-size:.85rem;font-weight:500;transition:color .2s,border-color .2s,transform .2s;display:inline-flex}.tutorial-page__back:hover{color:var(--champagne);border-color:var(--border-champagne-soft);transform:translate(-2px)}.tutorial-page__head{text-align:center;max-width:640px;margin:0 auto 40px}.tutorial-page__eyebrow{font-family:var(--font-heading);letter-spacing:.14em;text-transform:uppercase;color:var(--champagne);align-items:center;gap:8px;margin-bottom:16px;font-size:.75rem;font-weight:600;display:inline-flex}.tutorial-page__eyebrow:before{content:"";background:var(--border-champagne);width:18px;height:1px}.tutorial-page__title{font-family:var(--font-display);color:var(--text-primary);margin-bottom:16px;font-size:clamp(2.1rem,4vw,3.1rem);font-weight:600;line-height:1.2}.tutorial-page__subtitle{color:var(--text-secondary);font-size:1rem;line-height:1.7}.tutorial-page__select-wrap{flex-direction:column;gap:8px;max-width:320px;margin:0 auto 80px;display:flex}.tutorial-page__select-label{font-family:var(--font-heading);letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted);text-align:center;font-size:.72rem;font-weight:600}.tutorial-page__select-box{align-items:center;display:flex;position:relative}.tutorial-page__select{appearance:none;background:var(--surface-card);border:1px solid var(--border-champagne-soft);border-radius:var(--radius-sm);width:100%;font-family:var(--font-body);color:var(--text-primary);cursor:pointer;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);padding:12px 40px 12px 16px;font-size:.95rem;font-weight:500;transition:border-color .2s,box-shadow .2s}.tutorial-page__select:hover,.tutorial-page__select:focus{border-color:var(--border-champagne);box-shadow:var(--glow-champagne);outline:none}.tutorial-page__select option{background:var(--bg-secondary);color:var(--text-primary)}.tutorial-page__select-icon{color:var(--champagne);pointer-events:none;position:absolute;right:14px}.tutorial-page__timeline{flex-direction:column;gap:96px;display:flex;position:relative}.tutorial-page__line{background:linear-gradient(180deg, transparent, var(--border-champagne-soft) 8%, var(--border-champagne-soft) 92%, transparent);width:1px;position:absolute;top:8px;bottom:8px;left:50%;transform:translate(-50%)}.tutorial-page__step{grid-template-columns:1fr 1fr;align-items:center;gap:56px;min-width:0;display:grid;position:relative}.tutorial-page__step--reverse .tutorial-page__text{order:2}.tutorial-page__step--reverse .tutorial-page__media{order:1}.tutorial-page__node{z-index:3;background:var(--bg-secondary);border:1px solid var(--border-champagne);width:56px;height:56px;box-shadow:var(--glow-champagne);border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.tutorial-page__node-number{font-family:var(--font-display);background:var(--gradient-champagne-cyan);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-size:1.05rem;font-weight:600}.tutorial-page__text{min-width:0;padding:0 32px}.tutorial-page__step:not(.tutorial-page__step--reverse) .tutorial-page__text{text-align:right}.tutorial-page__step--reverse .tutorial-page__text{text-align:left}.tutorial-page__step-title{font-family:var(--font-heading);color:var(--text-primary);margin-bottom:10px;font-size:1.35rem;font-weight:600}.tutorial-page__step-desc{color:var(--text-secondary);font-size:.95rem;line-height:1.7}.tutorial-page__media{min-width:0;display:flex}.tutorial-page__step:not(.tutorial-page__step--reverse) .tutorial-page__media{justify-content:flex-start}.tutorial-page__step--reverse .tutorial-page__media{justify-content:flex-end}.tutorial-page__frame{border-radius:var(--radius-md);background:var(--surface-card);border:1px solid var(--border-hairline);width:100%;max-width:420px;box-shadow:var(--glow-purple);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);transition:transform .35s,box-shadow .35s;overflow:hidden}.tutorial-page__frame:hover{box-shadow:var(--glow-cyan);transform:translateY(-4px)}.tutorial-page__frame-bar{border-bottom:1px solid var(--border-hairline);gap:6px;padding:12px 14px;display:flex}.tutorial-page__frame-bar span{background:var(--border-hairline-strong);border-radius:50%;width:9px;height:9px}.tutorial-page__frame-bar span:first-child{background:var(--neon-pink);opacity:.6}.tutorial-page__frame-bar span:nth-child(2){background:var(--champagne);opacity:.6}.tutorial-page__frame-bar span:nth-child(3){background:var(--neon-cyan);opacity:.6}.tutorial-page__frame-body{background:var(--bg-primary);justify-content:center;align-items:center;display:flex;position:relative}.tutorial-page__frame-body img,.tutorial-page__frame-body .tutorial-page__video{object-fit:contain;width:100%;height:auto;max-height:460px;display:block}.tutorial-page__play{background:var(--bg-tertiary);width:100%;min-height:200px;display:block;position:relative}.tutorial-page__poster{opacity:.7;width:100%;height:auto;display:block}.tutorial-page__play-icon{z-index:1;width:56px;height:56px;color:var(--bg-primary);background:var(--gradient-champagne-btn);box-shadow:var(--glow-champagne);border-radius:50%;justify-content:center;align-items:center;transition:transform .25s;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.tutorial-page__play:hover .tutorial-page__play-icon{transform:translate(-50%,-50%)scale(1.08)}@media (width<=860px){.tutorial-page{padding:96px 0 88px}.tutorial-page__select-wrap{margin-bottom:56px}.tutorial-page__timeline{gap:64px}.tutorial-page__line{left:28px}.tutorial-page__step,.tutorial-page__step--reverse{grid-template-columns:1fr;gap:24px;padding-left:64px}.tutorial-page__step--reverse .tutorial-page__text,.tutorial-page__step--reverse .tutorial-page__media{order:initial}.tutorial-page__node{width:44px;height:44px;top:0;left:28px;transform:translate(-50%)}.tutorial-page__text,.tutorial-page__step:not(.tutorial-page__step--reverse) .tutorial-page__text,.tutorial-page__step--reverse .tutorial-page__text{text-align:left;padding:0}.tutorial-page__step:not(.tutorial-page__step--reverse) .tutorial-page__media,.tutorial-page__step--reverse .tutorial-page__media{justify-content:flex-start}}@media (prefers-reduced-motion:reduce){.tutorial-page__frame,.tutorial-page__play-icon,.tutorial-page__back,.tutorial-page__select{transition:none!important}}.counter{color:var(--accent);background:var(--accent-bg);border:2px solid #0000;border-radius:5px;margin-bottom:24px;padding:5px 10px;font-size:16px;transition:border-color .3s}.counter:hover{border-color:var(--accent-border)}.counter:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.hero{position:relative}.hero .base,.hero .framework,.hero .vite{margin:0 auto;inset-inline:0}.hero .base{z-index:0;width:170px;position:relative}.hero .framework,.hero .vite{position:absolute}.hero .framework{z-index:1;height:28px;top:34px;transform:perspective(2000px)rotate(300deg)rotateX(44deg)rotateY(39deg)scale(1.4)}.hero .vite{z-index:0;width:auto;height:26px;top:107px;transform:perspective(2000px)rotate(300deg)rotateX(40deg)rotateY(39deg)scale(.8)}#center{flex-direction:column;flex-grow:1;place-content:center;place-items:center;gap:25px;display:flex}@media (width<=1024px){#center{gap:18px;padding:32px 20px 24px}}#next-steps{border-top:1px solid var(--border);text-align:left;display:flex}#next-steps>div{flex:1 1 0;padding:32px}@media (width<=1024px){#next-steps>div{padding:24px 20px}}#next-steps .icon{width:22px;height:22px;margin-bottom:16px}@media (width<=1024px){#next-steps{text-align:center;flex-direction:column}}#docs{border-right:1px solid var(--border)}@media (width<=1024px){#docs{border-right:none;border-bottom:1px solid var(--border)}}#next-steps ul{gap:8px;margin:32px 0 0;padding:0;list-style:none;display:flex}#next-steps ul .logo{height:18px}#next-steps ul a{color:var(--text-h);background:var(--social-bg);border-radius:6px;align-items:center;gap:8px;padding:6px 12px;font-size:16px;text-decoration:none;transition:box-shadow .3s;display:flex}#next-steps ul a:hover{box-shadow:var(--shadow)}#next-steps ul a .button-icon{width:18px;height:18px}@media (width<=1024px){#next-steps ul{flex-wrap:wrap;justify-content:center;margin-top:20px}#next-steps ul li{flex:calc(50% - 8px)}#next-steps ul a{box-sizing:border-box;justify-content:center;width:100%}}#spacer{border-top:1px solid var(--border);height:88px}@media (width<=1024px){#spacer{height:48px}}.ticks{width:100%;position:relative}.ticks:before,.ticks:after{content:"";border:5px solid #0000;position:absolute;top:-4.5px}.ticks:before{border-left-color:var(--border);left:0}.ticks:after{border-right-color:var(--border);right:0}.bg-lines{z-index:1;pointer-events:none;position:fixed;inset:0;overflow:hidden}.bg-lines__svg{width:100%;height:100%}.bg-lines__sketch,.bg-lines__glow{transform-origin:50%;animation:30s ease-in-out infinite bgLinesDrift}.bg-lines__path{fill:none}.bg-lines__sketch .bg-lines__path{stroke:var(--border-hairline-strong);stroke-width:1.4px;stroke-linecap:round;opacity:.4}.bg-lines__glow .bg-lines__path{stroke-width:2.2px;stroke-linecap:round;mix-blend-mode:screen;opacity:.9}.bg-lines__path--a{stroke:var(--champagne)}.bg-lines__path--b{stroke:var(--neon-cyan)}.bg-lines__path--c{stroke:var(--neon-purple-light)}.bg-lines__glow .bg-lines__path--a{stroke-dasharray:40 900;filter:blur(2.5px) drop-shadow(0 0 6px var(--champagne));animation:9s linear infinite bgLinesTravel}.bg-lines__glow .bg-lines__path--b{stroke-dasharray:30 760;filter:blur(2.5px) drop-shadow(0 0 6px var(--neon-cyan));animation:12s linear infinite reverse bgLinesTravel}.bg-lines__glow .bg-lines__path--c{stroke-dasharray:50 1000;filter:blur(2.5px) drop-shadow(0 0 6px var(--neon-purple-light));animation:15s linear infinite bgLinesTravel}@keyframes bgLinesTravel{0%{stroke-dashoffset:0}to{stroke-dashoffset:-1400px}}@keyframes bgLinesDrift{0%,to{transform:translate(0)scale(1)}50%{transform:translate(-1.5%,1.5%)scale(1.02)}}@media (width<=600px){.bg-lines{opacity:.7}}@media (prefers-reduced-motion:reduce){.bg-lines__sketch,.bg-lines__glow,.bg-lines__glow .bg-lines__path{animation:none!important}}
