:root{--c-primary:#24065b;--c-primary-dark:#1a0444;--c-primary-light:#3a1580;--c-primary-soft:#e6dcf5;--c-primary-subtle:#d9cfe9;--c-accent-yellow:#ffca06;--c-accent-orange:#ff6a00;--c-accent-red:#e8062a;--c-bg-page:#fbf9f4;--c-bg-surface:#ffffff;--c-bg-warm:#fff6d6;--c-bg-note:#fff3b8;--c-text-main:#201631;--c-text-muted:#5b5068;--c-text-subtle:#6b5f7c;--c-border-subtle:#ddd5e7;--c-border-dark:#24065b;--shadow-offset:4px 4px 0 #ff6a00;--shadow-offset-yellow:6px 6px 0 #ffca06;--shadow-offset-purple:8px 8px 0 #3a1580;--font-serif:"Fraunces",Georgia,serif;--font-sans:"Plus Jakarta Sans",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;--font-hand:"Caveat",cursive,sans-serif}*,:after,:before{box-sizing:border-box}html{scroll-behavior:smooth;font-size:16px}body{margin:0;background-color:var(--c-bg-page);color:var(--c-text-main);font-family:var(--font-sans);line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden}a{color:var(--c-primary);text-decoration:none;transition:color .2s ease}a:hover{color:#4a1fa0}button{font-family:inherit}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--c-accent-yellow);outline-offset:3px}@keyframes rise{0%{opacity:0;transform:translateY(28px)}to{opacity:1;transform:none}}@keyframes draw{0%{stroke-dashoffset:420}to{stroke-dashoffset:0}}@keyframes bob{0%,to{transform:translateY(0) rotate(0deg)}50%{transform:translateY(-14px) rotate(4deg)}}@keyframes bob2{0%,to{transform:translateY(0) rotate(0deg)}50%{transform:translateY(-12px) rotate(-5deg)}}@keyframes marquee{0%{transform:translateX(0)}to{transform:translateX(-50%)}}@keyframes grow{0%{transform:scaleY(0)}to{transform:scaleY(1)}}@keyframes pop{0%{transform:scale(.4);opacity:0}70%{transform:scale(1.12);opacity:1}to{transform:scale(1)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes sheet{0%{opacity:0;transform:translateY(24px) scale(.97)}to{opacity:1;transform:none}}@keyframes slideDown{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}@keyframes wiggle{0%,to{transform:rotate(-2deg)}50%{transform:rotate(1.5deg)}}@keyframes pulseGlow{0%,to{opacity:.15;transform:scale(1)}50%{opacity:.28;transform:scale(1.05)}}.rise{animation:rise .85s cubic-bezier(.2,.7,.2,1) both}.d1{animation-delay:.1s}.d2{animation-delay:.25s}.d3{animation-delay:.4s}.d4{animation-delay:.55s}.d5{animation-delay:.75s}.d6{animation-delay:.95s}.draw path{stroke-dasharray:420;animation:draw 1.4s cubic-bezier(.6,0,.2,1) .8s both}.bob{animation:bob 7s ease-in-out infinite}.bob2{animation:bob2 9s ease-in-out 1.5s infinite}.track{display:flex;width:max-content;animation:marquee 36s linear infinite}.marquee-container:hover .track{animation-play-state:paused}.grow{transform-origin:top;animation:grow .6s cubic-bezier(.6,0,.2,1) both}.pop{animation:pop .6s cubic-bezier(.2,.7,.2,1) both}.wiggle{animation:wiggle 4s ease-in-out infinite;transform-origin:left center}.fade{animation:fadeIn .25s ease both}.sheet{animation:sheet .35s cubic-bezier(.2,.7,.2,1) both}.drop{animation:slideDown .3s ease both}.lift{transition:transform .3s cubic-bezier(.2,.7,.2,1),box-shadow .3s ease}.lift:hover{transform:translateY(-6px) rotate(-.3deg);box-shadow:0 20px 36px -20px rgba(36,6,91,.4)}.btn-primary{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:52px;padding:0 24px;border-radius:8px;background-color:var(--c-accent-yellow);color:var(--c-primary);font-weight:700;font-size:15px;border:none;cursor:pointer;text-decoration:none;box-shadow:4px 4px 0 var(--c-accent-orange);transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease}.btn-primary:hover{transform:translateY(-2px);box-shadow:5px 5px 0 var(--c-accent-orange);background-color:#ffd428;color:var(--c-primary)}.btn-primary svg{transition:transform .25s ease}.btn-primary:hover svg{transform:translateX(4px)}.btn-dark{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:50px;padding:0 22px;border-radius:8px;background-color:var(--c-primary);color:#ffffff;font-weight:700;font-size:15px;border:none;cursor:pointer;text-decoration:none;box-shadow:4px 4px 0 var(--c-accent-yellow);transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease}.btn-dark:hover{transform:translateY(-2px);box-shadow:5px 5px 0 var(--c-accent-yellow);background-color:#310a75;color:#ffffff}.btn-dark svg{transition:transform .25s ease}.btn-dark:hover svg{transform:translateX(4px)}.btn-outline{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:0 18px;border-radius:8px;background:transparent;color:#ffffff;font-weight:600;font-size:14px;border:1.5px solid rgba(255,202,6,.7);cursor:pointer;text-decoration:none;transition:all .2s ease}.btn-outline:hover{background:rgba(255,202,6,.15);color:var(--c-accent-yellow);border-color:var(--c-accent-yellow)}.hex-badge{-webkit-clip-path:polygon(50% 0,100% 25%,100% 75%,50% 100%,0 75%,0 25%);clip-path:polygon(50% 0,100% 25%,100% 75%,50% 100%,0 75%,0 25%);display:inline-block;flex:none}.nav-link{position:relative;color:var(--c-primary-soft);text-decoration:none;font-size:15px;font-weight:500;padding:4px 0;transition:color .2s ease}.nav-link:hover{color:#ffffff}.nav-link:after{content:"";position:absolute;left:0;right:0;bottom:-4px;height:2px;background-color:var(--c-accent-yellow);transform:scaleX(0);transform-origin:left;transition:transform .25s ease}.nav-link.active:after,.nav-link:hover:after{transform:scaleX(1)}.table-hover-row{transition:background-color .2s ease}.table-hover-row:hover{background-color:var(--c-bg-warm)}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:#f1ecf7}::-webkit-scrollbar-thumb{background:#b6a4ce;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--c-primary)}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}