:root{--purple:#985694;--navy:#294769;--teal:#269493;--green:#A1BC5F;--yellow:#FFDD46;--salmon:#F4605E;--red:#F14948;--dark:#0c0c12;--dark2:#12121a;--dark3:#1a1a25;--text:#eeeef5;--muted:#7878a0;--fd:'IM Fell DW Pica',serif;--fb:'Quicksand',sans-serif}
    *,*::before,*::after{margin:0;padding:0;box-sizing:border-box}
    html{scroll-behavior:smooth;overflow-x:hidden}
    body{font-family:var(--fb);background:var(--dark);color:var(--text);overflow-x:hidden;cursor:none}
    #cur{width:22px;height:22px;border:2px solid var(--purple);border-radius:50%;position:fixed;pointer-events:none;z-index:9999;transition:transform .15s,border-color .2s}
    #curd{width:6px;height:6px;background:var(--yellow);border-radius:50%;position:fixed;pointer-events:none;z-index:9999;transform:translate(-50%,-50%)}
    .page{display:none;min-height:100vh;animation:pageFade .4s ease}
    .page.active{display:block}
    @keyframes pageFade{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
    /* NAV */
    nav{position:fixed;top:0;left:0;right:0;z-index:1000;display:flex;align-items:center;justify-content:space-between;padding:1.1rem 2.5rem;background:rgba(12,12,18,.85);backdrop-filter:blur(16px);border-bottom:1px solid rgba(152,86,148,.15);transition:padding .3s,box-shadow .3s}
    nav.scrolled{padding:.7rem 2.5rem;box-shadow:0 4px 30px rgba(0,0,0,.4)}
    .logo{display:flex;align-items:center;gap:.75rem;cursor:pointer;text-decoration:none}
    .logo-text{font-family:var(--fd);font-size:1.65rem;color:var(--text);letter-spacing:3px}
    .logo-text em{color:var(--purple);font-style:normal}
    .nav-links{display:flex;align-items:center;gap:1.75rem;list-style:none}
    .nav-links a{color:var(--muted);text-decoration:none;font-size:.875rem;font-weight:600;cursor:pointer;transition:color .2s}
    .nav-links a:hover{color:var(--yellow)}
    .nav-cta{background:var(--purple)!important;color:#fff!important;padding:.55rem 1.35rem!important;border-radius:6px!important;transition:background .2s!important}
    .nav-cta:hover{background:var(--teal)!important}
    .hamburger{display:none;flex-direction:column;gap:5px;cursor:pointer}
    .hamburger span{width:24px;height:2px;background:var(--text);display:block;transition:.3s}
    /* MOBILE */
    #mMenu{display:none;position:fixed;inset:0;background:rgba(12,12,18,.97);z-index:998;flex-direction:column;align-items:center;justify-content:center;gap:2.5rem}
    #mMenu.open{display:flex}
    #mMenu a{font-family:var(--fd);font-size:2rem;color:var(--text);text-decoration:none;cursor:pointer;transition:color .2s}
    #mMenu a:hover{color:var(--yellow)}
    #mClose{position:absolute;top:1.5rem;right:2rem;font-size:2rem;background:none;border:none;color:var(--text);cursor:pointer}
    /* HERO */
    #hero{min-height:100vh;display:flex;align-items:center;position:relative;overflow:hidden;padding-top:80px}
    .hero-bg{position:absolute;inset:0;background:radial-gradient(ellipse 60% 55% at 70% 50%,rgba(152,86,148,.18) 0%,transparent 70%),radial-gradient(ellipse 40% 50% at 15% 80%,rgba(38,148,147,.12) 0%,transparent 60%),var(--dark)}
    .hero-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(152,86,148,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(152,86,148,.04) 1px,transparent 1px);background-size:55px 55px}
    #particles{position:absolute;inset:0;pointer-events:none;overflow:hidden}
    .pt{position:absolute;opacity:.1;animation:ptFloat linear infinite;pointer-events:none;color:var(--purple)}
    @keyframes ptFloat{0%{transform:translateY(110vh) rotate(0deg);opacity:0}8%{opacity:.1}92%{opacity:.1}100%{transform:translateY(-80px) rotate(360deg);opacity:0}}
    .hero-wrap{position:relative;z-index:2;max-width:1280px;width:100%;margin:0 auto;padding:2rem 2.5rem;display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:center}
    .hero-tag{display:inline-flex;align-items:center;gap:.5rem;background:rgba(152,86,148,.14);border:1px solid rgba(152,86,148,.35);padding:.4rem 1.1rem;border-radius:100px;font-size:.75rem;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:var(--purple);margin-bottom:1.5rem;animation:fadeUp .6s ease both}
    .hero-h1{font-family:var(--fd);font-size:clamp(2.6rem,5vw,4.2rem);line-height:1.08;margin-bottom:1.5rem;animation:fadeUp .6s .15s ease both}
    .tw-target{color:var(--yellow);display:block;border-right:3px solid var(--yellow);padding-right:4px;animation:blink .75s step-end infinite}
    @keyframes blink{from,to{border-color:transparent}50%{border-color:var(--yellow)}}
    .hero-sub{font-size:1.05rem;color:var(--muted);line-height:1.75;max-width:500px;margin-bottom:2.5rem;animation:fadeUp .6s .3s ease both}
    .hero-sub strong{color:var(--teal)}
    .hero-actions{display:flex;gap:1rem;flex-wrap:wrap;animation:fadeUp .6s .45s ease both}
    .hero-stats{display:flex;gap:2.5rem;margin-top:3rem;padding-top:2rem;border-top:1px solid rgba(255,255,255,.05);animation:fadeUp .6s .6s ease both}
    .stat-n{font-family:var(--fd);font-size:1.9rem;color:var(--yellow);display:block}
    .stat-l{font-size:.72rem;color:var(--muted);text-transform:uppercase;letter-spacing:1.5px}
    /* MASCOT */
    .hero-mascot{display:flex;align-items:center;justify-content:center;position:relative;animation:fadeRight .8s .2s ease both}
    .mascot-glow{position:absolute;width:min(320px,80vw);height:min(320px,80vw);background:radial-gradient(circle,rgba(152,86,148,.28) 0%,transparent 70%);border-radius:50%;animation:gPulse 3.5s ease-in-out infinite}
    @keyframes gPulse{0%,100%{transform:scale(1);opacity:.7}50%{transform:scale(1.12);opacity:1}}
    .mascot-svg{width:290px;height:290px;max-width:80vw;max-height:80vw;object-fit:contain;animation:mFloat 4.5s ease-in-out infinite;filter:drop-shadow(0 24px 48px rgba(152,86,148,.45))}
    @keyframes mFloat{0%,100%{transform:translateY(0) rotate(-2deg)}50%{transform:translateY(-22px) rotate(2.5deg)}}
    /* BUTTONS */
    .btn-p{display:inline-flex;align-items:center;gap:.55rem;background:var(--purple);color:#fff;padding:.9rem 2rem;border-radius:7px;font-family:var(--fb);font-weight:700;font-size:1rem;text-decoration:none;border:none;cursor:pointer;transition:all .3s;position:relative;overflow:hidden}
    .btn-p::after{content:'';position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.14),transparent);transition:left .5s}
    .btn-p:hover::after{left:100%}
    .btn-p:hover{background:var(--teal);transform:translateY(-2px);box-shadow:0 10px 28px rgba(152,86,148,.35)}
    .btn-s{display:inline-flex;align-items:center;gap:.55rem;background:transparent;color:var(--text);padding:.9rem 2rem;border-radius:7px;font-family:var(--fb);font-weight:600;font-size:1rem;text-decoration:none;border:1px solid rgba(255,255,255,.13);cursor:pointer;transition:all .3s}
    .btn-s:hover{border-color:var(--purple);color:var(--purple);transform:translateY(-2px)}
    .btn-full{display:block;text-align:center;width:100%;justify-content:center}
    /* TICKER */
    .ticker-wrap{background:var(--dark2);padding:1.4rem 0;overflow:hidden;border-bottom:1px solid rgba(255,255,255,.04)}
    .ticker-inner{display:flex;gap:3rem;white-space:nowrap;animation:tick 22s linear infinite;width:max-content}
    .ticker-inner span{font-size:.83rem;color:var(--muted);display:flex;align-items:center;gap:.5rem}
    .ticker-inner span i{color:var(--purple)}
    .tsep{color:var(--purple);opacity:.4}
    @keyframes tick{0%{transform:translateX(0)}100%{transform:translateX(-50%)}}
    /* SECTIONS */
    .sec{padding:6rem 2.5rem;max-width:1280px;margin:0 auto}
    .sec-tag{display:inline-block;font-size:.72rem;font-weight:700;letter-spacing:3px;text-transform:uppercase;color:var(--teal);margin-bottom:.9rem}
    .sec-h{font-family:var(--fd);font-size:clamp(1.9rem,4vw,3rem);line-height:1.15;margin-bottom:1rem}
    .sec-sub{color:var(--muted);font-size:1rem;line-height:1.75;max-width:580px;margin-bottom:3rem}
    .sep{width:100%;height:1px;background:linear-gradient(90deg,transparent,rgba(152,86,148,.35),transparent)}
    .reveal{opacity:0;transform:translateY(28px);transition:opacity .65s ease,transform .65s ease}
    .reveal.vis{opacity:1;transform:translateY(0)}
    /* ICON BOX */
    .ibox{width:54px;height:54px;border-radius:14px;display:flex;align-items:center;justify-content:center;font-size:1.4rem;margin-bottom:1.2rem;flex-shrink:0}
    /* FEATURES */
    .feat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.4rem}
    .feat-card{background:var(--dark2);border:1px solid rgba(255,255,255,.06);border-radius:16px;padding:2rem;transition:all .3s}
    .feat-card:hover{transform:translateY(-5px);border-color:rgba(152,86,148,.35);box-shadow:0 16px 48px rgba(0,0,0,.4)}
    .feat-card h3{font-family:var(--fd);font-size:1.15rem;margin-bottom:.65rem}
    .feat-card p{color:var(--muted);font-size:.86rem;line-height:1.7}
    /* STEPS */
    .steps{display:grid;gap:0;position:relative}
    .steps::before{content:'';position:absolute;left:31px;top:44px;bottom:44px;width:2px;background:linear-gradient(180deg,var(--purple),var(--teal),var(--green),var(--yellow))}
    .step{display:grid;grid-template-columns:64px 1fr;gap:2rem;padding:2.2rem 0}
    .step-n{width:62px;height:62px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:var(--fd);font-size:1.3rem;font-weight:bold;position:relative;z-index:2;flex-shrink:0}
    .step-body{padding-top:.4rem}
    .sibox{width:48px;height:48px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:1.3rem;margin-bottom:.65rem}
    .step h3{font-family:var(--fd);font-size:1.35rem;margin-bottom:.65rem}
    .step p{color:var(--muted);line-height:1.75;font-size:.9rem}
    /* PACKAGES */
    .pkg-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-top:3rem}
    .pkg{background:var(--dark2);border:1px solid rgba(255,255,255,.06);border-radius:16px;padding:2.4rem 2rem;position:relative;overflow:hidden;transition:all .35s}
    .pkg:hover{transform:translateY(-8px);box-shadow:0 24px 64px rgba(0,0,0,.45)}
    .pkg.hot{border-color:var(--purple);background:linear-gradient(145deg,rgba(152,86,148,.1),var(--dark2))}
    .pkg-stripe{position:absolute;top:0;left:0;right:0;height:3px;border-radius:16px 16px 0 0}
    .pkg-badge{position:absolute;top:1.5rem;right:1.5rem;background:var(--yellow);color:var(--dark);padding:.28rem .8rem;border-radius:100px;font-size:.68rem;font-weight:700;letter-spacing:1px;text-transform:uppercase}
    .pkg-ibox{width:64px;height:64px;border-radius:16px;display:flex;align-items:center;justify-content:center;font-size:1.8rem;margin-bottom:1.4rem}
    .pkg-tag{font-size:.68rem;letter-spacing:3px;text-transform:uppercase;color:var(--muted);margin-bottom:.4rem}
    .pkg-name{font-family:var(--fd);font-size:1.45rem;margin-bottom:.4rem}
    .pkg-desc{color:var(--muted);font-size:.84rem;line-height:1.65;margin-bottom:1.8rem;padding-bottom:1.8rem;border-bottom:1px solid rgba(255,255,255,.06)}
    .pkg-list{list-style:none;margin-bottom:2rem}
    .pkg-list li{display:flex;align-items:flex-start;gap:.7rem;font-size:.84rem;margin-bottom:.7rem;color:var(--muted)}
    .ck{font-size:.95rem;flex-shrink:0;margin-top:1px}
    /* ABOUT */
    .about-grid{display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:start}
    .about-story p{color:var(--muted);line-height:1.8;margin-bottom:1.4rem}
    .about-quote{margin-top:2rem;padding:1.25rem 1.5rem;background:rgba(152,86,148,.08);border-left:3px solid var(--purple);border-radius:0 8px 8px 0;font-style:italic;color:var(--text);font-size:.95rem;line-height:1.7}
    .team-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin-top:2.5rem;max-width:680px;margin-left:auto;margin-right:auto}
    .team-card{background:var(--dark2);border:1px solid rgba(255,255,255,.06);border-radius:12px;padding:2rem;text-align:center;transition:all .3s}
    .team-card:hover{border-color:var(--purple);transform:translateY(-4px)}
    .team-av{width:76px;height:76px;border-radius:50%;margin:0 auto 1rem;display:flex;align-items:center;justify-content:center;font-size:1.8rem}
    .team-name{font-family:var(--fd);font-size:1.05rem;margin-bottom:.25rem}
    .team-role{font-size:.72rem;color:var(--teal);letter-spacing:1.5px;text-transform:uppercase;margin-bottom:.65rem}
    .team-bio{font-size:.83rem;color:var(--muted);line-height:1.65}
    /* CTA BAND */
    .cta-band{background:linear-gradient(135deg,rgba(152,86,148,.2),rgba(38,148,147,.1));border:1px solid rgba(152,86,148,.3);border-radius:24px;padding:5rem 3rem;text-align:center;position:relative;overflow:hidden}
    .cta-band h2{font-family:var(--fd);font-size:clamp(2rem,4vw,3rem);margin-bottom:1rem}
    .cta-band p{color:var(--muted);font-size:1.05rem;max-width:480px;margin:0 auto 2.5rem;line-height:1.7}
    /* BLOG */
    @media(max-width:900px){.feat-grid{grid-template-columns:1fr}}
    .blog-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.75rem;margin-top:3rem}
    .blog-card{background:var(--dark2);border:1px solid rgba(255,255,255,.06);border-radius:16px;overflow:hidden;transition:all .35s;cursor:pointer}
    .blog-card:hover{transform:translateY(-6px);border-color:rgba(152,86,148,.35);box-shadow:0 20px 56px rgba(0,0,0,.45)}
    .blog-thumb{height:180px;display:flex;align-items:center;justify-content:center;font-size:4rem;position:relative}
    .blog-tag-badge{position:absolute;top:1rem;left:1rem;background:rgba(152,86,148,.85);color:#fff;padding:.28rem .8rem;border-radius:100px;font-size:.7rem;font-weight:700;letter-spacing:1px;text-transform:uppercase}
    .blog-body{padding:1.5rem}
    .blog-date{font-size:.75rem;color:var(--muted);letter-spacing:1px;text-transform:uppercase;margin-bottom:.65rem}
    .blog-title{font-family:var(--fd);font-size:1.15rem;line-height:1.35;margin-bottom:.75rem}
    .blog-excerpt{font-size:.84rem;color:var(--muted);line-height:1.7;margin-bottom:1.2rem}
    .blog-read{font-size:.82rem;font-weight:700;color:var(--teal);letter-spacing:.5px;text-transform:uppercase;display:inline-flex;align-items:center;gap:.4rem}
    /* POST */
    .post-content{max-width:760px;margin:0 auto;padding:9rem 2.5rem 4rem}
    .post-content h1{font-family:var(--fd);font-size:clamp(2rem,4vw,3rem);line-height:1.15;margin-bottom:1rem}
    .post-meta{display:flex;gap:1.5rem;color:var(--muted);font-size:.82rem;margin-bottom:2.5rem;padding-bottom:2rem;border-bottom:1px solid rgba(255,255,255,.06)}
    .post-content h2{font-family:var(--fd);font-size:1.5rem;margin:2.5rem 0 1rem;color:var(--purple)}
    .post-content p{color:var(--muted);line-height:1.85;margin-bottom:1.25rem;font-size:.95rem}
    .post-content ul{padding-left:1.5rem;margin-bottom:1.25rem}
    .post-content li{color:var(--muted);line-height:1.8;margin-bottom:.65rem;font-size:.95rem}
    .post-content strong{color:var(--text)}
    /* CONTACT */
    .contact-grid{display:grid;grid-template-columns:1fr 1.5fr;gap:4rem;align-items:start}
    .c-detail{display:flex;align-items:center;gap:1rem;color:var(--muted);font-size:.9rem;margin-bottom:.85rem}
    .c-detail i{font-size:1.1rem;color:var(--purple);width:20px;text-align:center}
    .cform{display:flex;flex-direction:column;gap:1.2rem}
    .fg{display:flex;flex-direction:column;gap:.45rem}
    .fg label{font-size:.83rem;font-weight:700;color:var(--muted);letter-spacing:.5px}
    .fg input,.fg textarea,.fg select{background:var(--dark2);border:1px solid rgba(255,255,255,.08);border-radius:8px;padding:.85rem 1rem;color:var(--text);font-family:var(--fb);font-size:.93rem;outline:none;transition:border-color .2s}
    .fg input:focus,.fg textarea:focus,.fg select:focus{border-color:var(--purple)}
    .fg select option{background:var(--dark2)}
    .fg textarea{resize:vertical;min-height:110px}
    .habeas{display:flex;flex-direction:row!important;align-items:flex-start;gap:.85rem}
    .habeas input[type="checkbox"]{width:18px;height:18px;min-width:18px;margin-top:2px;accent-color:var(--purple);cursor:pointer;flex-shrink:0}
    .habeas label{font-size:.82rem;line-height:1.65;color:var(--muted)}
    .habeas label a{color:var(--purple);cursor:pointer;text-decoration:none}
    .habeas label a:hover{text-decoration:underline}
    /* LEGAL */
    .legal{max-width:820px;margin:0 auto;padding:9rem 2.5rem 5rem}
    .legal h1{font-family:var(--fd);font-size:2.6rem;margin-bottom:.4rem}
    .ldate{color:var(--muted);font-size:.83rem;margin-bottom:3rem;display:block}
    .legal h2{font-family:var(--fd);font-size:1.35rem;margin:2.5rem 0 .9rem;color:var(--purple)}
    .legal p,.legal li{color:var(--muted);line-height:1.85;margin-bottom:1rem;font-size:.93rem}
    .legal ul{padding-left:1.5rem}
    /* FOOTER */
    footer{background:var(--dark2);border-top:1px solid rgba(255,255,255,.04);padding:4rem 2.5rem 2rem}
    .footer-inner{max-width:1280px;margin:0 auto}
    .footer-top{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:3rem;margin-bottom:3rem}
    .footer-brand p{color:var(--muted);font-size:.84rem;line-height:1.7;margin-top:.9rem;max-width:280px}
    .footer-col h4{font-size:.72rem;letter-spacing:2.5px;text-transform:uppercase;color:var(--text);margin-bottom:1.2rem}
    .footer-col a{display:block;color:var(--muted);text-decoration:none;font-size:.84rem;margin-bottom:.7rem;cursor:pointer;transition:color .2s}
    .footer-col a:hover{color:var(--yellow)}
    .footer-bot{border-top:1px solid rgba(255,255,255,.05);padding-top:1.8rem;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem}
    .footer-bot p{color:var(--muted);font-size:.8rem}
    .footer-bot p span{color:var(--purple)}
    .socials{display:flex;gap:.65rem;margin-top:1.25rem}
    .soc{width:38px;height:38px;border-radius:9px;background:rgba(255,255,255,.05);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .25s;text-decoration:none;color:var(--text);font-size:1rem}
    .soc:hover{transform:translateY(-3px)}
    .soc.ig:hover{background:linear-gradient(45deg,#f09433,#e6683c,#dc2743,#cc2366,#bc1888)}
    .soc.tt:hover{background:#010101;color:#69C9D0}
    .soc.li:hover{background:#0A66C2}
    .soc.fb:hover{background:#1877F2}
    .soc.yt:hover{background:#FF0000}
    .soc.xw:hover{background:#000}
    .soc.th:hover{background:#000}
    /* ANIMS */
    @keyframes fadeUp{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}
    @keyframes fadeRight{from{opacity:0;transform:translateX(30px)}to{opacity:1;transform:translateX(0)}}
    /* RESPONSIVE */
    @media(max-width:900px){
      .nav-links{display:none}.hamburger{display:flex}
      .hero-wrap{grid-template-columns:1fr;text-align:center;padding:1.5rem;overflow:hidden}
      .hero-text{width:100%;overflow:hidden}
      .hero-mascot{order:-1}.hero-sub,.hero-actions{margin-left:auto;margin-right:auto}
      .hero-actions{justify-content:center;flex-direction:column;align-items:center}
      .hero-actions .btn-p,.hero-actions .btn-s{width:100%;justify-content:center}
      .hero-stats{justify-content:center;gap:1rem;flex-wrap:wrap}
      .hero-h1{height:auto;overflow:visible;font-size:clamp(2rem,7vw,3rem)}
      .tw-target{white-space:normal;display:inline}
      .hero-sub{min-height:auto;font-size:.95rem}
      .hero-tag{font-size:.65rem;white-space:normal;text-align:center}
      .stat-n{font-size:1.1rem;word-break:break-word}
      .stat-l{font-size:.62rem}
      .mascot-svg{width:140px;height:140px;max-width:50vw;max-height:50vw}
      .mascot-glow{width:180px;height:180px}
      .ticker-wrap{overflow:hidden}
      .feat-grid{grid-template-columns:1fr}
      .pkg-grid{grid-template-columns:1fr}.about-grid{grid-template-columns:1fr;gap:3rem}
      .team-grid{grid-template-columns:1fr;max-width:340px}.contact-grid{grid-template-columns:1fr}
      .footer-top{grid-template-columns:1fr 1fr}
      .steps::before{display:none}.step{grid-template-columns:1fr}
      .blog-grid{grid-template-columns:1fr}
      .sec{padding:4rem 1.25rem}
      .cta-band{padding:3rem 1.5rem}
    }
    @media(max-width:480px){
      .footer-top{grid-template-columns:1fr}
      nav{padding:.9rem 1.25rem}
      .mascot-svg{width:120px;height:120px}
      .hero-stats{gap:.75rem}
    }