/* ====================================================================
   FINTAG Landing V2 — Optimized Design System
   Palette: Trust blue, Emerald growth, Gold highlight, Slate text
   Fonts: Plus Jakarta Sans (headings) + Inter (body)
   ==================================================================== */
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;font-size:16px}
body{font-family:'Inter',sans-serif;color:#1e293b;background:#fff;line-height:1.65;margin:0;-webkit-font-smoothing:antialiased;overflow-x:hidden}
h1,h2,h3,h4,h5{font-family:'Plus Jakarta Sans',sans-serif;margin:0;line-height:1.25;letter-spacing:-.02em}
a{text-decoration:none;color:inherit}
button{font-family:inherit;cursor:pointer;border:none;background:none}
img{max-width:100%;height:auto;display:block}
:root{--fx-blue:#1d4ed8;--fx-blue-2:#2563eb;--fx-emerald:#10b981;--fx-gold:#f59e0b;--fx-ink:#0f172a;--fx-body:#475569;--fx-muted:#64748b;--fx-soft:#fbfdff;--fx-line:#e8eef6;--fx-card-radius:18px;--fx-card-shadow:0 10px 30px rgba(15,23,42,.045);--fx-card-shadow-hover:0 18px 44px rgba(15,23,42,.08)}
.fx-container{max-width:1200px;margin:0 auto;padding:0 2rem}
@media(max-width:768px){.fx-container{padding:0 1.25rem}}

/* === Scroll Progress === */
.fv2-progress{position:fixed;top:0;left:0;height:3px;width:0;background:linear-gradient(90deg,#1d4ed8,#10b981,#f59e0b);z-index:200;transition:width .1s;box-shadow:0 0 10px rgba(29,78,216,.5)}

/* === Eyebrow === */
.fx-eyebrow{display:inline-flex;align-items:center;gap:.5rem;padding:.4rem 1.1rem;border-radius:9999px;background:#eff6ff;color:#1d4ed8;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;font-family:'Plus Jakarta Sans',sans-serif;border:1px solid #dbeafe}
.fx-eyebrow-light{background:rgba(255,255,255,.12);color:#fff;border:1px solid rgba(255,255,255,.2)}

/* === Pills === */
.fx-pill{display:inline-flex;align-items:center;gap:.4rem;padding:.35rem .9rem;border-radius:9999px;font-size:.73rem;font-weight:700;font-family:'Plus Jakarta Sans',sans-serif;backdrop-filter:blur(8px);transition:transform .2s}
.fx-pill:hover{transform:translateY(-1px)}
.fx-pill-green{background:rgba(16,185,129,.12);color:#059669;border:1px solid rgba(16,185,129,.25)}
.fx-pill-blue{background:rgba(29,78,216,.12);color:#1d4ed8;border:1px solid rgba(29,78,216,.25)}
.fx-pill-purple{background:rgba(16,185,129,.12);color:#10b981;border:1px solid rgba(16,185,129,.25)}

/* === Buttons === */
.fx-btn-primary{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.8rem 1.75rem;border-radius:12px;font-weight:700;font-size:.9rem;font-family:'Plus Jakarta Sans',sans-serif;background:linear-gradient(135deg,#1d4ed8,#2563eb);color:#fff;box-shadow:0 6px 20px rgba(29,78,216,.3);transition:all .25s cubic-bezier(.4,0,.2,1);text-decoration:none;cursor:pointer;border:none;position:relative;overflow:hidden}
.fx-btn-primary:hover{transform:translateY(-3px);box-shadow:0 12px 32px rgba(29,78,216,.4)}
.fx-btn-lg{padding:1rem 2.25rem;font-size:1rem;border-radius:14px}
.fx-btn-block{width:100%}
.fx-btn-outline{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.8rem 1.75rem;border-radius:12px;font-weight:700;font-size:.9rem;font-family:'Plus Jakarta Sans',sans-serif;background:rgba(255,255,255,.7);color:#1e293b;border:1.5px solid #cbd5e1;backdrop-filter:blur(8px);transition:all .25s;text-decoration:none;cursor:pointer}
.fx-btn-outline:hover{border-color:#1d4ed8;background:#fff;transform:translateY(-2px);box-shadow:0 8px 24px rgba(0,0,0,.08)}
.fx-btn-ghost{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem 1.5rem;border-radius:12px;font-weight:700;font-size:.88rem;font-family:'Plus Jakarta Sans',sans-serif;background:transparent;color:#1d4ed8;transition:all .2s;text-decoration:none;cursor:pointer;border:none}
.fx-btn-ghost:hover{background:#eff6ff}
.fx-btn-ghost-sm{display:inline-flex;align-items:center;gap:.4rem;padding:.5rem 1rem;border-radius:10px;font-weight:600;font-size:.8rem;font-family:'Plus Jakarta Sans',sans-serif;background:#eff6ff;color:#1d4ed8;transition:all .2s;text-decoration:none;cursor:pointer;border:none}
.fx-btn-ghost-sm:hover{background:#dbeafe}
.fx-btn-text{background:transparent;color:#475569;font-weight:600;font-size:.85rem;padding:.5rem 1rem;border-radius:8px;transition:all .2s;cursor:pointer;font-family:'Plus Jakarta Sans',sans-serif}
.fx-btn-text:hover{color:#1d4ed8;background:#eff6ff}
.fx-btn-danger{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem 1.5rem;border-radius:12px;font-weight:700;font-size:.88rem;font-family:'Plus Jakarta Sans',sans-serif;background:linear-gradient(135deg,#ef4444,#f43f5e);color:#fff;box-shadow:0 4px 14px rgba(239,68,68,.25);transition:all .2s;text-decoration:none;cursor:pointer;border:none}
.fx-btn-danger:hover{transform:translateY(-1px);box-shadow:0 8px 20px rgba(239,68,68,.3)}
.fx-btn-success{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem 1.5rem;border-radius:12px;font-weight:700;font-size:.88rem;font-family:'Plus Jakarta Sans',sans-serif;background:linear-gradient(135deg,#10b981,#059669);color:#fff;transition:all .2s;text-decoration:none;cursor:pointer;border:none}
.fx-btn-success:hover{transform:translateY(-1px);box-shadow:0 8px 20px rgba(16,185,129,.3)}
.fx-btn-ghost-light{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;border-radius:12px;font-weight:600;font-size:.85rem;background:rgba(255,255,255,.12);color:#fff;border:1px solid rgba(255,255,255,.25);backdrop-filter:blur(8px);text-decoration:none;transition:all .2s;cursor:pointer}
.fx-btn-ghost-light:hover{background:rgba(255,255,255,.22)}
.fx-btn-shine{position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);transition:left .6s;pointer-events:none}
.fx-btn-primary:hover .fx-btn-shine{left:100%}

/* === fv2-btn-* aliases (used in navbar & modals) === */
.fv2-btn-primary{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.65rem 1.4rem;border-radius:12px;font-weight:700;font-size:.85rem;font-family:'Plus Jakarta Sans',sans-serif;background:linear-gradient(135deg,#1d4ed8,#2563eb);color:#fff;box-shadow:0 4px 14px rgba(29,78,216,.25);transition:all .25s;text-decoration:none;cursor:pointer;border:none;position:relative;overflow:hidden}
.fv2-btn-primary:hover{transform:translateY(-2px);box-shadow:0 8px 24px rgba(29,78,216,.35)}
.fv2-btn-block{width:100%;justify-content:center}
.fv2-btn-text{background:transparent;color:#475569;font-weight:600;font-size:.85rem;padding:.5rem 1rem;border-radius:8px;transition:all .2s;cursor:pointer;font-family:'Plus Jakarta Sans',sans-serif;border:none}
.fv2-btn-text:hover{color:#1d4ed8;background:#eff6ff}
.fv2-btn-ghost-sm{display:inline-flex;align-items:center;gap:.4rem;padding:.5rem 1rem;border-radius:10px;font-weight:600;font-size:.8rem;font-family:'Plus Jakarta Sans',sans-serif;background:#eff6ff;color:#1d4ed8;transition:all .2s;text-decoration:none;cursor:pointer;border:none}
.fv2-btn-ghost-sm:hover{background:#dbeafe}
.fv2-btn-ghost{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.7rem 1.5rem;border-radius:12px;font-weight:700;font-size:.88rem;font-family:'Plus Jakarta Sans',sans-serif;background:transparent;color:#1d4ed8;transition:all .2s;text-decoration:none;cursor:pointer;border:none}
.fv2-btn-ghost:hover{background:#eff6ff}
.fv2-btn-danger{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.7rem 1.5rem;border-radius:12px;font-weight:700;font-size:.88rem;font-family:'Plus Jakarta Sans',sans-serif;background:linear-gradient(135deg,#ef4444,#f43f5e);color:#fff;box-shadow:0 4px 14px rgba(239,68,68,.25);transition:all .2s;text-decoration:none;cursor:pointer;border:none}
.fv2-btn-danger:hover{transform:translateY(-1px);box-shadow:0 8px 20px rgba(239,68,68,.3)}
.fv2-btn-success{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.7rem 1.5rem;border-radius:12px;font-weight:700;font-size:.88rem;font-family:'Plus Jakarta Sans',sans-serif;background:linear-gradient(135deg,#10b981,#059669);color:#fff;transition:all .2s;text-decoration:none;cursor:pointer;border:none}
.fv2-btn-success:hover{transform:translateY(-1px);box-shadow:0 8px 20px rgba(16,185,129,.3)}
.fv2-btn-ghost-light{display:inline-flex;align-items:center;gap:.5rem;padding:.7rem 1.5rem;border-radius:12px;font-weight:600;font-size:.85rem;background:rgba(255,255,255,.12);color:#fff;border:1px solid rgba(255,255,255,.25);backdrop-filter:blur(8px);text-decoration:none;transition:all .2s;cursor:pointer}
.fv2-btn-ghost-light:hover{background:rgba(255,255,255,.22)}
/* Loader tombol: spinner saat memproses (class .is-loading ditambah dari JS: register/login/OTP/dll) */
.fv2-btn-primary.is-loading,.fv2-btn-danger.is-loading,.fv2-btn-success.is-loading,.fv2-btn-ghost.is-loading,.fv2-btn-ghost-light.is-loading,.fv2-btn-text.is-loading{color:transparent!important;pointer-events:none;position:relative}
.fv2-btn-primary.is-loading::after,.fv2-btn-danger.is-loading::after,.fv2-btn-success.is-loading::after,.fv2-btn-ghost.is-loading::after,.fv2-btn-ghost-light.is-loading::after,.fv2-btn-text.is-loading::after{content:"";position:absolute;top:50%;left:50%;width:1.15em;height:1.15em;margin:-.575em 0 0 -.575em;border:2px solid transparent;border-radius:50%;animation:fv2BtnSpin .6s linear infinite}
.fv2-btn-primary.is-loading::after,.fv2-btn-danger.is-loading::after,.fv2-btn-success.is-loading::after,.fv2-btn-ghost-light.is-loading::after{border-color:rgba(255,255,255,.45);border-top-color:#fff}
.fv2-btn-ghost.is-loading::after,.fv2-btn-text.is-loading::after{border-color:rgba(29,78,216,.3);border-top-color:#1d4ed8}
@keyframes fv2BtnSpin{to{transform:rotate(360deg)}}

/* === Section === */
.fx-section{position:relative;padding:5rem 0}
.fx-section-muted{background:linear-gradient(180deg,#fff,#fbfdff)}
.fx-section-joined{padding-top:0}
.fx-section-head{text-align:center;max-width:42rem;margin:0 auto 2.75rem}
.fx-h2{font-size:2.25rem;font-weight:800;color:#0f172a;margin-top:1rem}
.fx-sub{font-size:1.05rem;color:#64748b;margin-top:.75rem;line-height:1.65}
.fx-lead{font-size:1.05rem;color:#475569;line-height:1.75;margin:1rem 0 1.75rem}
.fx-bento-card,.fx-tl-card,.fx-eco-card,.fx-feat,.fx-video,.fx-stat,.fx-acc-item,.fx-contact-card{border-color:var(--fx-line);border-radius:var(--fx-card-radius);box-shadow:var(--fx-card-shadow)}
.fx-bento-card:hover,.fx-tl-card:hover,.fx-eco-card:hover,.fx-feat:hover,.fx-video:hover,.fx-stat:hover,.fx-acc-item:hover,.fx-contact-card:hover{box-shadow:var(--fx-card-shadow-hover);border-color:#dbeafe}

/* === Reveal === */
.fx-reveal{opacity:0;transform:translateY(44px) scale(.96);transition:opacity .7s cubic-bezier(.22,1,.36,1),transform .7s cubic-bezier(.22,1,.36,1)}
.fx-reveal.is-revealed{opacity:1;transform:translateY(0) scale(1)}

/* === Gradient text === */
.fx-grad{background:linear-gradient(135deg,#1d4ed8,#10b981);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.fx-grad-anim{background-size:200% auto;animation:fxGradAnim 4s linear infinite}
@keyframes fxGradAnim{to{background-position:200% center}}

/* ====================================================================
   NAVBAR
   ==================================================================== */
.fv2-nav{position:fixed;top:0;left:0;right:0;z-index:100;padding:1rem 0;transition:all .3s}
.fv2-nav::before{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(255,255,255,.86),rgba(255,255,255,.58));backdrop-filter:blur(16px) saturate(160%);-webkit-backdrop-filter:blur(16px) saturate(160%);opacity:0;transition:opacity .3s;pointer-events:none}
.fv2-nav-scrolled{padding:.65rem 0}
.fv2-nav-scrolled::before{opacity:1}
.fv2-nav-inner{position:relative;display:flex;align-items:center;gap:1.4rem;padding:.55rem .75rem;background:rgba(255,255,255,.72);border:1px solid rgba(226,232,240,.78);border-radius:22px;box-shadow:0 14px 42px rgba(15,23,42,.07);backdrop-filter:blur(18px) saturate(160%);-webkit-backdrop-filter:blur(18px) saturate(160%);transition:all .3s}
.fv2-nav-scrolled .fv2-nav-inner{background:rgba(255,255,255,.9);border-color:rgba(219,234,254,.95);box-shadow:0 16px 46px rgba(15,23,42,.09)}
.fv2-nav-logo{display:flex;align-items:center;padding:.35rem .75rem .35rem .45rem;border-radius:16px;background:rgba(248,251,255,.82);border:1px solid rgba(219,234,254,.72)}
.fv2-nav-logo img{height:32px;transition:transform .3s}
.fv2-nav-scrolled .fv2-nav-logo img{transform:scale(.95)}
.fv2-logo-mark{display:none}
.fv2-nav-links .fv2-nav-link-tkb{display:none}
.fv2-nav-links{display:flex;align-items:center;gap:.18rem;flex:1;margin-left:.25rem}
.fv2-nav-link{padding:.5rem .85rem;border-radius:10px;font-size:.85rem;font-weight:600;color:#475569;transition:all .2s;font-family:'Plus Jakarta Sans',sans-serif;display:inline-flex;align-items:center;gap:.25rem;cursor:pointer;background:none;border:none;position:relative}
.fv2-nav-link:hover{color:#1d4ed8;background:linear-gradient(135deg,#eff6ff,#f0fdf4)}
.fv2-nav-link.is-active{color:#1d4ed8}
.fv2-nav-link.is-active::after{content:'';position:absolute;bottom:4px;left:.85rem;right:.85rem;height:2px;background:linear-gradient(90deg,#1d4ed8,#10b981);border-radius:2px}
.fv2-nav-dropdown{position:relative}
.fv2-nav-dropdown-menu{position:absolute;top:calc(100% + .5rem);left:0;min-width:220px;background:#fff;border-radius:14px;box-shadow:0 20px 50px rgba(0,0,0,.12);padding:.5rem;opacity:0;visibility:hidden;transform:translateY(-8px);transition:all .2s;border:1px solid #f1f5f9}
.fv2-nav-dropdown:hover .fv2-nav-dropdown-menu{opacity:1;visibility:visible;transform:translateY(0)}
.fv2-nav-dropdown-menu a{display:block;padding:.6rem .85rem;border-radius:8px;font-size:.85rem;color:#475569;transition:all .15s}
.fv2-nav-dropdown-menu a:hover{background:#f8fafc;color:#1d4ed8}
.fv2-nav-actions{display:flex;align-items:center;gap:.45rem;padding-left:.65rem;border-left:1px solid rgba(226,232,240,.9)}
.fv2-burger{display:none;flex-direction:column;gap:5px;padding:.55rem;border-radius:12px;background:#f8fafc;border:1px solid #e2e8f0}
.fv2-burger span{display:block;width:22px;height:2px;background:#0f172a;border-radius:2px;transition:all .25s}
.fv2-burger.is-active span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.fv2-burger.is-active span:nth-child(2){opacity:0}
.fv2-burger.is-active span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
@media(max-width:1024px){
    .fv2-burger{display:flex}
    .fv2-nav-inner{gap:.75rem;border-radius:18px;padding:.5rem}
    .fv2-nav-logo{padding:.3rem .55rem}
    .fv2-nav-links{position:absolute;top:calc(100% + .65rem);left:0;right:0;background:rgba(255,255,255,.96);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);border:1px solid #e2e8f0;border-radius:18px;flex-direction:column;align-items:stretch;gap:.15rem;box-shadow:0 20px 44px rgba(15,23,42,.12);max-height:0;overflow:hidden;transition:max-height .3s, padding .3s;margin:0;padding:0}
    .fv2-nav-links.is-active{max-height:600px;padding:.85rem}
    .fv2-nav-link{padding:.85rem 1rem;text-align:left}
    .fv2-nav-link.is-active::after{display:none}
    .fv2-nav-dropdown-menu{position:static;opacity:1;visibility:visible;transform:none;box-shadow:none;padding-left:1rem}
    .fv2-nav-actions{margin-left:auto;gap:.3rem;padding-left:.5rem}
    .fv2-nav-actions .fv2-btn-ghost-sm,.fv2-nav-actions .fx-btn-text{padding:.45rem .8rem;font-size:.8rem}
    /* TKB pindah ke dalam menu (fv2-nav-links), keluar dari action bar */
    .fv2-nav-actions .fv2-btn-ghost-sm{display:none}
    .fv2-nav-links .fv2-nav-link-tkb{display:block}
    /* pakai ikon ringkas mobile_icon.png sebagai brand di navbar mobile */
    .fv2-logo-full{display:none}
    .fv2-logo-mark{display:block;height:34px}
    .fv2-nav-logo{padding:.25rem .4rem}
}

/* ====================================================================
   HERO
   ==================================================================== */
.fx-hero{position:relative;padding:7.5rem 0 5.5rem;overflow:hidden;min-height:86vh;display:flex;align-items:center}
.fx-hero-mesh{position:absolute;inset:0;z-index:-2;background:linear-gradient(135deg,#f8fbff 0%,#eff6ff 42%,#f6fefb 100%);background-size:300% 300%;animation:fxMesh 18s ease infinite}
.fx-hero-mesh::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(29,78,216,.04) 1px,transparent 1px),linear-gradient(180deg,rgba(15,23,42,.025) 1px,transparent 1px);background-size:72px 72px;mask-image:linear-gradient(180deg,rgba(0,0,0,.42),transparent 76%);pointer-events:none}
@keyframes fxMesh{0%,100%{background-position:0% 50%}50%{background-position:100% 50%}}
.fx-orb{position:absolute;border-radius:50%;filter:blur(80px);z-index:-1;animation:fxFloat 12s ease-in-out infinite}
.fx-orb-1{width:500px;height:500px;background:rgba(29,78,216,.12);top:-150px;right:-100px}
.fx-orb-2{width:400px;height:400px;background:rgba(16,185,129,.1);bottom:-100px;left:-50px;animation-delay:3s}
.fx-orb-3{width:300px;height:300px;background:rgba(245,158,11,.06);top:40%;left:45%;animation-delay:6s}
@keyframes fxFloat{0%,100%{transform:translate(0,0) scale(1)}33%{transform:translate(30px,-30px) scale(1.05)}66%{transform:translate(-20px,20px) scale(.95)}}
.fx-hero-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:4rem;align-items:center;width:100%}
.fx-hero-left{max-width:38rem}
.fx-hero-pills{display:flex;gap:.5rem;flex-wrap:wrap;margin-bottom:1.5rem}
.fx-hero-company{font-size:.82rem;font-weight:800;text-transform:uppercase;letter-spacing:.1em;color:#1d4ed8;margin:0 0 .6rem;font-family:'Plus Jakarta Sans',sans-serif}
@media(max-width:480px){.fx-hero-company{font-size:.72rem;letter-spacing:.08em}}
.fx-hero h1{font-size:2.85rem;font-weight:800;line-height:1.15;color:#0f172a;margin:0 0 1.1rem}
.fx-hero-left>p{font-size:1rem;color:#475569;line-height:1.7;margin:0 0 2rem;max-width:32rem}
.fx-hero-cta{display:flex;gap:1rem;flex-wrap:wrap;margin-bottom:2.25rem}
.fx-hero-flow{display:inline-flex;align-items:center;gap:.7rem;flex-wrap:wrap;padding:.6rem .8rem;border:1px solid rgba(29,78,216,.12);border-radius:999px;background:rgba(255,255,255,.65);box-shadow:0 12px 30px rgba(15,23,42,.06);backdrop-filter:blur(12px)}
.fx-hero-flow span{display:inline-flex;align-items:center;gap:.4rem;font-size:.78rem;font-weight:700;color:#0f172a;font-family:'Plus Jakarta Sans',sans-serif}
.fx-hero-flow span i{color:#1d4ed8}
.fx-hero-flow>i{font-size:.78rem;color:#10b981}
.fx-hero-stats{display:flex;align-items:center;gap:1.75rem;padding-top:1.5rem;border-top:1px solid rgba(0,0,0,.06)}
.fx-hstat{display:flex;flex-direction:column}
.fx-hstat strong{font-size:1.5rem;font-weight:800;color:#0f172a;font-family:'Plus Jakarta Sans',sans-serif;line-height:1.15}
.fx-hstat small{font-size:.75rem;color:#64748b;margin-top:.15rem}
.fx-hstat-sep{width:1px;height:36px;background:#e2e8f0}
.fx-hero-right{position:relative;perspective:1000px}
.fx-tilt-card{transform-style:preserve-3d;transition:transform .15s ease-out}
.fx-tilt-card-inner{background:linear-gradient(180deg,#fff,#f8fafc);border-radius:var(--fx-card-radius);padding:2rem;box-shadow:var(--fx-card-shadow-hover);border:1px solid rgba(255,255,255,.8);position:relative;overflow:hidden;transform:translateZ(20px)}
.fx-tilt-card-inner::before{content:'';position:absolute;top:0;left:0;right:0;height:5px;background:linear-gradient(90deg,#1d4ed8,#10b981,#f59e0b)}
.fx-hc-glow{position:absolute;width:300px;height:300px;border-radius:50%;background:radial-gradient(circle,rgba(29,78,216,.08),transparent 70%);pointer-events:none;left:var(--gx,50%);top:var(--gy,50%);transform:translate(-50%,-50%);opacity:0;transition:opacity .3s}
.fx-tilt-card:hover .fx-hc-glow{opacity:1}
.fx-hc-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;transform:translateZ(30px)}
.fx-hc-badge{font-size:.72rem;font-weight:700;color:#64748b;text-transform:uppercase;letter-spacing:.08em}
.fx-hc-ico{font-size:1.4rem;color:#f59e0b;transform:translateZ(40px)}
.fx-tilt-card-inner h3{font-size:2rem;font-weight:800;color:#0f172a;letter-spacing:-.025em;line-height:1.15;transform:translateZ(25px)}
.fx-tilt-card-inner>p{font-size:.82rem;color:#64748b;margin:.25rem 0 0;transform:translateZ(20px)}
.fx-hc-div{height:1px;background:#f1f5f9;margin:1.25rem 0;transform:translateZ(15px)}
.fx-hc-mini{display:flex;gap:2rem;transform:translateZ(30px)}
.fx-hc-mini small{font-size:.7rem;color:#94a3b8;text-transform:uppercase;letter-spacing:.06em;display:block}
.fx-hc-mini strong{font-size:1.1rem;font-weight:700;color:#0f172a}
.fx-hc-spark{display:flex;align-items:flex-end;gap:6px;height:45px;margin-top:1.25rem;transform:translateZ(20px)}
.fx-spark-bar{flex:1;height:var(--h);background:linear-gradient(180deg,#1d4ed8,#dbeafe);border-radius:4px 4px 0 0;animation:fxSpark 2s ease-in-out infinite alternate}
.fx-spark-bar:nth-child(2){animation-delay:.2s}.fx-spark-bar:nth-child(3){animation-delay:.4s}.fx-spark-bar:nth-child(4){animation-delay:.6s}.fx-spark-bar:nth-child(5){animation-delay:.8s}.fx-spark-bar:nth-child(6){animation-delay:1s}
@keyframes fxSpark{from{transform:scaleY(.6);opacity:.6}to{transform:scaleY(1);opacity:1}}
.fx-hc-flow{display:grid;grid-template-columns:repeat(3,1fr);gap:.55rem;margin-top:1.25rem;transform:translateZ(25px)}
.fx-hc-flow span{position:relative;padding:.55rem .45rem;border-radius:10px;background:#fff;border:1px solid #e2e8f0;text-align:center;font-size:.72rem;font-weight:800;color:#475569;font-family:'Plus Jakarta Sans',sans-serif}
.fx-hc-flow span:not(:last-child)::after{content:'';position:absolute;right:-.55rem;top:50%;width:.55rem;height:2px;background:#cbd5e1}
.fx-float-badge{position:absolute;bottom:-1.5rem;left:-2rem;z-index:2;background:#fff;border-radius:16px;padding:1rem 1.25rem;display:flex;align-items:center;gap:.85rem;box-shadow:0 12px 35px rgba(15,23,42,.15);border:1px solid #f1f5f9;animation:fxBob 3s ease-in-out infinite}
@keyframes fxBob{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}
.fx-fb-ico{width:42px;height:42px;border-radius:12px;background:linear-gradient(135deg,#10b981,#059669);color:#fff;display:flex;align-items:center;justify-content:center;font-size:1.1rem}
.fx-float-badge small{font-size:.7rem;color:#94a3b8;display:block;text-transform:uppercase;letter-spacing:.06em}
.fx-float-badge h4{font-size:1.2rem;font-weight:800;color:#0f172a;margin:0}
.fx-scroll-hint{position:absolute;bottom:1.5rem;left:50%;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:.4rem;color:#94a3b8}
.fx-scroll-hint span{width:22px;height:36px;border:2px solid #cbd5e1;border-radius:11px;position:relative}
.fx-scroll-hint span::after{content:'';position:absolute;top:5px;left:50%;transform:translateX(-50%);width:3px;height:7px;background:#94a3b8;border-radius:2px;animation:fxScroll 1.5s ease-in-out infinite}
@keyframes fxScroll{0%{opacity:0;transform:translate(-50%,0)}50%{opacity:1}100%{opacity:0;transform:translate(-50%,10px)}}
.fx-scroll-hint small{font-size:.68rem;text-transform:uppercase;letter-spacing:.1em}

/* === Responsive Hero === */
@media(max-width:968px){.fx-hero-grid{grid-template-columns:1fr;gap:3rem}.fx-hero-right{max-width:400px;margin:0 auto;width:100%}.fx-float-badge{left:.5rem}}
@media(max-width:768px){.fx-hero{padding:6.5rem 0 3.5rem;min-height:auto}.fx-hero h1{font-size:2rem}.fx-hero-left>p{font-size:.95rem}.fx-hero-stats{gap:1rem;flex-wrap:wrap}.fx-hstat strong{font-size:1.15rem}.fx-scroll-hint{display:none}.fx-float-badge{left:0;bottom:-1rem;padding:.75rem 1rem}.fx-fb-ico{width:36px;height:36px;font-size:1rem}.fx-float-badge h4{font-size:1rem}.fx-tilt-card-inner{padding:1.5rem}.fx-tilt-card-inner h3{font-size:1.5rem}}
@media(max-width:480px){.fx-hero h1{font-size:1.65rem}.fx-hero-cta{flex-direction:column}.fx-hero-cta a{width:100%;justify-content:center}.fx-hero-flow{border-radius:16px;align-items:flex-start}.fx-hero-stats{gap:.75rem}.fx-hstat-sep{display:none}}

/* ====================================================================
   PARTNERS — clean grid
   ==================================================================== */
.fx-partners{padding:3rem 0;background:linear-gradient(180deg,#fff 0%,#f8fbff 50%,#fff 100%);border-top:1px solid #f1f5f9;border-bottom:1px solid #f1f5f9}
.fx-partners-label{display:flex;align-items:center;justify-content:center;gap:1rem;text-align:center;font-size:.72rem;color:#64748b;text-transform:uppercase;letter-spacing:.14em;margin:0 0 1.75rem;font-weight:700}
.fx-partners-label::before,.fx-partners-label::after{content:'';height:1px;width:46px;background:linear-gradient(90deg,transparent,#cbd5e1)}
.fx-partners-label::after{background:linear-gradient(90deg,#cbd5e1,transparent)}
.fx-partners-grid{display:flex;justify-content:center;align-items:center;gap:1.1rem;flex-wrap:wrap}
/* Marquee: track digandakan 2x di blade, geser -50% lalu ulang -> loop mulus */
.fx-partners-marquee{position:relative;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
.fx-partners-track{display:flex;align-items:center;gap:1.1rem;width:max-content;padding:.5rem 0;animation:fx-partners-scroll 28s linear infinite}
.fx-partners-marquee:hover .fx-partners-track{animation-play-state:paused}
@keyframes fx-partners-scroll{from{transform:translateX(0)}to{transform:translateX(calc(-50% - .55rem))}}
.fx-partner-item{display:flex;align-items:center;justify-content:center;flex-shrink:0;padding:.7rem 1.4rem;background:#fff;border:1px solid #eef2f7;border-radius:14px;box-shadow:0 4px 14px rgba(15,23,42,.04);transition:transform .25s,box-shadow .25s,border-color .25s}
.fx-partner-item:hover{transform:translateY(-4px);box-shadow:0 14px 30px rgba(29,78,216,.12);border-color:#dbeafe}
.fx-partner-item img{height:30px;filter:none;opacity:.9;transition:opacity .25s}
.fx-partner-item:hover img{opacity:1}
@media(max-width:768px){.fx-partners-grid,.fx-partners-track{gap:.8rem}.fx-partner-item{padding:.55rem 1rem}.fx-partner-item img{height:24px}@keyframes fx-partners-scroll{from{transform:translateX(0)}to{transform:translateX(calc(-50% - .4rem))}}}
@media(max-width:480px){.fx-partners-grid,.fx-partners-track{gap:.6rem}.fx-partner-item{padding:.5rem .85rem}.fx-partner-item img{height:22px}.fx-partners-label::before,.fx-partners-label::after{width:24px}.fx-partners-track{animation-duration:20s}@keyframes fx-partners-scroll{from{transform:translateX(0)}to{transform:translateX(calc(-50% - .3rem))}}}
@media(prefers-reduced-motion:reduce){.fx-partners-track{animation:none;width:100%;flex-wrap:wrap;justify-content:center}.fx-partner-item[aria-hidden="true"]{display:none}}

/* ====================================================================
   BENTO — about
   ==================================================================== */
.fx-bento{display:grid;grid-template-columns:1.3fr 1fr;gap:1.5rem;align-items:stretch}
.fx-bento-card{background:#fff;border:1px solid #f1f5f9;transition:all .3s;position:relative;overflow:hidden}
.fx-bento-lg{padding:2.5rem;display:flex;flex-direction:column;justify-content:center}
.fx-bento-appfeat{padding:2rem;display:flex;flex-direction:column;justify-content:center}
.fx-appfeat-head{margin-bottom:1.25rem;display:flex;flex-direction:column;text-align:center}
/* kicker eyebrow di kartu About & Fitur rata tengah (desktop + mobile) */
.fx-bento-lg>.fx-eyebrow,.fx-appfeat-head>.fx-eyebrow{align-self:center}
.fx-appfeat-head h3{font-size:1.15rem;font-weight:700;color:#0f172a;margin:.4rem 0 0;line-height:1.35}
.fx-appfeat-grid{display:grid;grid-template-columns:1fr 1fr;gap:.85rem}
.fx-appfeat-item{padding:1rem;border-radius:14px;background:#f8fafc;border:1px solid #f1f5f9;transition:transform .25s,box-shadow .25s,border-color .25s;text-align:center}
.fx-appfeat-item:hover{transform:translateY(-3px);box-shadow:0 10px 24px rgba(15,23,42,.08);border-color:#dbeafe}
.fx-appfeat-ico{width:38px;height:38px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:1rem;color:#fff;margin:0 auto .6rem}
.fx-appfeat-ico-blue{background:linear-gradient(135deg,#3b82f6,#1d4ed8)}
.fx-appfeat-ico-green{background:linear-gradient(135deg,#34d399,#059669)}
.fx-appfeat-ico-amber{background:linear-gradient(135deg,#fbbf24,#d97706)}
.fx-appfeat-ico-purple{background:linear-gradient(135deg,#a78bfa,#7c3aed)}
.fx-appfeat-item h4{font-size:.9rem;font-weight:700;color:#0f172a;margin:0 0 .25rem}
.fx-appfeat-item p{font-size:.78rem;color:#64748b;margin:0;line-height:1.45}
.fx-bento-feats{display:flex;flex-direction:column;gap:1.25rem;margin-top:.75rem}
.fx-bento-feat{display:flex;gap:.85rem;align-items:flex-start}
.fx-bento-feat i{width:44px;height:44px;border-radius:12px;flex-shrink:0;background:#eff6ff;color:#1d4ed8;display:flex;align-items:center;justify-content:center;font-size:1.1rem}
.fx-bento-feat h4{font-size:.95rem;font-weight:700;color:#0f172a;margin:0 0 .2rem}
.fx-bento-feat p{font-size:.85rem;color:#64748b;margin:0;line-height:1.55}
@media(max-width:968px){.fx-bento{grid-template-columns:1fr}}
@media(max-width:480px){.fx-bento-lg{padding:1.6rem}.fx-bento-appfeat{padding:1.3rem}.fx-lead{font-size:.92rem;line-height:1.7;margin:.85rem 0 1.4rem}.fx-bento-feat h4{font-size:.9rem}.fx-bento-feat p{font-size:.82rem}
  /* mobile: tetap 2 kolom, konten rata tengah */
  .fx-appfeat-head h3{font-size:1.02rem}
  .fx-appfeat-grid{gap:.6rem}
  .fx-appfeat-item{padding:.95rem .65rem}
  .fx-appfeat-ico{margin:0 auto .5rem}
  .fx-appfeat-item h4{font-size:.8rem;margin-bottom:.2rem}
  .fx-appfeat-item p{font-size:.7rem;line-height:1.4}}

/* ====================================================================
   TIMELINE
   ==================================================================== */
.fx-timeline{position:relative;display:flex;flex-direction:column;gap:2rem}
.fx-timeline-line{position:absolute;left:31px;top:20px;bottom:20px;width:2px;background:linear-gradient(180deg,#1d4ed8,#10b981,#f59e0b);border-radius:2px;opacity:.25}
.fx-tl-item{display:flex;gap:1.75rem;align-items:flex-start}
.fx-tl-dot{width:64px;height:64px;border-radius:50%;background:#fff;border:2px solid #e2e8f0;display:flex;align-items:center;justify-content:center;flex-shrink:0;z-index:1;transition:all .3s;position:relative}
.fx-tl-dot span{width:32px;height:32px;border-radius:50%;background:#0f172a;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.82rem;font-family:'Plus Jakarta Sans',sans-serif}
.fx-tl-item:hover .fx-tl-dot{border-color:#1d4ed8;transform:scale(1.1);box-shadow:0 0 0 8px rgba(29,78,216,.1)}
.fx-tl-card{background:#fff;padding:1.75rem;border:1px solid #f1f5f9;flex:1;transition:all .3s;position:relative;overflow:hidden}
.fx-tl-card:hover{border-color:#dbeafe}
.fx-tl-ico{width:52px;height:52px;border-radius:14px;margin-bottom:1rem;display:flex;align-items:center;justify-content:center;font-size:1.3rem;color:#fff;transition:transform .3s}
.fx-tl-card:hover .fx-tl-ico{transform:scale(1.08)}
.fx-tl-ico-blue{background:linear-gradient(135deg,#1d4ed8,#2563eb)}
.fx-tl-ico-green{background:linear-gradient(135deg,#10b981,#059669)}
.fx-tl-ico-amber{background:linear-gradient(135deg,#f59e0b,#d97706)}
.fx-tl-card h3{font-size:1.15rem;font-weight:700;color:#0f172a;margin:0 0 .65rem}
.fx-tl-card p{font-size:.9rem;color:#64748b;line-height:1.6;margin:0}
.fx-mech{margin-top:3rem;text-align:center}
.fx-mech img{max-width:100%;border-radius:18px;box-shadow:0 16px 40px rgba(0,0,0,.06);display:inline-block}
@media(max-width:768px){.fx-timeline-line{left:23px}.fx-tl-dot{width:48px;height:48px}.fx-tl-dot span{width:28px;height:28px;font-size:.75rem}.fx-tl-item{gap:1rem}.fx-tl-card{padding:1.25rem}}
@media(max-width:480px){.fx-tl-ico{width:44px;height:44px;font-size:1.1rem}.fx-tl-card h3{font-size:1rem}.fx-tl-card p{font-size:.85rem}}

/* Timeline HORIZONTAL (menyamping): 1 -> 2 -> 3 berjajar */
.fx-timeline-h{flex-direction:row;align-items:stretch;gap:1.5rem}
.fx-timeline-h .fx-timeline-line{left:16%;right:16%;top:31px;bottom:auto;width:auto;height:2px;background:linear-gradient(90deg,#1d4ed8,#10b981,#f59e0b)}
.fx-timeline-h .fx-tl-item{flex:1;flex-direction:column;align-items:center;text-align:center;gap:1.25rem}
.fx-timeline-h .fx-tl-dot{width:62px;height:62px}
.fx-timeline-h .fx-tl-card{width:100%;flex:1;display:flex;flex-direction:column;align-items:center}
.fx-timeline-h .fx-tl-ico{margin:0 0 1rem}
@media(max-width:900px){
    .fx-timeline-h{flex-direction:column;gap:2rem}
    .fx-timeline-h .fx-timeline-line{left:31px;right:auto;top:20px;bottom:20px;width:2px;height:auto;background:linear-gradient(180deg,#1d4ed8,#10b981,#f59e0b)}
    .fx-timeline-h .fx-tl-item{flex-direction:row;align-items:flex-start;text-align:left;gap:1.75rem}
    .fx-timeline-h .fx-tl-card{align-items:stretch}
    .fx-timeline-h .fx-tl-ico{margin:0 0 1rem}
}
@media(max-width:768px){.fx-timeline-h .fx-timeline-line{left:23px}.fx-timeline-h .fx-tl-dot{width:48px;height:48px}.fx-timeline-h .fx-tl-item{gap:1rem}}

/* ====================================================================
   PRODUK FINTAG
   ==================================================================== */
.fx-produk-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem}
.fx-produk-card{position:relative;background:#fff;border:1px solid #f1f5f9;border-radius:var(--fx-card-radius);padding:2rem;box-shadow:var(--fx-card-shadow);transition:all .3s;overflow:hidden;text-align:center}
.fx-produk-card:hover{box-shadow:var(--fx-card-shadow-hover);border-color:#dbeafe}
.fx-produk-num{position:absolute;top:1rem;left:1.35rem;font-size:2.5rem;font-weight:800;color:#f1f5f9;font-family:'Plus Jakarta Sans',sans-serif;line-height:1}
.fx-produk-ico{width:54px;height:54px;border-radius:15px;display:flex;align-items:center;justify-content:center;font-size:1.35rem;color:#fff;margin:0 auto 1.1rem}
.fx-produk-ico-blue{background:linear-gradient(135deg,#1d4ed8,#2563eb)}
.fx-produk-ico-green{background:linear-gradient(135deg,#10b981,#059669)}
.fx-produk-card h3{font-size:1.2rem;font-weight:700;color:#0f172a;margin:0 0 .65rem}
.fx-produk-card p{font-size:.9rem;color:#64748b;line-height:1.7;margin:0}
.fx-produk-note{display:flex;gap:.65rem;align-items:center;justify-content:center;text-align:center;margin:1.5rem auto 0;max-width:52rem;padding:1rem 1.5rem;background:#f8fafc;border:1px solid #e2e8f0;border-top:3px solid #1d4ed8;border-radius:12px;font-size:.88rem;color:#475569;line-height:1.6}
.fx-produk-note i{color:#1d4ed8;flex-shrink:0}
@media(max-width:768px){.fx-produk-grid{grid-template-columns:1fr}.fx-produk-card{padding:1.5rem;text-align:center}.fx-produk-ico{margin:0 auto 1rem}.fx-produk-num{font-size:2rem}}

/* ====================================================================
   TRUST — stat banner with counter
   ==================================================================== */
.fx-trust{position:relative;padding:4.5rem 0;overflow:hidden;color:#fff;background:#fff;isolation:isolate}
.fx-trust-bg{position:absolute;inset:.75rem 2rem;background:linear-gradient(135deg,#0f172a,#1e3a8a 56%,#1d4ed8);border-radius:28px;z-index:-1;box-shadow:0 22px 60px rgba(15,23,42,.14)}
.fx-trust-bg::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at 30% 50%,rgba(16,185,129,.2),transparent 50%),radial-gradient(ellipse at 70% 50%,rgba(255,255,255,.05),transparent 50%)}
.fx-trust-inner{display:flex;justify-content:center;align-items:center;text-align:center}
.fx-trust-text{max-width:1000px;margin:0 auto}
.fx-trust-text h2{font-size:2rem;font-weight:800;line-height:1.25;letter-spacing:-.01em}
.fx-trust-text p{font-size:1.05rem;color:rgba(255,255,255,.8);margin-top:.75rem}
.fx-trust-stats{display:flex;flex-direction:column;gap:1.25rem}
.fx-trust-stat{background:rgba(255,255,255,.08);backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.12);border-radius:14px;padding:1.15rem 1.5rem;display:flex;align-items:center;justify-content:space-between;transition:all .25s}
.fx-trust-stat:hover{background:rgba(255,255,255,.12);transform:translateX(4px)}
.fx-trust-stat strong{font-size:1.5rem;font-weight:800;color:#fff;font-family:'Plus Jakarta Sans',sans-serif}
.fx-trust-stat small{font-size:.8rem;color:rgba(255,255,255,.7);text-transform:uppercase;letter-spacing:.06em}
@media(max-width:768px){.fx-trust-bg{inset:.5rem 1.25rem;border-radius:22px}.fx-trust-inner{justify-content:center}.fx-trust-text h2{font-size:1.5rem}.fx-trust-stat strong{font-size:1.25rem}}
@media(max-width:480px){.fx-trust{padding:3.5rem 0}.fx-trust-bg{inset:0;border-radius:0}.fx-trust-text h2{font-size:1.25rem}.fx-trust-stat{padding:1rem 1.25rem;flex-direction:column;align-items:flex-start;gap:.25rem}}

/* ====================================================================
   ECOSYSTEM
   ==================================================================== */
.fx-eco-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem;position:relative}
.fx-eco-grid::before{content:'';position:absolute;left:8%;right:8%;top:48px;height:2px;background:linear-gradient(90deg,rgba(29,78,216,.18),rgba(16,185,129,.28),rgba(245,158,11,.18));z-index:0}
.fx-eco-card{background:#fff;padding:2rem 1.5rem;text-align:center;border:1px solid #f1f5f9;transition:all .3s;position:relative;overflow:hidden;z-index:1}
.fx-eco-card::before{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(29,78,216,.04),transparent 42%);opacity:0;transition:opacity .3s}
.fx-eco-card:hover{transform:translateY(-5px);border-color:#dbeafe}
.fx-eco-card:hover::before{opacity:1}
.fx-eco-step{position:absolute;top:1rem;right:1rem;font-size:.72rem;font-weight:800;color:#cbd5e1;font-family:'Plus Jakarta Sans',sans-serif}
.fx-eco-ico{width:64px;height:64px;border-radius:16px;margin:0 auto 1.25rem;display:flex;align-items:center;justify-content:center;font-size:28px;color:#fff;transition:transform .3s}
.fx-eco-card:hover .fx-eco-ico{transform:scale(1.1) rotate(5deg)}
.fx-eco-ico-blue{background:linear-gradient(135deg,#1d4ed8,#2563eb)}
.fx-eco-ico-purple{background:linear-gradient(135deg,#10b981,#34d399)}
.fx-eco-ico-green{background:linear-gradient(135deg,#10b981,#059669)}
.fx-eco-ico-amber{background:linear-gradient(135deg,#f59e0b,#d97706)}
.fx-eco-card h3{font-size:1.05rem;font-weight:700;color:#0f172a;margin:0 0 .6rem}
.fx-eco-card p{font-size:.88rem;color:#64748b;line-height:1.6;margin:0}
@media(max-width:968px){.fx-eco-grid{grid-template-columns:repeat(2,1fr)}.fx-eco-grid::before{display:none}}
@media(max-width:600px){.fx-eco-grid{grid-template-columns:1fr}.fx-eco-card{padding:1.5rem 1.25rem}.fx-eco-ico{width:56px;height:56px;font-size:24px}}

/* ====================================================================
   FEATURE BENTO
   ==================================================================== */
.fx-feat-bento{display:grid;grid-template-columns:repeat(2,1fr);grid-auto-rows:1fr;gap:1.5rem}
.fx-feat{background:#fff;padding:2rem;border:1px solid #f1f5f9;transition:all .3s;position:relative;overflow:hidden;display:flex;flex-direction:column;align-items:center;text-align:center}
.fx-feat:hover{transform:translateY(-5px);border-color:#dbeafe}
.fx-feat::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,#1d4ed8,#10b981);transform:scaleX(0);transform-origin:left;transition:transform .4s}
.fx-feat:hover::before{transform:scaleX(1)}
.fx-feat-ico{width:56px;height:56px;border-radius:14px;margin:0 auto 1.25rem;display:flex;align-items:center;justify-content:center;font-size:1.4rem;color:#fff;transition:transform .3s;flex-shrink:0}
.fx-feat:hover .fx-feat-ico{transform:scale(1.08)}
.fx-feat-ico-blue{background:linear-gradient(135deg,#1d4ed8,#2563eb)}
.fx-feat-ico-green{background:linear-gradient(135deg,#10b981,#059669)}
.fx-feat-ico-amber{background:linear-gradient(135deg,#f59e0b,#d97706)}
.fx-feat-ico-purple{background:linear-gradient(135deg,#10b981,#34d399)}
.fx-feat-body{flex:1;display:flex;flex-direction:column;align-items:center}
.fx-feat-kicker{display:block;margin-bottom:.5rem;font-size:1.5rem;font-weight:800;line-height:1.15;text-transform:uppercase;letter-spacing:.02em;color:#1d4ed8;font-family:'Plus Jakarta Sans',sans-serif}
.fx-feat h3{font-size:1.05rem;font-weight:700;color:#0f172a;margin:0 0 .6rem}
.fx-feat p{font-size:.88rem;color:#64748b;line-height:1.6;margin:0}
.fx-feat-shine{position:absolute;bottom:0;left:0;right:0;height:60%;background:linear-gradient(180deg,transparent,rgba(29,78,216,.02));pointer-events:none}
@media(max-width:600px){.fx-feat-bento{grid-template-columns:1fr;gap:1rem}.fx-feat{padding:1.6rem}.fx-feat-ico{margin:0 auto 1rem}}
@media(max-width:480px){.fx-feat{padding:1.35rem}.fx-feat-ico{width:44px;height:44px;font-size:1.1rem}.fx-feat h3{font-size:.98rem;margin-bottom:.35rem}.fx-feat p{font-size:.83rem;line-height:1.55}.fx-feat-kicker{font-size:1.2rem;margin-bottom:.35rem}}

/* ====================================================================
   VIDEO
   ==================================================================== */
.fx-video-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}
.fx-video{background:#fff;overflow:hidden;border:1px solid #f1f5f9;transition:all .3s}
.fx-video:hover{transform:translateY(-3px)}
.fx-video-wrap{position:relative;padding-bottom:56.25%;height:0;overflow:hidden}
.fx-video-wrap iframe{position:absolute;top:0;left:0;width:100%;height:100%;border:0}
@media(max-width:968px){.fx-video-grid{grid-template-columns:1fr;max-width:560px;margin:0 auto}}
@media(max-width:480px){.fx-video-grid{gap:1rem}}

/* ====================================================================
   STATS
   ==================================================================== */
.fx-section-stats{background:linear-gradient(180deg,#fff,#fbfdff)}
.fx-stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}
.fx-stat{background:#fff;padding:1.75rem;border:1px solid #f1f5f9;transition:all .25s;position:relative;overflow:hidden;text-align:center}
.fx-stat:hover{transform:translateY(-4px);border-color:#dbeafe}
.fx-stat-ico{width:48px;height:48px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:1.25rem;margin:0 auto 1rem;color:#fff}
.fx-stat-ico-amber{background:linear-gradient(135deg,#f59e0b,#d97706)}
.fx-stat-ico-green{background:linear-gradient(135deg,#10b981,#059669)}
.fx-stat-ico-blue{background:linear-gradient(135deg,#1d4ed8,#2563eb)}
.fx-stat p{font-size:.82rem;color:#64748b;margin:0 0 .35rem}
.fx-stat h3{font-size:1.5rem;font-weight:800;color:#0f172a;letter-spacing:-.02em;line-height:1.2;margin:0 0 .85rem}
.fx-stat-bar{height:4px;background:#f1f5f9;border-radius:4px;overflow:hidden}
.fx-stat-bar-fill{height:100%;width:0;background:linear-gradient(90deg,#1d4ed8,#10b981);border-radius:4px;transition:width 1.5s cubic-bezier(.4,0,.2,1)}
@media(max-width:968px){.fx-stats-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.fx-stats-grid{grid-template-columns:repeat(2,1fr);gap:.85rem}.fx-stat{padding:1.15rem;text-align:center}.fx-stat-ico{width:38px;height:38px;font-size:1rem;margin:0 auto .7rem}.fx-stat p{font-size:.7rem;line-height:1.3;margin-bottom:.3rem}.fx-stat h3{font-size:1.02rem;margin-bottom:.6rem;line-height:1.25}}
@media(max-width:360px){.fx-stats-grid{grid-template-columns:1fr}}

/* ====================================================================
   FAQ ACCORDION
   ==================================================================== */
.fx-accordion{max-width:48rem;margin:0 auto;display:flex;flex-direction:column;gap:.65rem}
.fx-acc-item{background:#fff;border:1px solid #f1f5f9;overflow:hidden;transition:all .25s}
.fx-acc-item:hover{border-color:#dbeafe}
.fx-acc-q{width:100%;padding:1.15rem 1.4rem;display:flex;justify-content:space-between;align-items:center;font-size:.98rem;font-weight:700;color:#0f172a;font-family:'Plus Jakarta Sans',sans-serif;cursor:pointer;text-align:left;background:none;border:none;transition:color .2s;gap:1rem}
.fx-acc-q:hover{color:#1d4ed8}
.fx-acc-icon{font-size:.8rem;color:#1d4ed8;transition:transform .3s;flex-shrink:0}
.fx-acc-item.is-open .fx-acc-icon{transform:rotate(45deg)}
.fx-acc-a{max-height:0;overflow:hidden;transition:max-height .35s cubic-bezier(.4,0,.2,1)}
.fx-acc-a p{padding:0 1.4rem .7rem;font-size:.88rem;color:#64748b;line-height:1.65;margin:0}
.fx-acc-a ul,.fx-acc-a ol{margin:0 0 .7rem;padding:0 1.4rem .1rem 2.75rem;font-size:.88rem;color:#64748b;line-height:1.65}
.fx-acc-a li{margin:0 0 .4rem}
.fx-acc-a strong{color:#0f172a;font-weight:700}
.fx-acc-a a{color:#1d4ed8;font-weight:600}
.fx-acc-a>*:last-child{padding-bottom:1.15rem}
.fx-faq-more{display:flex;justify-content:center;margin-top:1.75rem}
.fx-acc-group{margin:1.25rem 0 .35rem;font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.12em;color:#1d4ed8;font-family:'Plus Jakarta Sans',sans-serif}
.fx-acc-group:first-child{margin-top:0}
@media(max-width:480px){.fx-acc-q{font-size:.9rem;padding:1rem 1.15rem}.fx-acc-a p{font-size:.85rem;padding:0 1.15rem .6rem}.fx-acc-a ul,.fx-acc-a ol{font-size:.85rem;padding-left:2.35rem;padding-right:1.15rem}}

/* ====================================================================
   CTA
   ==================================================================== */
.fx-cta{position:relative;padding:5rem 0;text-align:center;overflow:hidden;margin:0;background:#fff;isolation:isolate}
.fx-cta-glow{position:absolute;inset:.75rem 2rem;background:linear-gradient(135deg,#f8fbff,#eff6ff);border:1px solid var(--fx-line);border-radius:28px;z-index:-2}
.fx-cta-glow::before{content:'';position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:520px;height:520px;background:radial-gradient(circle,rgba(29,78,216,.08),transparent 70%);animation:fxPulse 4s ease-in-out infinite}
@keyframes fxPulse{0%,100%{transform:translate(-50%,-50%) scale(1)}50%{transform:translate(-50%,-50%) scale(1.1)}}
.fx-cta-inner{position:relative;z-index:1;max-width:36rem;margin:0 auto}
.fx-cta h2{font-size:2rem;font-weight:800;color:#0f172a}
.fx-cta p{font-size:1.05rem;color:#64748b;margin:.65rem 0 1.75rem}
.fx-cta-btns{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}
@media(max-width:768px){.fx-cta-glow{inset:.5rem 1.25rem;border-radius:22px}.fx-cta h2{font-size:1.5rem}.fx-cta p{font-size:.95rem}}
@media(max-width:480px){.fx-cta{padding:3.5rem 0}.fx-cta-glow{inset:0;border-radius:0}.fx-cta-btns{flex-direction:column}.fx-cta-btns a{width:100%;justify-content:center}}

/* ====================================================================
   CONTACT — split layout
   ==================================================================== */
.fx-contact{padding:5rem 0;background:linear-gradient(180deg,#fff,#fbfdff)}
.fx-contact-wrap{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:center}
.fx-contact-left h2{font-size:2rem;font-weight:800;color:#0f172a;margin:1rem 0 .75rem;line-height:1.25}
.fx-contact-left>p{font-size:1rem;color:#64748b;line-height:1.65;margin:0 0 1.75rem}
.fx-contact-right{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.fx-contact-card{display:flex;align-items:center;gap:1rem;padding:1.25rem;background:#fff;border:1px solid #f1f5f9;transition:all .25s;text-decoration:none;color:inherit}
.fx-contact-card:hover{transform:translateY(-3px);border-color:#dbeafe}
.fx-contact-icon{width:44px;height:44px;border-radius:12px;background:linear-gradient(135deg,#eff6ff,#dbeafe);color:#1d4ed8;display:flex;align-items:center;justify-content:center;font-size:1.1rem;flex-shrink:0;transition:transform .2s}
.fx-contact-card:hover .fx-contact-icon{transform:scale(1.08)}
.fx-contact-card small{display:block;font-size:.72rem;color:#94a3b8;text-transform:uppercase;letter-spacing:.06em;margin-bottom:.15rem}
.fx-contact-card strong{display:block;font-size:.9rem;font-weight:700;color:#0f172a}
@media(max-width:768px){.fx-contact-wrap{grid-template-columns:1fr;gap:2rem}.fx-contact-left{text-align:center}.fx-contact-left h2{font-size:1.5rem}.fx-contact-left>p{margin-left:auto;margin-right:auto;max-width:32rem}.fx-contact-right{grid-template-columns:1fr}}
@media(max-width:480px){.fx-contact-right{gap:.75rem}.fx-contact-card{padding:1rem}.fx-contact-icon{width:38px;height:38px;font-size:1rem}}

/* ====================================================================
   FOOTER — modern 3-zone
   ==================================================================== */
.fx-footer{background:linear-gradient(180deg,#0f172a,#0f172a);color:#94a3b8;padding:4rem 0 1.5rem}
.fx-footer-main{display:grid;grid-template-columns:1.2fr 2fr;gap:3rem;margin-bottom:2.5rem}
.fx-footer-brand{display:flex;flex-direction:column;align-items:flex-start}
.fx-footer-logo{height:30px;margin-bottom:1rem;filter:brightness(0) invert(1)}
.fx-footer-desc{font-size:.82rem;line-height:1.7;margin:0 0 1.25rem;max-width:24rem}
.fx-footer-social{display:flex;gap:.5rem;flex-wrap:wrap}
.fx-footer-social a{width:34px;height:34px;border-radius:50%;background:rgba(255,255,255,.08);color:#94a3b8;display:inline-flex;align-items:center;justify-content:center;font-size:.88rem;transition:all .2s}
.fx-footer-social a:hover{background:#1d4ed8;color:#fff;transform:translateY(-2px)}
.fx-footer-links{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem}
.fx-footer-col h4{font-weight:700;color:#fff;font-size:.76rem;text-transform:uppercase;letter-spacing:.1em;margin:0 0 .85rem;font-family:'Plus Jakarta Sans',sans-serif}
.fx-footer-col a{display:flex;align-items:center;gap:.4rem;color:#94a3b8;font-size:.82rem;margin-bottom:.5rem;transition:color .2s}
.fx-footer-col a:hover{color:#818cf8}
.fx-footer-col a i{font-size:.78rem;width:14px}
.fx-footer-addr{font-size:.82rem;line-height:1.6;margin:0 0 .75rem;color:#94a3b8}
.fx-footer-map{position:relative;margin:2.2rem 0 0;border-radius:16px;overflow:hidden;border:1px solid rgba(148,163,184,.18);line-height:0}
.fx-footer-map iframe{display:block;width:100%;height:220px;filter:grayscale(.35) contrast(.96);transition:filter .35s}
.fx-footer-map:hover iframe{filter:none}
.fx-footer-map-open{position:absolute;right:14px;bottom:14px;display:inline-flex;align-items:center;gap:.45rem;background:#151a2e;color:#e2e8f0;font-size:.8rem;font-weight:600;line-height:1;padding:.6rem .95rem;border-radius:999px;border:1px solid rgba(148,163,184,.25);box-shadow:0 4px 14px rgba(0,0,0,.35);transition:background .2s,color .2s}
.fx-footer-map-open:hover{background:#1d4ed8;color:#fff}
.fx-footer-map-open i{font-size:.85rem}
@media(max-width:600px){.fx-footer-map iframe{height:170px}.fx-footer-map{border-radius:12px}}

/* Certs zone */
.fx-footer-certs{padding:2rem 0;border-top:1px solid rgba(255,255,255,.08)}
.fx-footer-certs-label{display:block;font-size:.72rem;color:#64748b;text-transform:uppercase;letter-spacing:.1em;font-weight:600;margin-bottom:1rem}
.fx-footer-certs-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:.85rem}
.fx-cert{background:#fff;border:1px solid rgba(255,255,255,.14);border-radius:10px;padding:.85rem;display:flex;align-items:center;justify-content:center;min-height:80px;transition:all .2s}
.fx-cert:hover{background:#fff;border-color:#dbeafe;box-shadow:0 6px 18px rgba(0,0,0,.18)}
.fx-cert img{max-height:44px;max-width:100%;object-fit:contain}

/* Disclaimer collapsible */
.fx-footer-disclaimer{padding:1.5rem 0;border-top:1px solid rgba(255,255,255,.08)}
.fx-footer-disclaimer summary{cursor:pointer;font-size:.82rem;font-weight:600;color:#cbd5e1;padding:.5rem 0;transition:color .2s;list-style:none;display:flex;align-items:center;gap:.5rem}
.fx-footer-disclaimer summary::before{content:'\25B8';font-size:.7rem;color:#64748b;transition:transform .2s}
.fx-footer-disclaimer[open] summary::before{transform:rotate(90deg)}
.fx-footer-disclaimer summary:hover{color:#fff}
.fx-footer-disclaimer summary::-webkit-details-marker{display:none}
.fx-footer-disclaimer ol{color:#64748b;font-size:.74rem;line-height:1.8;max-width:1100px;margin:.75rem auto 0;padding:0;list-style:none;counter-reset:fx-disc}
/* Penomoran dibuat manual via counter: reset CSS global (list-style:none) menelan
   marker bawaan <ol>, jadi angkanya tidak pernah muncul. */
.fx-footer-disclaimer ol li{position:relative;margin-bottom:.5rem;padding-left:2rem;counter-increment:fx-disc}
.fx-footer-disclaimer ol li::before{content:counter(fx-disc) '.';position:absolute;left:0;top:0;min-width:1.4rem;text-align:right;color:#94a3b8;font-weight:700;font-variant-numeric:tabular-nums}

/* Bottom */
.fx-footer-bottom{padding:1.5rem 0;border-top:1px solid rgba(255,255,255,.08);text-align:center}
.fx-footer-bottom p{color:#475569;font-size:.76rem;margin:0}

@media(max-width:968px){.fx-footer-main{grid-template-columns:1fr;gap:2rem}.fx-footer-links{grid-template-columns:repeat(2,1fr);gap:1.5rem}.fx-footer-brand{align-items:center;text-align:center}.fx-footer-desc{margin-left:auto;margin-right:auto}.fx-footer-social{justify-content:center}}
@media(max-width:768px){.fx-footer-certs-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:480px){.fx-footer{padding:3rem 0 1.25rem}.fx-footer-links{grid-template-columns:1fr 1fr;gap:1.25rem}.fx-footer-certs-grid{grid-template-columns:repeat(2,1fr)}.fx-footer-main{gap:1.5rem}}

/* ====================================================================
   FLOATING
   ==================================================================== */
.fv2-social-bar{position:fixed;top:50%;right:0;transform:translateY(-50%);display:flex;flex-direction:column;gap:.4rem;z-index:999}
.fv2-social-bar a{width:40px;height:40px;border-radius:10px 0 0 10px;background:#0f172a;color:#fff;display:flex;align-items:center;justify-content:center;font-size:.95rem;transition:all .25s;opacity:.65}
.fv2-social-bar a:hover{opacity:1;background:#1d4ed8;transform:translateX(-4px)}
@media(max-width:768px){.fv2-social-bar{display:none}}
.fv2-back-top{position:fixed;bottom:1.75rem;right:1.75rem;z-index:998;width:46px;height:46px;border-radius:50%;background:linear-gradient(135deg,#1d4ed8,#2563eb);color:#fff;font-size:1.05rem;box-shadow:0 8px 24px rgba(29,78,216,.35);opacity:0;visibility:hidden;transform:translateY(20px);transition:all .3s;cursor:pointer;border:none}
.fv2-back-top.is-visible{opacity:1;visibility:visible;transform:translateY(0)}
.fv2-back-top:hover{transform:translateY(-3px) scale(1.05);box-shadow:0 12px 32px rgba(29,78,216,.4)}
@media(max-width:480px){.fv2-back-top{bottom:1rem;right:1rem;width:40px;height:40px;font-size:.95rem}}

/* ====================================================================
   LIGHTBOX
   ==================================================================== */
.fx-lightbox{position:fixed;inset:0;z-index:1100;display:none;align-items:center;justify-content:center;padding:2rem}
.fx-lightbox.is-active{display:flex}
.fx-lightbox-bg{position:absolute;inset:0;background:rgba(15,23,42,.85);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
.fx-lightbox-img{position:relative;z-index:1;max-width:90vw;max-height:85vh;border-radius:12px;box-shadow:0 30px 80px rgba(0,0,0,.4);animation:fxLightboxIn .25s ease}
@keyframes fxLightboxIn{from{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}
.fx-lightbox-close{position:absolute;top:1.5rem;right:1.5rem;z-index:2;width:42px;height:42px;border-radius:50%;background:rgba(255,255,255,.15);color:#fff;font-size:1.1rem;display:flex;align-items:center;justify-content:center;transition:all .2s;cursor:pointer;border:none}
.fx-lightbox-close:hover{background:rgba(255,255,255,.3);transform:rotate(90deg)}
img[data-lightbox]{cursor:zoom-in;transition:transform .2s}
img[data-lightbox]:hover{transform:scale(1.02)}

/* ====================================================================
   MODALS
   ==================================================================== */
.fv2-modal{position:fixed;inset:0;z-index:1000;display:none;align-items:center;justify-content:center;padding:1.5rem}
.fv2-modal.is-active{display:flex}
.fv2-modal-bg{position:absolute;inset:0;background:rgba(15,23,42,.65);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
.fv2-modal-card{position:relative;z-index:1;background:#fff;border-radius:22px;width:100%;max-width:28rem;max-height:90vh;overflow:hidden;box-shadow:0 30px 70px rgba(0,0,0,.2);display:flex;flex-direction:column;animation:fv2ModalIn .3s ease}
.fv2-modal-lg .fv2-modal-card{max-width:42rem}
.fv2-modal-legal .fv2-modal-card{max-width:50rem}
.fv2-modal-card.fv2-modal-banner{max-width:34rem}
.fv2-modal-banner .fv2-modal-head h3 i{color:#16a34a;margin-right:.45rem}
.fv2-banner-text p{font-size:.82rem;color:#475569;line-height:1.65;margin:0 0 .75rem}
.fv2-banner-title{font-size:1.05rem!important;font-weight:800;color:#dc2626!important;letter-spacing:.04em;margin-bottom:.6rem!important;font-family:'Plus Jakarta Sans',sans-serif}
.fv2-banner-contacts li a{color:inherit;text-decoration:none}
.fv2-banner-contacts li a:hover{text-decoration:underline}
.fv2-banner-text strong{color:#0f172a}
.fv2-banner-contacts{list-style:none;margin:.25rem 0 1rem;padding:.85rem 1rem;background:#f0fdf4;border:1px solid #dcfce7;border-radius:12px;display:grid;gap:.5rem}
.fv2-banner-contacts li{display:flex;align-items:center;gap:.6rem;font-size:.82rem;color:#0f172a;font-weight:600}
.fv2-banner-contacts li i{width:24px;height:24px;border-radius:7px;background:#16a34a;color:#fff;display:flex;align-items:center;justify-content:center;font-size:.72rem;flex-shrink:0}
.fv2-banner-warn{border:1.5px solid #0f172a;border-radius:12px;padding:.85rem 1rem}
.fv2-banner-warn strong{display:block;color:#0f172a;font-size:.82rem;font-weight:800;letter-spacing:.03em;margin-bottom:.3rem}
.fv2-banner-warn p{margin:0;font-size:.82rem;font-weight:700;color:#0f172a;line-height:1.55}
.fv2-modal-card.fv2-modal-pengumuman{max-width:42rem}
@keyframes fv2ModalIn{from{opacity:0;transform:translateY(20px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}
.fv2-modal-head{display:flex;justify-content:space-between;align-items:center;padding:1.35rem 1.5rem;border-bottom:1px solid #f1f5f9;flex-shrink:0}
.fv2-modal-head h3{font-size:1.1rem;font-weight:700;color:#0f172a}
.fv2-modal-x{background:#f1f5f9;width:34px;height:34px;border-radius:10px;color:#64748b;font-size:.95rem;display:flex;align-items:center;justify-content:center;transition:all .2s;cursor:pointer;border:none}
.fv2-modal-x:hover{background:#e2e8f0;color:#0f172a;transform:rotate(90deg)}
.fv2-modal-body{padding:1.5rem;overflow-y:auto;flex:1}
.fv2-modal-foot{display:flex;gap:.65rem;justify-content:flex-end;padding:1.15rem 1.5rem;border-top:1px solid #f1f5f9;flex-shrink:0}
.fv2-modal-actions{display:flex;gap:.65rem;justify-content:center;margin-top:1.5rem;flex-wrap:wrap}
.fv2-modal-foot-links{margin-top:1.5rem;padding-top:1.25rem;border-top:1px solid #f1f5f9;text-align:center;font-size:.86rem;color:#475569}
.fv2-modal-foot-links p{margin:.5rem 0 0}
.fv2-link{color:#1d4ed8;font-weight:600}
.fv2-pengumuman-scroll{max-height:50vh;overflow-y:auto;padding:1.5rem;background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;color:#475569;font-size:.82rem;line-height:1.75;text-align:justify}
.fv2-pengumuman-h4{font-size:.95rem;font-weight:700;color:#0f172a;margin:1.25rem 0 .5rem}
.fv2-pengumuman-h4:first-child{margin-top:0}
.fv2-pengumuman-ol{padding-left:1.25rem;margin:0 0 1rem}
.fv2-pengumuman-ol li{margin-bottom:.45rem}
.fv2-pengumuman-contact{margin-top:1rem;padding-top:1rem;border-top:1px solid #e2e8f0}
.fv2-pengumuman-contact ul{list-style:disc;padding-left:1.5rem;margin:.5rem 0}
.fv2-pengumuman-ack{display:flex;align-items:center;gap:.5rem;margin-top:1.25rem;padding:.85rem 1rem;background:#f8fafc;border-radius:10px;font-size:.82rem;cursor:pointer}
.fv2-pengumuman-ack input[type=checkbox]{width:18px;height:18px;accent-color:#1d4ed8}
.fv2-legal-scroll{max-height:60vh;overflow-y:auto;padding:2rem}
.fv2-legal-content{max-width:50rem;margin:0 auto;text-align:justify;color:#475569;font-size:.86rem;line-height:1.85}
.fv2-legal-title{font-size:1.45rem;font-weight:800;color:#0f172a;text-align:center;margin:0 0 1.5rem}
.fv2-legal-ol{padding-left:1.5rem;margin:0}
.fv2-legal-ol>li{margin-bottom:1rem;font-weight:600}
.fv2-legal-ol>li>strong{display:block;margin-bottom:.35rem;color:#0f172a;font-size:.92rem}
.fv2-legal-ol ol{padding-left:1.5rem;font-weight:400;margin:.5rem 0}

/* ====================================================================
   FORMS
   ==================================================================== */
.fv2-field{margin-bottom:1.15rem}
.fv2-label{display:block;font-size:.8rem;font-weight:600;color:#475569;margin-bottom:.35rem;font-family:'Plus Jakarta Sans',sans-serif}
.fv2-slider-val{float:right;font-weight:700;color:#1d4ed8;font-size:.9rem}
.fv2-slider{-webkit-appearance:none;appearance:none;width:100%;height:6px;border-radius:6px;background:#e2e8f0;outline:none;margin:.5rem 0 .2rem}
.fv2-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:22px;height:22px;border-radius:50%;background:#1d4ed8;border:3px solid #fff;box-shadow:0 2px 6px rgba(29,78,216,.4);cursor:pointer;transition:transform .15s}
.fv2-slider::-webkit-slider-thumb:hover{transform:scale(1.12)}
.fv2-slider::-moz-range-thumb{width:22px;height:22px;border-radius:50%;background:#1d4ed8;border:3px solid #fff;box-shadow:0 2px 6px rgba(29,78,216,.4);cursor:pointer}
.fv2-slider:disabled{opacity:.5;cursor:not-allowed}
.fv2-slider:disabled::-webkit-slider-thumb{background:#94a3b8;cursor:not-allowed}
.fv2-slider:disabled::-moz-range-thumb{background:#94a3b8;cursor:not-allowed}
.fv2-input{width:100%;padding:.8rem 1rem .8rem 2.75rem;border:1.5px solid #e2e8f0;border-radius:12px;font-size:.92rem;font-family:'Inter',sans-serif;color:#0f172a;background:#fff;transition:all .2s;outline:none}
.fv2-input:focus{border-color:#1d4ed8;box-shadow:0 0 0 4px rgba(29,78,216,.12),0 4px 12px rgba(29,78,216,.08)}
.fv2-input::placeholder{color:#cbd5e1}
.fv2-input-wrap{position:relative}
.fv2-input-prefix{position:absolute;left:.85rem;top:50%;transform:translateY(-50%);color:#94a3b8;font-size:.9rem;pointer-events:none;transition:color .2s}
.fv2-input-wrap:focus-within .fv2-input-prefix{color:#1d4ed8}
.fv2-input-wrap:has(.fv2-input-prefix) .fv2-input{padding-left:2.4rem}
/* custom dropdown (ganti native <select> yang popup-nya melenceng di mobile) */
.fv2-hidden-select{display:none!important}
.fv2-select{position:relative}
.fv2-select-trigger{display:flex;align-items:center;justify-content:space-between;gap:.5rem;width:100%;text-align:left;cursor:pointer}
.fv2-select-trigger .fa{color:#94a3b8;font-size:1rem;transition:transform .2s;flex-shrink:0}
.fv2-select.is-open .fv2-select-trigger .fa{transform:rotate(180deg)}
.fv2-select.is-open .fv2-select-trigger{border-color:#1d4ed8;box-shadow:0 0 0 4px rgba(29,78,216,.1)}
.fv2-select-label.is-placeholder{color:#94a3b8}
.fv2-select-menu{list-style:none;margin:.4rem 0 0;padding:.35rem;position:absolute;top:100%;left:0;right:0;background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 12px 32px rgba(0,0,0,.14);z-index:30;display:none;max-height:240px;overflow-y:auto}
.fv2-select.is-open .fv2-select-menu{display:block}
.fv2-select-menu li{padding:.7rem .85rem;border-radius:8px;cursor:pointer;font-size:.92rem;color:#0f172a;transition:background .15s}
.fv2-select-menu li:hover,.fv2-select-menu li.is-active{background:#eff6ff;color:#1d4ed8}
.fv2-input-icon{position:absolute;right:.85rem;top:50%;transform:translateY(-50%);background:transparent;color:#94a3b8;padding:.25rem;cursor:pointer;border:none;transition:color .2s}
.fv2-input-icon:hover{color:#1d4ed8}
.fv2-help{font-size:.76rem;color:#94a3b8;margin:.3rem 0 0}
.fv2-checkbox{display:flex;align-items:flex-start;gap:.6rem;font-size:.86rem;color:#475569;cursor:pointer}
.fv2-checkbox input[type=checkbox]{width:18px;height:18px;accent-color:#1d4ed8;margin-top:2px;flex-shrink:0}
.fv2-checkbox a{color:#1d4ed8;font-weight:600}
.fv2-radio-list{display:flex;gap:1.5rem;flex-wrap:wrap}
.fv2-radio{display:inline-flex;align-items:center;gap:.5rem;cursor:pointer;font-size:.88rem}
.fv2-radio input[type=radio]{width:18px;height:18px;accent-color:#1d4ed8}
.fv2-pw-rules{list-style:none;padding:0;margin:.6rem 0 0}
.fv2-pw-rules li{font-size:.78rem;margin-bottom:.2rem;color:#ef4444}
.fv2-pw-rules li::before{content:'\2716 '}
.fv2-pw-rules li.valid{color:#10b981}
.fv2-pw-rules li.valid::before{content:'\2714 '}
.err-msg{color:#ef4444;font-size:.8rem;margin-bottom:1rem;min-height:1em}
.err-msg-act{color:#ef4444;font-size:.8rem;min-height:1.5rem;margin-bottom:.5rem;font-weight:600}
.msg-act{color:#475569;font-size:.86rem;margin:0 0 .5rem}
.login-error{color:#ef4444;font-size:.8rem;font-weight:500}
.otp-error{color:#ef4444;font-size:.8rem;font-weight:500}
.fv2-otp-info{font-size:.86rem;color:#475569;margin:0 0 1rem}
.fv2-step-hidden{display:none}
.otp-wrapper{display:flex;justify-content:center;gap:.5rem;margin-bottom:1rem}
.otp-digit{width:2.65rem;height:2.65rem;text-align:center;font-size:1.25rem;border:2px solid #e2e8f0;border-radius:11px;color:#0f172a;outline:none;transition:all .2s;font-family:'Plus Jakarta Sans',sans-serif}
.otp-digit:focus{border-color:#1d4ed8;box-shadow:0 0 0 4px rgba(29,78,216,.1)}
.fv2-tabs{display:flex;gap:.2rem;background:#f8fafc;padding:.3rem;border-radius:11px;margin-bottom:1.5rem}
.fv2-tab{flex:1;padding:.6rem 1rem;border:none;background:transparent;border-radius:9px;font-weight:600;font-size:.86rem;color:#64748b;cursor:pointer;transition:all .2s;font-family:'Plus Jakarta Sans',sans-serif}
.fv2-tab.is-active{background:#fff;color:#1d4ed8;box-shadow:0 2px 6px rgba(0,0,0,.05)}
.tab-content{display:none}
.tab-content.is-active{display:block}
.is-hidden{display:none!important}
.fv2-calc-summary{background:#f8fafc;border:1px solid #f1f5f9;border-radius:12px;padding:1.15rem 1.4rem;margin:1.25rem 0}
.fv2-calc-row{display:flex;justify-content:space-between;align-items:center;padding:.3rem 0;font-size:.88rem;color:#475569}
.fv2-calc-row strong{color:#0f172a;font-weight:700}
.fv2-table{width:100%;border-collapse:collapse;margin:1rem 0;border:1px solid #f1f5f9;border-radius:12px;overflow:hidden}
.fv2-table th{background:#f8fafc;padding:.7rem 1rem;font-size:.8rem;font-weight:700;color:#0f172a;text-align:left;text-transform:uppercase;letter-spacing:.05em}
.fv2-table td{padding:.7rem 1rem;font-size:.86rem;color:#475569;border-top:1px solid #f1f5f9}
.fv2-table .has-text-right{text-align:right}
.is-block{display:block;font-size:.72rem;color:#94a3b8}
.fv2-tkb-desc{font-size:.88rem;color:#475569;line-height:1.75;margin:0 0 1.5rem}
.fv2-tkb-table td{font-weight:600;color:#0f172a}
.fv2-tkb-note{font-size:.8rem;color:#94a3b8;margin:1rem 0 0}
.has-text-centered{text-align:center}
.has-text-right{text-align:right}
.title.is-5{font-size:1.2rem;font-weight:700}
.mt-2{margin-top:.5rem}.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.mt-6{margin-top:1.5rem}.mb-4{margin-bottom:1rem}
.input.is-medium{padding:.75rem 1rem}

/* ====================================================================
   SUB-PAGES (ajukan, beri, about, faq, legal, dll)
   ==================================================================== */
.fx-page{padding:8rem 0 5rem}
.fx-page-hero{text-align:center;max-width:42rem;margin:0 auto 3rem}
.fx-page-title{font-size:2.5rem;font-weight:800;color:#0f172a;margin:1rem 0 .5rem;letter-spacing:-.025em}
.fx-page-sub{font-size:1.1rem;color:#64748b;margin:0}
.fx-page-banner{margin:0 0 3rem;border-radius:20px;overflow:hidden;box-shadow:0 16px 40px rgba(0,0,0,.06)}
.fx-page-banner img{width:100%;cursor:zoom-in}
.fx-page-body{max-width:52rem;margin:0 auto}
.fx-page-h2{font-size:1.65rem;font-weight:800;color:#0f172a;margin:2.5rem 0 1.25rem;letter-spacing:-.02em}
.fx-page-img{width:100%;border-radius:14px;margin:1rem 0;box-shadow:0 8px 24px rgba(0,0,0,.05);cursor:zoom-in}
.fx-page-divider{border:none;border-top:1px solid #f1f5f9;margin:2.5rem 0}
.fx-page-list{padding-left:1.25rem;margin:1rem 0;color:#475569;font-size:.92rem;line-height:1.85}
.fx-page-list li{margin-bottom:.5rem}

/* Tips */
.fx-page-tips{display:flex;flex-direction:column;gap:1.25rem;margin:1.5rem 0}
.fx-page-tip{display:flex;gap:1rem;align-items:flex-start;padding:1.25rem;background:#f8fafc;border-radius:14px;border:1px solid #f1f5f9;transition:all .25s}
.fx-page-tip:hover{background:#eff6ff;border-color:#dbeafe;transform:translateX(4px)}
.fx-page-tip-ico{width:40px;height:40px;border-radius:10px;background:linear-gradient(135deg,#1d4ed8,#2563eb);color:#fff;display:flex;align-items:center;justify-content:center;font-size:1rem;flex-shrink:0}
.fx-page-tip strong{display:block;font-size:.95rem;font-weight:700;color:#0f172a;margin-bottom:.25rem}
.fx-page-tip p{font-size:.88rem;color:#64748b;margin:0;line-height:1.6}

/* Cards */
.fx-page-cards{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin:1.5rem 0}
@media(max-width:768px){.fx-page-cards{grid-template-columns:1fr}}
.fx-page-card{background:#fff;border:1px solid #f1f5f9;border-radius:16px;padding:1.75rem;transition:all .25s;position:relative;overflow:hidden}
.fx-page-card:hover{box-shadow:0 12px 30px rgba(0,0,0,.05);border-color:#dbeafe}
.fx-page-card-title{font-size:1.1rem;font-weight:700;color:#0f172a;margin:0 0 1rem;display:flex;align-items:center;gap:.5rem}
.fx-page-card-title i{color:#1d4ed8}
.fx-page-card-sub{font-size:.88rem;font-weight:700;color:#0f172a;margin:1.25rem 0 .5rem}

/* Syarat tabs — compact */
.fx-syarat-tabs{display:flex;gap:.5rem;margin-bottom:1.25rem}
.fx-syarat-tab{display:inline-flex;align-items:center;gap:.5rem;padding:.65rem 1.4rem;border-radius:12px;font-weight:700;font-size:.88rem;font-family:'Plus Jakarta Sans',sans-serif;background:#f1f5f9;color:#64748b;cursor:pointer;border:none;transition:all .2s}
.fx-syarat-tab.is-active{background:linear-gradient(135deg,#1d4ed8,#2563eb);color:#fff;box-shadow:0 4px 12px rgba(29,78,216,.25)}
.fx-syarat-tab:hover:not(.is-active){background:#e2e8f0}
.fx-syarat-panel{display:none;background:#fff;border:1px solid #f1f5f9;border-radius:16px;padding:1.5rem}
.fx-syarat-panel.is-active{display:block;animation:fxFade .25s ease}
@keyframes fxFade{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
.fx-syarat-grid{display:grid;grid-template-columns:1fr 1fr;gap:.5rem 1.5rem}
@media(max-width:480px){.fx-syarat-grid{grid-template-columns:1fr}}
.fx-syarat-list{list-style:none;padding:0;margin:0}
.fx-syarat-list li{display:flex;align-items:flex-start;gap:.6rem;font-size:.88rem;color:#475569;line-height:1.5;margin-bottom:.6rem}
.fx-syarat-list li i{color:#10b981;font-size:.8rem;margin-top:.2rem;flex-shrink:0}
.fx-syarat-sub{margin-bottom:1.25rem}
.fx-syarat-sub:last-child{margin-bottom:0}
.fx-syarat-sub h4{font-size:.92rem;font-weight:700;color:#0f172a;margin:0 0 .75rem;display:flex;align-items:center;gap:.5rem}
.fx-syarat-sub h4 i{color:#1d4ed8;font-size:.85rem}
@media(max-width:480px){.fx-syarat-tab{padding:.55rem 1rem;font-size:.82rem}.fx-syarat-panel{padding:1.25rem}}
.fx-syarat-note{font-size:.75rem;color:#94a3b8;font-style:italic;margin:.75rem 0 0}

/* Fees */
.fx-page-fees{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;margin:1.5rem 0}
@media(max-width:600px){.fx-page-fees{grid-template-columns:1fr}}
.fx-page-fee{display:flex;gap:1rem;align-items:flex-start;padding:1.25rem;background:#fff;border:1px solid #f1f5f9;border-radius:14px;transition:all .25s}
.fx-page-fee:hover{transform:translateY(-2px);box-shadow:0 8px 20px rgba(0,0,0,.04);border-color:#dbeafe}
.fx-page-fee-ico{width:42px;height:42px;border-radius:10px;background:linear-gradient(135deg,#eff6ff,#dbeafe);color:#1d4ed8;display:flex;align-items:center;justify-content:center;font-size:1rem;flex-shrink:0}
.fx-page-fee strong{display:block;font-size:.92rem;font-weight:700;color:#0f172a;margin-bottom:.15rem}
.fx-page-fee p{font-size:.85rem;color:#64748b;margin:0}

/* CTA */
.fx-page-cta{text-align:center;padding:3rem 2rem;background:linear-gradient(135deg,#eff6ff,#dbeafe);border-radius:20px;margin:2.5rem 0}
.fx-page-cta h2{font-size:1.75rem;font-weight:800;color:#0f172a;margin:0 0 .5rem}
.fx-page-cta p{font-size:1rem;color:#64748b;margin:0 0 1.5rem}
.fx-page-cta-btns{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}
@media(max-width:480px){.fx-page-cta{padding:2rem 1.25rem}.fx-page-cta h2{font-size:1.4rem}.fx-page-cta-btns{flex-direction:column}.fx-page-cta-btns button{width:100%}}

@media(max-width:768px){.fx-page{padding:6rem 0 3rem}.fx-page-title{font-size:1.75rem}.fx-page-h2{font-size:1.35rem}}
@media(max-width:480px){.fx-page{padding:5rem 0 2rem}.fx-page-title{font-size:1.5rem}.fx-page-h2{font-size:1.2rem}.fx-page-card{padding:1.25rem}}

/* ====================================================================
   ABOUT PAGE
   ==================================================================== */
.fx-about-company{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:center}
.fx-about-company-text p{font-size:1rem;color:#475569;line-height:1.75;margin:0 0 1rem}
.fx-about-company-visual img{width:100%;border-radius:20px;box-shadow:0 20px 50px rgba(0,0,0,.08);cursor:zoom-in}
@media(max-width:968px){.fx-about-company{grid-template-columns:1fr;gap:2rem}}

/* Visi & Misi */
.fx-visi{position:relative;padding:4.5rem 0;overflow:hidden;color:#fff}
.fx-visi-bg{position:absolute;inset:0;background-size:cover;background-position:center;z-index:-2}
.fx-visi-overlay{position:absolute;inset:0;background:linear-gradient(135deg,rgba(30,27,75,.92),rgba(29,78,216,.85));z-index:-1}
.fx-visi-inner{display:grid;grid-template-columns:1fr 1.5fr;gap:3rem;align-items:center}
.fx-visi-text h2{font-size:2.25rem;font-weight:800;color:#fff}
.fx-visi-text p{font-size:1.1rem;color:rgba(255,255,255,.7)}
.fx-visi-cards{display:flex;flex-direction:column;gap:1.25rem}
.fx-visi-card{background:rgba(255,255,255,.1);backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.15);border-radius:16px;padding:1.5rem;display:flex;gap:1rem;align-items:flex-start;transition:all .25s}
.fx-visi-card:hover{background:rgba(255,255,255,.15);transform:translateX(4px)}
.fx-visi-card-ico{width:48px;height:48px;border-radius:12px;background:rgba(255,255,255,.15);color:#fff;display:flex;align-items:center;justify-content:center;font-size:1.2rem;flex-shrink:0}
.fx-visi-card h3{font-size:1.15rem;font-weight:700;color:#fff;margin:0 0 .4rem}
.fx-visi-card p{font-size:.9rem;color:rgba(255,255,255,.85);margin:0;line-height:1.6}
@media(max-width:768px){.fx-visi-inner{grid-template-columns:1fr;gap:2rem}.fx-visi-text h2{font-size:1.65rem}}
@media(max-width:480px){.fx-visi{padding:3.5rem 0}.fx-visi-card{padding:1.25rem;flex-direction:column;gap:.75rem}}

/* Values grid */
.fx-values-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}
@media(max-width:968px){.fx-values-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.fx-values-grid{grid-template-columns:1fr}}
.fx-value-card{background:#fff;border-radius:16px;padding:2rem 1.5rem;text-align:center;border:1px solid #f1f5f9;transition:all .3s;position:relative}
.fx-value-card:hover{transform:translateY(-5px);box-shadow:0 16px 40px rgba(0,0,0,.07);border-color:#dbeafe}
.fx-value-num{width:36px;height:36px;border-radius:50%;background:linear-gradient(135deg,#1d4ed8,#10b981);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.85rem;font-family:'Plus Jakarta Sans',sans-serif;margin:0 auto 1rem}
.fx-value-card h3{font-size:1.1rem;font-weight:700;color:#0f172a;margin:0 0 .5rem}
.fx-value-card p{font-size:.88rem;color:#64748b;line-height:1.6;margin:0}

/* Team */
.fx-team-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:2rem;max-width:48rem;margin:0 auto}
@media(max-width:600px){.fx-team-grid{grid-template-columns:1fr}}
.fx-team-card{background:#fff;border-radius:18px;overflow:hidden;border:1px solid #f1f5f9;transition:all .3s}
.fx-team-card:hover{transform:translateY(-5px);box-shadow:0 16px 40px rgba(0,0,0,.07)}
.fx-team-img{aspect-ratio:4/3;overflow:hidden}
.fx-team-img img{width:100%;height:100%;object-fit:cover}
.fx-team-info{padding:1.25rem;text-align:center}
.fx-team-info h3{font-size:1.05rem;font-weight:700;color:#0f172a;margin:0}
.fx-team-info p{font-size:.8rem;color:#1d4ed8;font-weight:600;text-transform:uppercase;letter-spacing:.05em;margin:.25rem 0 0}
.fx-team-bio{padding:0 1.25rem 1.5rem;font-size:.85rem;color:#64748b;line-height:1.65;margin:0}

/* Shareholder */
.fx-shareholder{max-width:52rem;margin:0 auto}
.fx-shareholder-table{background:#fff;border:1px solid #f1f5f9;border-radius:14px;overflow:hidden;margin-bottom:1.5rem}
.fx-shareholder-row{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;border-bottom:1px solid #f1f5f9;font-size:.9rem;color:#475569}
.fx-shareholder-row:last-child{border-bottom:none}
.fx-shareholder-row-head{background:#f8fafc;font-weight:700;color:#0f172a;text-transform:uppercase;font-size:.78rem;letter-spacing:.05em}
.fx-shareholder-row strong{font-weight:700;color:#0f172a}
.fx-shareholder-row-total{background:#eff6ff;font-weight:700}
.fx-shareholder-cards{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem}
@media(max-width:600px){.fx-shareholder-cards{grid-template-columns:1fr}}
.fx-shareholder-card{background:#fff;border:1px solid #f1f5f9;border-radius:14px;padding:1.5rem;transition:all .25s}
.fx-shareholder-card:hover{box-shadow:0 8px 24px rgba(0,0,0,.04);border-color:#dbeafe}
.fx-shareholder-card h4{font-size:.95rem;font-weight:700;color:#0f172a;margin:0 0 .5rem}
.fx-shareholder-card p{font-size:.85rem;color:#64748b;line-height:1.65;margin:0}

/* Owner */
.fx-owner-card{display:grid;grid-template-columns:260px 1fr;gap:2.5rem;align-items:center;max-width:52rem;margin:0 auto;background:#fff;border:1px solid #f1f5f9;border-radius:20px;padding:2rem;transition:all .25s}
.fx-owner-card:hover{box-shadow:0 16px 40px rgba(0,0,0,.06)}
.fx-owner-img img{width:100%;border-radius:14px}
.fx-owner-info h3{font-size:1.25rem;font-weight:700;color:#0f172a;margin:0 0 .65rem}
.fx-owner-info p{font-size:.9rem;color:#64748b;line-height:1.7;margin:0 0 .65rem}
.fx-owner-info p:last-child{margin-bottom:0}
@media(max-width:600px){.fx-owner-card{grid-template-columns:1fr;text-align:center;gap:1.5rem}.fx-owner-img{max-width:200px;margin:0 auto}}

/* Report list */
.fx-report-list{max-width:48rem;margin:0 auto;display:flex;flex-direction:column;gap:1rem}
.fx-report-card{display:flex;align-items:center;gap:1.5rem;padding:1.5rem 1.75rem;background:#fff;border:1px solid #f1f5f9;border-radius:16px;transition:all .25s;position:relative;overflow:hidden}
.fx-report-card:hover{transform:translateY(-3px);box-shadow:0 12px 30px rgba(0,0,0,.06);border-color:#dbeafe}
.fx-report-year{width:64px;height:64px;border-radius:14px;background:linear-gradient(135deg,#1d4ed8,#2563eb);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:1.15rem;font-family:'Plus Jakarta Sans',sans-serif;flex-shrink:0}
.fx-report-info{flex:1}
.fx-report-info h3{font-size:1rem;font-weight:700;color:#0f172a;margin:0 0 .25rem}
.fx-report-info p{font-size:.82rem;color:#94a3b8;margin:0}
.fx-report-info p i{color:#ef4444;margin-right:.25rem}
@media(max-width:600px){.fx-report-card{flex-direction:column;text-align:center;gap:1rem}.fx-report-year{margin:0 auto}}

/* Team grid */
.fx-staff-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.25rem}
@media(max-width:968px){.fx-staff-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:768px){.fx-staff-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:480px){.fx-staff-grid{grid-template-columns:1fr;max-width:24rem;margin:0 auto}}
.fx-staff-card{background:#fff;border:1px solid #f1f5f9;border-radius:16px;overflow:hidden;transition:all .3s;position:relative}
.fx-staff-card:hover{transform:translateY(-5px);box-shadow:0 16px 40px rgba(0,0,0,.08);border-color:#dbeafe}
.fx-staff-photo{aspect-ratio:1;overflow:hidden;background:#f1f5f9}
.fx-staff-photo img{width:100%;height:100%;object-fit:cover;transition:transform .3s}
.fx-staff-card:hover .fx-staff-photo img{transform:scale(1.05)}
.fx-staff-info{padding:1.1rem 1.25rem 1.25rem}
.fx-staff-info h3{font-size:.92rem;font-weight:700;color:#0f172a;margin:0 0 .15rem;line-height:1.3}
.fx-staff-role{font-size:.76rem;font-weight:600;color:#1d4ed8;text-transform:uppercase;letter-spacing:.04em;margin:0 0 .5rem}
.fx-staff-bio{font-size:.78rem;color:#64748b;line-height:1.55;margin:0}

/* PDF modal frame */
.fx-pdf-frame{flex:1;overflow:hidden;background:#f8fafc}
.fx-pdf-frame iframe{width:100%;height:70vh;border:0;display:block}
@media(max-width:768px){.fx-pdf-frame iframe{height:60vh}}

/* FAQ page */
.fx-faq-search{max-width:36rem;margin:0 auto 2rem}
.fx-faq-search input{text-align:center}
.fx-faq-wrap{max-width:52rem;margin:0 auto}
.fx-faq-cat{font-size:.82rem;font-weight:700;color:#1d4ed8;text-transform:uppercase;letter-spacing:.08em;margin:2rem 0 .75rem;font-family:'Plus Jakarta Sans',sans-serif}
.fx-faq-cat:first-child{margin-top:0}
.fx-acc-a ol{padding-left:1.25rem;margin:.5rem 0}
.fx-acc-a ol li{margin-bottom:.4rem;font-size:.88rem}
.fx-acc-a ol li small{display:block;color:#94a3b8;font-size:.78rem;margin-top:.1rem}
.fx-acc-a ul{padding-left:1.25rem;margin:.5rem 0}
.fx-acc-a ul li{margin-bottom:.3rem;font-size:.88rem}
.fx-acc-a p{margin-bottom:.5rem}
.fx-acc-a p:last-child{margin-bottom:0}
.fx-acc-a em{color:#94a3b8}
.fx-acc-item.is-hidden{display:none}

/* Reset password page */
.fx-page-center{display:flex;align-items:center;justify-content:center;min-height:80vh;padding:7rem 0 3.5rem}
.fx-reset-card{max-width:26rem;margin:0 auto;background:#fff;border:1px solid #f1f5f9;border-radius:20px;overflow:hidden;box-shadow:0 20px 50px rgba(0,0,0,.06)}
.fx-reset-head{text-align:center;padding:2.5rem 2rem 1.5rem}
.fx-reset-icon{width:64px;height:64px;border-radius:16px;background:linear-gradient(135deg,#ef4444,#f43f5e);color:#fff;display:flex;align-items:center;justify-content:center;font-size:1.5rem;margin:0 auto 1.25rem}
.fx-reset-head h1{font-size:1.5rem;font-weight:800;color:#0f172a;margin:0 0 .4rem}
.fx-reset-head p{font-size:.9rem;color:#64748b;margin:0}
.fx-reset-body{padding:0 2rem 2.5rem}
.fx-alert{padding:1rem 1.25rem;border-radius:12px;margin-bottom:1.25rem;font-size:.88rem;display:flex;align-items:center;gap:.65rem}
.fx-alert-success{background:#d1fae5;color:#065f46;border:1px solid #a7f3d0}
.fx-alert-error{background:#fee2e2;color:#991b1b;border:1px solid #fecaca}
.fx-reset-redirect{text-align:center;font-size:.85rem;color:#64748b;margin-top:1rem}
.fx-pw-live{list-style:none;padding:0;margin:.65rem 0 0}
.fx-pw-live li{font-size:.78rem;margin-bottom:.3rem;color:#ef4444;transition:color .2s}
.fx-pw-live li::before{content:'\2716 '}
.fx-pw-live li.valid{color:#10b981}
.fx-pw-live li.valid::before{content:'\2714 '}
.fx-pw-match{font-size:.8rem;margin:.35rem 0 0;min-height:1.2em}
.fx-pw-ok{color:#10b981}
.fx-pw-no{color:#ef4444}

/* Password strength bar */
.fx-strength{margin-top:.65rem}
.fx-strength-bar{display:flex;gap:4px;margin-bottom:.35rem}
.fx-strength-bar span{flex:1;height:4px;border-radius:4px;background:#e2e8f0;transition:all .3s}
.fx-strength-bar span.active.weak{background:#ef4444}
.fx-strength-bar span.active.medium{background:#f59e0b}
.fx-strength-bar span.active.strong{background:#1d4ed8}
.fx-strength-bar span.active.full{background:#10b981}
.fx-strength small{font-size:.72rem;color:#94a3b8;font-weight:600}

/* Password rules live */
.fx-pw-live{list-style:none;padding:0;margin:.65rem 0 0;display:grid;grid-template-columns:1fr 1fr;gap:.3rem .75rem}
.fx-pw-live li{font-size:.78rem;color:#94a3b8;display:flex;align-items:center;gap:.4rem;transition:color .2s}
.fx-pw-live li i{font-size:.72rem;transition:color .2s}
.fx-pw-live li.valid{color:#10b981}
.fx-pw-live li.valid i{color:#10b981}

/* Password match */
.fx-pw-match{font-size:.8rem;margin:.35rem 0 0;min-height:1.4em;display:flex;align-items:center;gap:.35rem}
.fx-pw-ok{color:#10b981}
.fx-pw-no{color:#ef4444}

/* Legal page (layanan pengaduan) */
.fx-legal-card{background:#fff;border:1px solid #f1f5f9;border-radius:20px;padding:2.5rem;box-shadow:0 10px 30px rgba(0,0,0,.04)}
@media(max-width:768px){.fx-legal-card{padding:1.5rem}}
.fx-legal-body{max-width:50rem;margin:0 auto}
.fx-legal-intro{font-size:.95rem;color:#475569;line-height:1.8;margin:0 0 2rem;text-align:justify;padding:1.25rem;background:#f8fafc;border-radius:12px;border-left:4px solid #1d4ed8}
.fx-legal-h3{font-size:1.15rem;font-weight:800;color:#0f172a;margin:2.5rem 0 1rem;font-family:'Plus Jakarta Sans',sans-serif}
.fx-legal-p{font-size:.9rem;color:#475569;line-height:1.75;margin:0 0 .75rem;text-align:justify}
.fx-legal-list{padding-left:1.25rem;margin:1rem 0;color:#475569;font-size:.9rem;line-height:1.85}
.fx-legal-list li{margin-bottom:.5rem}
.fx-legal-list strong{color:#0f172a}
.fx-legal-list ol{margin:.5rem 0;padding-left:1.25rem}
.fx-legal-list ol li{font-size:.86rem;margin-bottom:.4rem;font-weight:400}
.fx-legal-list > li{margin-bottom:1.25rem;font-weight:600}
.fx-legal-list > li > h3{margin-bottom:.5rem}
.fx-legal-list p{font-size:.88rem;color:#475569;line-height:1.75;margin:.5rem 0;font-weight:400}
.fx-legal-contact{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-bottom:2rem}
@media(max-width:600px){.fx-legal-contact{grid-template-columns:1fr}}
.fx-legal-contact-card{display:flex;align-items:center;gap:.85rem;padding:1rem 1.25rem;background:#fff;border:1px solid #f1f5f9;border-radius:12px;transition:all .2s}
.fx-legal-contact-card:hover{border-color:#dbeafe;box-shadow:0 4px 16px rgba(29,78,216,.06)}
.fx-legal-contact-ico{width:40px;height:40px;border-radius:10px;background:linear-gradient(135deg,#eff6ff,#dbeafe);color:#1d4ed8;display:flex;align-items:center;justify-content:center;font-size:.95rem;flex-shrink:0}
.fx-legal-contact-card small{display:block;font-size:.7rem;color:#94a3b8;text-transform:uppercase;letter-spacing:.05em}
.fx-legal-contact-card strong{display:block;font-size:.85rem;font-weight:700;color:#0f172a}
.fx-sla-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin:1.25rem 0}
@media(max-width:600px){.fx-sla-grid{grid-template-columns:1fr}}
.fx-sla-card{background:#f8fafc;border:1px solid #f1f5f9;border-radius:14px;padding:1.25rem;transition:all .25s}
.fx-sla-card:hover{background:#eff6ff;border-color:#dbeafe;transform:translateY(-2px)}
.fx-sla-ico{width:36px;height:36px;border-radius:10px;background:linear-gradient(135deg,#1d4ed8,#2563eb);color:#fff;display:flex;align-items:center;justify-content:center;font-size:.85rem;margin-bottom:.75rem}
.fx-sla-card h4{font-size:.88rem;font-weight:700;color:#0f172a;margin:0 0 .25rem}
.fx-sla-card p{font-size:.8rem;color:#64748b;margin:0;line-height:1.55}
.fx-flow{display:flex;flex-direction:column;gap:.75rem;margin:1.25rem 0}
.fx-flow-step{display:flex;gap:1rem;align-items:flex-start;padding:1.1rem 1.25rem;background:#fff;border:1px solid #f1f5f9;border-radius:12px;transition:all .25s}
.fx-flow-step:hover{border-color:#dbeafe;transform:translateX(4px);box-shadow:0 4px 12px rgba(29,78,216,.04)}
.fx-flow-num{width:32px;height:32px;border-radius:50%;background:linear-gradient(135deg,#1d4ed8,#10b981);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.8rem;font-family:'Plus Jakarta Sans',sans-serif;flex-shrink:0}
.fx-flow-text strong{display:block;font-size:.9rem;font-weight:700;color:#0f172a;margin-bottom:.15rem}
.fx-flow-text p{font-size:.82rem;color:#64748b;margin:0;line-height:1.55}
.fx-dispute{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin:1.25rem 0}
@media(max-width:600px){.fx-dispute{grid-template-columns:1fr}}
.fx-dispute-card{display:flex;gap:.85rem;align-items:flex-start;padding:1.25rem;background:#fff;border:1px solid #f1f5f9;border-radius:14px;transition:all .25s}
.fx-dispute-card:hover{border-color:#dbeafe;box-shadow:0 4px 16px rgba(0,0,0,.04)}
.fx-dispute-card i{width:40px;height:40px;border-radius:10px;background:linear-gradient(135deg,#eff6ff,#dbeafe);color:#1d4ed8;display:flex;align-items:center;justify-content:center;font-size:.95rem;flex-shrink:0}
.fx-dispute-card strong{display:block;font-size:.9rem;font-weight:700;color:#0f172a;margin-bottom:.15rem}
.fx-dispute-card p{font-size:.82rem;color:#64748b;margin:0;line-height:1.55}

/* Contact page */
.fx-contact-page{position:relative;padding:7rem 0 4.5rem;overflow:hidden;min-height:80vh;display:flex;align-items:center}
.fx-contact-page-bg{position:absolute;inset:0;z-index:-1;background-size:cover;background-position:center;opacity:.15}
.fx-contact-page-inner{position:relative;z-index:1;width:100%}
.fx-contact-form-card{display:grid;grid-template-columns:.8fr 1.2fr;gap:0;max-width:48rem;margin:0 auto;background:#fff;border:1px solid #f1f5f9;border-radius:20px;overflow:hidden;box-shadow:0 20px 50px rgba(0,0,0,.06)}
@media(max-width:768px){.fx-contact-form-card{grid-template-columns:1fr}}
.fx-contact-info{padding:2.5rem 2rem;background:linear-gradient(135deg,#1d4ed8,#2563eb);color:#fff}
.fx-contact-info h3{font-size:1.25rem;font-weight:800;margin:0 0 .5rem}
.fx-contact-info>p{font-size:.88rem;color:rgba(255,255,255,.8);margin:0 0 1.75rem;line-height:1.6}
.fx-contact-info-list{display:flex;flex-direction:column;gap:.85rem}
.fx-contact-info-list a,.fx-contact-info-list span{display:flex;align-items:center;gap:.65rem;font-size:.85rem;color:rgba(255,255,255,.9);text-decoration:none;transition:color .2s}
.fx-contact-info-list a:hover{color:#fff}
.fx-contact-info-list i{width:32px;height:32px;border-radius:8px;background:rgba(255,255,255,.15);display:flex;align-items:center;justify-content:center;font-size:.82rem;flex-shrink:0}
.fx-contact-form{padding:2.5rem 2rem}
.fx-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
@media(max-width:480px){.fx-form-grid{grid-template-columns:1fr}.fx-contact-info,.fx-contact-form{padding:1.75rem 1.5rem}}
.fx-textarea{resize:vertical;min-height:100px;font-family:inherit;padding-left:1rem}

/* Event page */
.fx-event-year{font-size:1.5rem;font-weight:800;color:#0f172a;margin:2.5rem 0 1rem;font-family:'Plus Jakarta Sans',sans-serif;padding-left:.75rem;border-left:4px solid #1d4ed8}
.fx-event-year:first-of-type{margin-top:0}
.fx-event-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-bottom:1rem}
@media(max-width:968px){.fx-event-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.fx-event-grid{grid-template-columns:1fr}}
.fx-event-card{background:#fff;border:1px solid #f1f5f9;border-radius:14px;padding:1.25rem;transition:all .25s;position:relative;overflow:hidden}
.fx-event-card:hover{transform:translateY(-3px);box-shadow:0 12px 30px rgba(0,0,0,.06);border-color:#dbeafe}
.fx-event-date{font-size:.72rem;font-weight:600;color:#1d4ed8;text-transform:uppercase;letter-spacing:.05em;margin-bottom:.5rem;display:flex;align-items:center;gap:.35rem}
.fx-event-card h4{font-size:.92rem;font-weight:700;color:#0f172a;margin:0 0 .5rem;line-height:1.35}
.fx-event-loc{font-size:.8rem;color:#64748b;margin:0 0 .75rem;display:flex;align-items:center;gap:.35rem}
.fx-event-loc i{color:#ef4444}
.fx-event-link{font-size:.82rem;font-weight:600;color:#ef4444;text-decoration:none;display:inline-flex;align-items:center;gap:.35rem;transition:color .2s}
.fx-event-link:hover{color:#dc2626}
.fx-event-novideo{font-size:.78rem;color:#cbd5e1}

/* Activation page */
.fx-act-resend{text-align:center;margin-bottom:1.5rem}
.fx-act-countdown{font-size:.82rem;color:#64748b;margin:.65rem 0}
.fx-act-phone{font-size:.82rem;color:#64748b;margin:.65rem 0}
.fx-act-err{color:#ef4444;font-size:.82rem;font-weight:600;min-height:1.2em;margin-top:.5rem}
.fx-act-warning{font-size:.82rem;color:#f59e0b;font-weight:600;margin-top:.5rem}

/* ====================================================================
   AUTH LAYOUT — minimal (reset, new-password, activation)
   ==================================================================== */
.fx-auth{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:2rem;position:relative;overflow:hidden}
.fx-auth-bg{position:absolute;inset:0;z-index:-2;background:linear-gradient(160deg,#eff6ff,#dbeafe,#ecfdf5);background-size:300% 300%;animation:fxMesh 18s ease infinite}
.fx-auth-inner{position:relative;z-index:1;width:100%;max-width:28rem}
.fx-auth-logo{display:block;text-align:center;margin-bottom:2rem}
.fx-auth-logo img{height:36px;margin:0 auto;filter:none}
@media(max-width:480px){.fx-auth{padding:1.5rem}.fx-auth-logo img{height:30px}}

/* Auth card */
.fx-auth-card{background:rgba(255,255,255,.95);backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.6);border-radius:24px;box-shadow:0 25px 60px rgba(15,23,42,.1);overflow:hidden}
.fx-auth-head{text-align:center;padding:2.5rem 2rem 1rem}
.fx-auth-icon{width:64px;height:64px;border-radius:18px;display:flex;align-items:center;justify-content:center;font-size:1.5rem;color:#fff;margin:0 auto 1.25rem}
.fx-auth-icon-indigo{background:linear-gradient(135deg,#1d4ed8,#2563eb);box-shadow:0 8px 24px rgba(29,78,216,.3)}
.fx-auth-icon-red{background:linear-gradient(135deg,#ef4444,#f43f5e);box-shadow:0 8px 24px rgba(239,68,68,.3)}
.fx-auth-icon-green{background:linear-gradient(135deg,#10b981,#059669);box-shadow:0 8px 24px rgba(16,185,129,.3)}
.fx-auth-head h1{font-size:1.5rem;font-weight:800;color:#0f172a;margin:0 0 .4rem;letter-spacing:-.02em}
.fx-auth-head p{font-size:.9rem;color:#64748b;margin:0;line-height:1.6}
.fx-auth-body{padding:1rem 2rem 2.5rem}
.fx-auth-redirect{text-align:center;font-size:.85rem;color:#64748b;margin-top:1rem}
.fx-auth-back{display:block;text-align:center;margin-top:1.5rem;font-size:.85rem;color:#1d4ed8;font-weight:600;text-decoration:none;transition:color .2s}
.fx-auth-back:hover{color:#1e3a8a}

/* Auth success state */
.fx-auth-success{text-align:center;padding:1rem 0 .5rem}
.fx-auth-success-ico{width:72px;height:72px;border-radius:50%;background:linear-gradient(135deg,#10b981,#059669);color:#fff;display:flex;align-items:center;justify-content:center;font-size:2rem;margin:0 auto 1.25rem;box-shadow:0 12px 30px rgba(16,185,129,.3);animation:fxPop .4s cubic-bezier(.34,1.56,.64,1)}
@keyframes fxPop{from{transform:scale(0);opacity:0}to{transform:scale(1);opacity:1}}
.fx-auth-success h2{font-size:1.35rem;font-weight:800;color:#0f172a;margin:0 0 .4rem}
.fx-auth-success>p{font-size:.92rem;color:#64748b;margin:0 0 1.5rem;line-height:1.6}
.fx-auth-redirect-bar{height:4px;background:#f1f5f9;border-radius:4px;overflow:hidden;margin-bottom:.75rem}
.fx-auth-redirect-progress{height:100%;width:0;background:linear-gradient(90deg,#1d4ed8,#10b981);border-radius:4px;transition:width 1s linear}
.fx-auth-redirect{font-size:.8rem;color:#94a3b8;margin:0}

/* === Responsive Section Spacing === */
@media(max-width:768px){.fx-section{padding:3.75rem 0}.fx-h2{font-size:1.75rem}.fx-section-head{margin-bottom:2rem}.fx-section-head{max-width:100%}.fx-hero{padding:6.25rem 0 3.5rem}.fx-partners{padding:2rem 0}.fx-trust{padding:3.5rem 0}.fx-visi{padding:3.5rem 0}.fx-contact-page{padding:6rem 0 3.5rem}.fx-page-center{padding:6rem 0 3rem}}
@media(max-width:480px){.fx-section{padding:3rem 0}.fx-h2{font-size:1.5rem}.fx-section-head{margin-bottom:1.75rem}.fx-eyebrow{font-size:.68rem;padding:.3rem .85rem}.fx-hero{padding:5.75rem 0 3rem;min-height:auto}.fx-partners{padding:1.75rem 0}.fx-trust{padding:3rem 0}.fx-visi{padding:3rem 0}.fx-contact-page{padding:5.5rem 0 3rem}.fx-page-center{padding:5.5rem 0 2.5rem}}

/* === Responsive: modal auth, banner/pengumuman, recaptcha, OTP, password strength === */
@media(max-width:600px){
  .fv2-modal{padding:1rem}
  /* banner pengumuman jadi full-width di mobile */
  .fv2-modal-card.fv2-modal-banner{width:100%;max-width:100%}
  .fv2-modal-card.fv2-modal-pengumuman{width:100%;max-width:100%}
  .fv2-modal-head{padding:1rem 1.15rem}
  .fv2-modal-body{padding:1.15rem}
  .fv2-pengumuman-scroll{padding:1rem;font-size:.82rem;max-height:48vh}
  /* password rules jadi 1 kolom biar teks tidak terpotong */
  .fx-pw-live{grid-template-columns:1fr}
  /* cegah native <select> popup melenceng jauh di mobile: transform/blur pada modal jadi pemicu
     containing-block yang salah, jadi dimatikan di layar kecil */
  .fv2-modal-bg{backdrop-filter:none;-webkit-backdrop-filter:none}
  .fv2-modal-card{animation:none}
}
/* layar sempit: skalakan reCAPTCHA & perkecil OTP agar tidak meluber */
@media(max-width:380px){
  #login-recaptcha{transform:scale(.85);transform-origin:top left;height:66px;overflow:hidden}
  .otp-wrapper{gap:.35rem}
  .otp-digit{width:2.35rem;height:2.5rem;font-size:1.1rem}
}
@media(max-width:330px){
  #login-recaptcha{transform:scale(.75)}
  .otp-digit{width:2.1rem;height:2.35rem}
}

/* ====================================================================
   INTERAKSI TAMBAHAN (dipakai oleh blok script "Interaksi tambahan")
   ==================================================================== */
/* Ripple tombol */
.fx-ripple{position:absolute;border-radius:50%;background:rgba(255,255,255,.45);transform:scale(0);animation:fx-ripple .6s ease-out;pointer-events:none;z-index:1}
.fx-btn-outline .fx-ripple,.fv2-btn-ghost .fx-ripple{background:rgba(29,78,216,.18)}
@keyframes fx-ripple{to{transform:scale(2.2);opacity:0}}

/* Timeline: langkah aktif menyala saat masuk viewport */
.fx-tl-item.is-active .fx-tl-dot{border-color:#1d4ed8;box-shadow:0 0 0 8px rgba(29,78,216,.10)}
.fx-tl-item.is-active .fx-tl-card{border-color:#dbeafe;box-shadow:var(--fx-card-shadow-hover)}
.fx-tl-item.is-active .fx-tl-ico{transform:scale(1.08)}

/* Tombol kembali ke atas */
.fx-to-top{position:fixed;left:1.5rem;bottom:1.5rem;z-index:90;width:46px;height:46px;border-radius:50%;border:1px solid #e2e8f0;background:#fff;color:#1d4ed8;font-size:1rem;cursor:pointer;box-shadow:0 10px 26px rgba(15,23,42,.14);display:flex;align-items:center;justify-content:center;opacity:0;visibility:hidden;transform:translateY(12px);transition:opacity .3s,transform .3s,visibility .3s,background .2s,color .2s}
.fx-to-top.is-visible{opacity:1;visibility:visible;transform:translateY(0)}
.fx-to-top:hover{background:#1d4ed8;color:#fff;border-color:#1d4ed8}
@media(max-width:480px){.fx-to-top{left:1rem;bottom:1rem;width:42px;height:42px}}

/* Feedback "tersalin" pada kartu kontak */
.fx-contact-card{position:relative}
.fx-contact-card.is-copied::after{content:'Tersalin!';position:absolute;top:.5rem;right:.75rem;font-size:.68rem;font-weight:700;color:#059669;background:#ecfdf5;border:1px solid #a7f3d0;border-radius:999px;padding:.15rem .5rem;animation:fx-fade-in .2s ease-out}
@keyframes fx-fade-in{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}

@media(prefers-reduced-motion:reduce){
    .fx-reveal{opacity:1;transform:none;transition:none}
    .fx-to-top{transition:none}
}

/* Typewriter di headline hero */
.fx-type{color:#0f172a}
.fx-caret{display:inline-block;width:3px;height:.95em;margin-left:.06em;vertical-align:-.08em;background:#1d4ed8;border-radius:2px;animation:fx-caret 1s step-end infinite}
@keyframes fx-caret{0%,100%{opacity:1}50%{opacity:0}}

/* Spotlight yang mengikuti kursor di hero */
.fx-hero-spot{position:absolute;inset:0;z-index:-1;pointer-events:none;opacity:0;transition:opacity .35s;background:radial-gradient(360px circle at var(--sx,50%) var(--sy,50%),rgba(29,78,216,.10),transparent 65%)}

/* Garis timeline yang terisi mengikuti scroll.
   Track pakai warna solid (bukan opacity) supaya fill di dalamnya tidak ikut redup. */
.fx-timeline-line,.fx-timeline-h .fx-timeline-line{background:#e2e8f0;opacity:1}
.fx-timeline-fill{position:absolute;inset:0;border-radius:inherit;background:linear-gradient(180deg,#1d4ed8,#10b981,#f59e0b);transform-origin:top;transform:scaleY(var(--p,0));transition:transform .15s linear}
.fx-timeline-h .fx-timeline-fill{background:linear-gradient(90deg,#1d4ed8,#10b981,#f59e0b);transform-origin:left;transform:scaleX(var(--p,0))}
@media(max-width:900px){.fx-timeline-h .fx-timeline-fill{background:linear-gradient(180deg,#1d4ed8,#10b981,#f59e0b);transform-origin:top;transform:scaleY(var(--p,0))}}

@media(prefers-reduced-motion:reduce){.fx-caret{animation:none;opacity:0}.fx-hero-spot{display:none}.fx-timeline-fill{transform:none}}
