:root{--sunset-deep: #0d1428;--sunset-plum: #111b35;--sunset-rose: #0f9fbd;--sunset-coral: #29d4ee;--sunset-peach: #f0b653;--sunset-cream: #f2f6ff;--sunset-sky: #8da3c7;--sunset-slate: #1b2948;--sunset-gold: #eeb85a;--sunset-text: #f2f6ff;--sunset-text-dim: rgba(218, 229, 247, .68);--sunset-border: rgba(41, 212, 238, .25);--sunset-card: rgba(20, 32, 61, .72);--font-body: "Be Vietnam Pro", sans-serif;--font-display: "Space Grotesk", sans-serif}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:var(--font-body);color:var(--sunset-text);background:var(--sunset-deep);overflow-x:hidden;line-height:1.6;cursor:none}@media (pointer: coarse){body{cursor:auto}}h1,h2,h3,h4{font-family:var(--font-display);font-weight:600;line-height:1.2;letter-spacing:-.02em}a{color:inherit;text-decoration:none;transition:color .2s ease}a:hover{color:var(--sunset-peach)}.sunset-bg{position:fixed;top:0;right:0;bottom:0;left:0;z-index:-2;background:radial-gradient(ellipse 60% 45% at 50% 12%,rgba(240,182,83,.18) 0%,transparent 52%),radial-gradient(ellipse 70% 55% at 50% 100%,rgba(15,159,189,.12) 0%,transparent 62%),linear-gradient(180deg,#0b1222,#101a31 44%,#172340)}.sunset-bg:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at 50% 75%,rgba(244,196,168,.15) 0%,transparent 40%)}.pixel-cursor{position:fixed;top:0;left:0;z-index:9999;pointer-events:none;opacity:0;transition:opacity .2s ease;will-change:transform}.pixel-cursor.visible{opacity:1}.pixel-cursor-dot{position:absolute;width:6px;height:6px;background:var(--sunset-cream);box-shadow:0 0 12px #fce8d4cc;transform:translate(-50%,-50%)}.pixel-particle{position:absolute;background:var(--sunset-peach);opacity:0;animation:pixelFade .6s ease-out forwards;pointer-events:none}@keyframes pixelFade{0%{opacity:.9;transform:scale(1)}to{opacity:0;transform:scale(.3) translateY(8px)}}.nav{position:fixed;top:0;left:0;right:0;z-index:100;display:flex;align-items:center;justify-content:space-between;padding:1.25rem 2.5rem;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#2a1e2f66;border-bottom:1px solid var(--sunset-border)}.nav-logo{font-family:var(--font-display);font-weight:700;font-size:1.25rem;letter-spacing:-.03em}.nav-links{display:flex;gap:2rem;list-style:none}.nav-links a{font-size:.9rem;font-weight:500;color:var(--sunset-text-dim)}.nav-links a:hover{color:var(--sunset-cream)}@media (max-width: 640px){.nav{padding:1rem 1.25rem}.nav-links{gap:1rem}.nav-links a{font-size:.75rem}.nav-logo{font-size:1rem}.profile-orbit{width:82px;height:82px;right:7%;top:24%}.hero-copy{max-width:92%}.contact-links{flex-direction:column;gap:1rem}.contact-or{display:none}}.nav-orb{display:inline-block;width:15px;height:15px;margin-right:.6rem;border-radius:50%;background:var(--sunset-gold);box-shadow:0 0 18px #f0b653d9;vertical-align:-1px}.language-button{border:1px solid var(--sunset-border);border-radius:6px;padding:.35rem .75rem;background:#0d1428a6;color:var(--sunset-coral);font:inherit;font-weight:600;cursor:none}.language-button:hover{border-color:var(--sunset-coral)}.profile-orbit{position:absolute;width:132px;height:132px;top:19%;right:13%;padding:8px;border:1px solid rgba(240,182,83,.7);border-radius:50%;background:#101a31d9;box-shadow:0 0 32px #f0b6532e;transform:rotate(6deg)}.profile-orbit:after{content:"";position:absolute;width:8px;height:8px;right:-4px;bottom:18px;border-radius:50%;background:var(--sunset-coral);box-shadow:0 0 12px var(--sunset-coral)}.profile-orbit img{display:block;width:100%;height:100%;object-fit:cover;border-radius:50%;filter:saturate(.9) contrast(1.05);transform:rotate(-6deg)}.hero-copy{position:relative;z-index:1}.hero-dots{color:var(--sunset-gold)}.type-line{width:min(820px,calc(100% - 2rem));min-height:66px;display:flex;align-items:center;padding:0 2rem;margin-top:4rem;border:1px solid rgba(41,212,238,.35);border-radius:16px;background:#1a2748b8;color:var(--sunset-cream);font-size:clamp(1rem,2vw,1.25rem);font-weight:600;box-shadow:inset 0 0 24px #29d4ee0f,0 10px 40px #040a1933}.typing-caret{display:inline-block;width:2px;height:1.15em;margin-left:3px;background:var(--sunset-coral);vertical-align:-.18em;animation:caretBlink .9s steps(1) infinite}@keyframes caretBlink{50%{opacity:0}}.contact-links{display:flex;align-items:center;justify-content:center;gap:2.25rem;margin:2rem auto 0}.contact-link{display:flex;align-items:center;gap:.9rem;color:var(--sunset-coral)}.contact-link strong{display:block;font-size:1rem;text-decoration:underline}.contact-link small{display:block;color:var(--sunset-text-dim);font-size:.78rem;margin-top:.15rem}.contact-icon{display:grid;place-items:center;width:64px;height:64px;border:1px solid var(--sunset-coral);border-radius:9px;color:var(--sunset-coral);font-size:1.7rem}.contact-or{color:var(--sunset-text-dim);font-size:1.4rem;font-weight:600}.contact-note{text-align:center;color:var(--sunset-text-dim);font-size:.85rem;margin-top:1.5rem}.pixel-puzzle-title{text-shadow:0 0 18px rgba(206,223,255,.35)}.hero{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:6rem 1.5rem 4rem;position:relative}.hero-sun{position:absolute;bottom:15%;left:50%;transform:translate(-50%);width:320px;height:320px;border-radius:50%;background:radial-gradient(circle,rgba(240,182,83,.7) 0%,rgba(240,182,83,.18) 42%,transparent 72%);filter:blur(20px);animation:sunPulse 6s ease-in-out infinite;z-index:-1}@keyframes sunPulse{0%,to{transform:translate(-50%) scale(1);opacity:.6}50%{transform:translate(-50%) scale(1.08);opacity:.8}}.hero-eyebrow{font-size:.85rem;font-weight:500;letter-spacing:.15em;text-transform:uppercase;color:var(--sunset-gold);margin-bottom:1.5rem}.hero-title{font-size:clamp(2.5rem,7vw,5.5rem);font-weight:700;line-height:1.05;margin-bottom:1.5rem;background:linear-gradient(135deg,#ffffff 0%,#dce9ff 55%,var(--sunset-coral) 100%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.hero-subtitle{font-size:clamp(1rem,2.5vw,1.25rem);color:var(--sunset-text-dim);max-width:540px;margin-bottom:2.5rem}.hero-cta{display:inline-flex;align-items:center;gap:.5rem;padding:.85rem 2rem;border-radius:999px;background:var(--sunset-cream);color:var(--sunset-deep);font-weight:600;font-size:.95rem;transition:transform .2s ease,box-shadow .2s ease;box-shadow:0 4px 24px #f4c4a84d}.hero-cta:hover{transform:translateY(-2px);box-shadow:0 8px 32px #f4c4a880;color:var(--sunset-deep)}.section{padding:5rem 2rem;max-width:1100px;margin:0 auto}.section-title{font-size:clamp(1.75rem,4vw,2.5rem);margin-bottom:1rem;color:var(--sunset-cream)}.section-intro{font-size:1.05rem;color:var(--sunset-text-dim);max-width:560px;margin-bottom:3rem}.card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem}.card{background:var(--sunset-card);border:1px solid var(--sunset-border);border-radius:16px;padding:2rem;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transition:transform .3s ease,border-color .3s ease}.card:hover{transform:translateY(-4px);border-color:#f4c4a84d}.card-icon{width:48px;height:48px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:1.5rem;margin-bottom:1.25rem;background:#f4c4a81f}.card-title{font-size:1.2rem;margin-bottom:.5rem;color:var(--sunset-cream)}.card-text{font-size:.95rem;color:var(--sunset-text-dim)}.contact-form{display:flex;flex-direction:column;gap:1rem;max-width:480px}.input{padding:.85rem 1rem;border-radius:12px;border:1px solid var(--sunset-border);background:#2a1e2f80;color:var(--sunset-text);font-family:var(--font-body);font-size:.95rem;outline:none;transition:border-color .2s ease}.input:focus{border-color:var(--sunset-coral)}.input::placeholder{color:#fce8d459}textarea.input{min-height:120px;resize:vertical}.submit-btn{padding:.85rem 2rem;border-radius:999px;border:none;background:var(--sunset-coral);color:var(--sunset-deep);font-weight:600;font-size:.95rem;cursor:none;transition:transform .2s ease,background .2s ease}@media (pointer: coarse){.submit-btn{cursor:pointer}}.submit-btn:hover{transform:translateY(-2px);background:var(--sunset-peach)}.music-player{display:flex;align-items:center;gap:1.25rem;padding:1.5rem;border-radius:16px;background:var(--sunset-card);border:1px solid var(--sunset-border);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);max-width:480px}.play-btn{width:52px;height:52px;border-radius:50%;border:none;background:var(--sunset-cream);color:var(--sunset-deep);font-size:1.2rem;display:flex;align-items:center;justify-content:center;cursor:none;transition:transform .2s ease;flex-shrink:0}@media (pointer: coarse){.play-btn{cursor:pointer}}.play-btn:hover{transform:scale(1.1)}.track-info{flex:1}.track-name{font-size:.95rem;font-weight:500;color:var(--sunset-cream)}.track-artist{font-size:.85rem;color:var(--sunset-text-dim)}.progress-bar{margin-top:.5rem;height:4px;border-radius:2px;background:#fce8d426;overflow:hidden}.progress-fill{height:100%;border-radius:2px;background:var(--sunset-coral);transition:width .2s linear}.game-board{display:grid;grid-template-columns:repeat(4,1fr);gap:.75rem;max-width:400px;margin:2rem auto}.game-card{aspect-ratio:1;border-radius:12px;background:var(--sunset-card);border:1px solid var(--sunset-border);display:flex;align-items:center;justify-content:center;font-size:2rem;cursor:none;transition:transform .3s ease,background .3s ease}@media (pointer: coarse){.game-card{cursor:pointer}}.game-card:hover{transform:scale(1.05);background:#f4c4a81a}.game-card.flipped{background:#f4c4a82e;border-color:var(--sunset-coral)}.game-card.matched{background:#c4708a40;border-color:var(--sunset-rose)}.game-stats{display:flex;justify-content:center;gap:2rem;margin-bottom:1rem;font-size:.9rem;color:var(--sunset-text-dim)}.game-stats span{color:var(--sunset-cream);font-weight:600}.footer{text-align:center;padding:3rem 2rem;border-top:1px solid var(--sunset-border);color:var(--sunset-text-dim);font-size:.85rem}.stars{position:fixed;top:0;right:0;bottom:0;left:0;z-index:-1;pointer-events:none}.star{position:absolute;width:2px;height:2px;border-radius:50%;background:var(--sunset-cream);opacity:.4;animation:twinkle 4s ease-in-out infinite}@keyframes twinkle{0%,to{opacity:.2}50%{opacity:.7}}.reveal{opacity:0;transform:translateY(24px);transition:opacity .6s ease,transform .6s ease}.reveal.visible{opacity:1;transform:translateY(0)}.stories-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1.5rem}.stories-loading{text-align:center;color:var(--sunset-text-dim);padding:4rem 0;font-size:1.5rem;letter-spacing:.3em}.story-card{background:var(--sunset-card);border:1px solid var(--sunset-border);border-radius:16px;padding:2rem;text-align:center;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transition:transform .3s ease,border-color .3s ease;cursor:none;font:inherit;color:inherit}@media (pointer: coarse){.story-card{cursor:pointer}}.story-card:hover{transform:translateY(-4px);border-color:var(--story-color, var(--sunset-cream))}.story-pixel-square{width:48px;height:48px;border-radius:8px;margin:0 auto 1.25rem;transition:transform .3s ease}.story-card:hover .story-pixel-square{transform:rotate(45deg) scale(1.1)}.story-pixel-square.large{width:64px;height:64px}.story-card-title{font-size:1rem;font-weight:500;color:var(--sunset-text);line-height:1.4}.story-page{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;display:flex;align-items:center;justify-content:center;padding:2rem;background:#0d1428d9;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);overflow-y:auto}.story-page-content{max-width:640px;width:100%;background:var(--sunset-plum);border:1px solid var(--sunset-border);border-radius:24px;padding:3rem;position:relative}.story-page-close{position:absolute;top:1.5rem;right:1.5rem;background:transparent;border:none;color:var(--sunset-text-dim);font-size:1.25rem;cursor:none;transition:color .2s ease}@media (pointer: coarse){.story-page-close{cursor:pointer}}.story-page-close:hover{color:var(--sunset-cream)}.story-page-header{display:flex;align-items:center;gap:1rem;margin-bottom:2rem}.story-page-title{font-size:1.5rem;color:var(--sunset-cream)}.story-page-body{color:var(--sunset-text-dim);font-size:1rem;line-height:1.8}.story-page-body p{margin-bottom:1rem}.story-page-body img{max-width:100%;border-radius:12px;margin:1.5rem 0}.story-page-body h1,.story-page-body h2,.story-page-body h3{color:var(--sunset-cream);margin:1.5rem 0 .75rem}
