:root{--sakura: #c9a96e;--sakura-deep: #eeb54a;--sakura-soft: #fdf2f2;--ink: #1e1e1e;--ink-light: #2d2d2d;--lavender-dark: #5A1F78;--lavender-light: #8b7db5;--washi: #fdfaf2;--gold: #c9a96e;--stone: #e0d6cf;--gray-text: #4b4b4b;--shadow-sm: 0 4px 12px rgba(0, 0, 0, .04);--shadow-md: 0 12px 28px rgba(0, 0, 0, .08);--shadow-lg: 0 24px 48px rgba(0, 0, 0, .12);--radius-lg: 1.25rem;--radius-xl: 1.75rem;--radius-full: 9999px;--transition: .25s cubic-bezier(.2, .9, .3, 1)}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;background:var(--washi);color:var(--ink);line-height:1.6;-webkit-font-smoothing:antialiased}.scroll-top-btn{position:fixed;bottom:1.5rem;right:1.5rem;width:2.8rem;height:2.8rem;border-radius:50%;background:var(--lavender-dark);color:#fff;border:1px solid rgba(255,255,255,.3);display:flex;align-items:center;justify-content:center;cursor:pointer;transform:translateY(100px);transition:transform .3s ease;z-index:40}.navbar{background:linear-gradient(135deg,var(--lavender-dark) 0%,var(--lavender-light) 100%);color:#fff;position:sticky;top:0;z-index:50;box-shadow:0 4px 20px #6b5b8a4d}.navbar .container{max-width:1280px;margin:0 auto;padding:0 1.25rem}.nav-row{display:flex;justify-content:space-between;align-items:center;height:6.5rem}@media(max-width:640px){.nav-row{height:5rem}}.brand{display:flex;align-items:center;gap:.6rem;height:100%;flex:1;min-width:0;cursor:pointer;text-decoration:none;color:#fff}.brand img.emoji{height:100%;max-height:5.5rem;width:auto;object-fit:contain;flex-shrink:0;filter:drop-shadow(0 4px 6px rgba(0,0,0,.3));transition:transform .3s ease}.brand:hover img.emoji{transform:scale(1.05)}@media(max-width:640px){.brand img.emoji{max-height:3.8rem}}.brand-text{min-width:0;display:flex;flex-direction:column;justify-content:center}.brand-text h1{font-size:1.1rem;font-weight:600;letter-spacing:.05em;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.brand-text .sub{font-size:.6rem;opacity:.85;letter-spacing:.05em;color:#ffffffe6;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.nav-actions{display:flex;gap:.8rem;align-items:center;flex-shrink:0}@media(max-width:640px){.brand{gap:.4rem}.brand-text .sub{display:none}.brand-text h1{font-size:1.25rem}}.nav-actions{display:flex;gap:.8rem;align-items:center}.btn-nav{background:#ffffff26;border:1px solid rgba(255,255,255,.25);color:#fff;padding:.7rem 1.4rem;border-radius:var(--radius-full);font-size:.95rem;font-weight:600;cursor:pointer;transition:all .3s cubic-bezier(.2,.9,.3,1);display:flex;align-items:center;gap:.6rem;white-space:nowrap;backdrop-filter:blur(4px);text-decoration:none}.btn-nav i{font-size:1.1rem}.btn-nav:hover{background:#ffffff40;transform:translateY(-2px);box-shadow:0 4px 12px #00000026}.btn-nav-accent{background:var(--sakura);border-color:var(--sakura)}.btn-nav-accent:hover{background:var(--sakura-deep)}@media(max-width:640px){.nav-actions{gap:.6rem}.btn-nav .nav-text{display:none}.btn-nav{padding:0;width:46px;height:46px;justify-content:center}.btn-nav i{font-size:1.3rem;margin:0}}.footer{background:linear-gradient(135deg,var(--lavender-dark) 0%,var(--lavender-light) 100%);color:#f0edf5;margin-top:2rem}.footer-strip{height:4px;background:linear-gradient(90deg,var(--sakura),var(--gold))}.footer .container{max-width:1280px;margin:0 auto;padding:2.5rem 1.25rem}.footer-grid{display:grid;grid-template-columns:1fr;gap:2rem;text-align:center}.footer-grid a{text-decoration:none;color:inherit}@media(min-width:768px){.footer-grid{grid-template-columns:repeat(3,1fr);text-align:left}}.footer h3{color:var(--gold);text-transform:uppercase;letter-spacing:.1em;font-size:.9rem;margin-bottom:1rem}.footer-bottom{border-top:1px solid rgba(255,255,255,.2);margin-top:2rem;padding-top:1.2rem;text-align:center;font-size:.7rem;color:#ffffffb3}.scroll-top-btn{position:fixed;bottom:1.5rem;right:1.5rem;width:2.8rem;height:2.8rem;border-radius:50%;background:var(--lavender-dark);color:#fff;border:1px solid rgba(255,255,255,.3);display:flex;align-items:center;justify-content:center;cursor:pointer;transform:translateY(100px);transition:transform .3s ease;z-index:40;box-shadow:0 8px 18px #6b5b8a66}.scroll-top-btn.visible{transform:translateY(0)}.fade-in{animation:fadeSlide .5s ease forwards}@keyframes fadeSlide{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
