*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--cream:#faf6f0;--cream-dark:#f0e8da;--cream-border:#ddd0bc;--ink:#1a1510;--ink-muted:#6b5d4f;--ink-faint:#a8968a;--amber:#c8832a;--amber-light:#f0c878;--amber-bg:#fdf3e3;--red-film:#8b2a2a;--green-film:#2a5c3a;--font-display:"Poppins", system-ui, sans-serif;--font-body:"Poppins", system-ui, sans-serif;--radius:20px;--radius-sm:14px;--radius-lg:24px;--radius-pill:100px;--ease:cubic-bezier(.4, 0, .2, 1);--transition:.25s var(--ease)}html,body,#root{height:100%}body{font-family:var(--font-body);background-color:var(--cream);color:var(--ink);-webkit-font-smoothing:antialiased;font-size:15px;line-height:1.6}body:before{content:"";pointer-events:none;z-index:9999;opacity:.4;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)' opacity='0.04'/%3E%3C/svg%3E");position:fixed;inset:0}h1,h2,h3{font-family:var(--font-display);font-weight:600;line-height:1.25}button{font-family:var(--font-body);cursor:pointer;transition:background var(--transition), color var(--transition), border-color var(--transition), transform .2s var(--ease), opacity var(--transition), box-shadow var(--transition);border:none;outline:none}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeUp{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}.page-enter{animation:fadeUp .4s var(--ease) both}input,select,textarea{font-family:var(--font-body);font-size:15px}a{color:var(--amber);text-decoration:none}.btn-primary{background:var(--ink);color:var(--cream);border-radius:var(--radius-pill);letter-spacing:.01em;justify-content:center;align-items:center;gap:8px;padding:12px 28px;font-size:15px;font-weight:500;display:inline-flex}.btn-primary:hover{background:#2e2620;transform:translateY(-1px)}.btn-primary:active{transform:scale(.98)}.btn-primary:disabled{background:var(--ink-faint);cursor:not-allowed;transform:none}.btn-secondary{color:var(--ink);border:1.5px solid var(--cream-border);border-radius:var(--radius-pill);background:0 0;justify-content:center;align-items:center;gap:8px;padding:11px 28px;font-size:15px;font-weight:500;display:inline-flex}.btn-secondary:hover{background:var(--cream-dark);border-color:var(--ink-faint);transform:translateY(-1px)}.btn-secondary:active{transform:scale(.98)}.btn-amber{background:var(--amber);color:#fff;border-radius:var(--radius-pill);justify-content:center;align-items:center;gap:8px;padding:12px 28px;font-size:15px;font-weight:500;display:inline-flex}.btn-amber:hover{background:#b5751f;transform:translateY(-1px)}.btn-amber:active{transform:scale(.98)}.btn-amber:disabled{opacity:.5;cursor:not-allowed;transform:none}.btn-text{cursor:pointer;color:var(--ink-muted);background:0 0;border:none;padding:0;font-size:14px;font-weight:500}.btn-text:hover{color:var(--ink)}.card{border:1px solid var(--cream-border);border-radius:var(--radius-lg);transition:box-shadow var(--transition), transform var(--transition);background:#fff;padding:24px}.card:hover{box-shadow:0 8px 24px #1a15100f}.input-field{border:1.5px solid var(--cream-border);border-radius:var(--radius-sm);width:100%;color:var(--ink);transition:border-color var(--transition), box-shadow var(--transition);background:#fff;outline:none;padding:12px 16px;font-size:15px}.input-field:focus{border-color:var(--amber);box-shadow:0 0 0 3px #c8832a1f}.label{color:var(--ink-muted);letter-spacing:.03em;text-transform:uppercase;margin-bottom:6px;font-size:13px;font-weight:500;display:block}.page-center{flex-direction:column;justify-content:center;align-items:center;min-height:100dvh;padding:24px;display:flex}.logo{font-family:var(--font-display);letter-spacing:-.02em;font-size:28px;font-weight:700;line-height:1}.logo-ka{color:var(--ink)}.logo-chak{color:var(--amber)}.landing{min-height:100dvh}.landing-header{z-index:10;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--cream-border);background:#faf6f0eb;justify-content:space-between;align-items:center;padding:16px 24px;display:flex;position:sticky;top:0}.landing-header-cta{padding:10px 18px;font-size:14px}.landing-hero{text-align:center;padding:72px 24px 80px}.landing-hero-inner{max-width:640px;margin:0 auto}.landing-hero-icon{margin-bottom:20px;font-size:56px}.landing-hero-logo{margin-bottom:20px;display:block}.landing-tagline{font-family:var(--font-display);color:var(--ink);margin-bottom:12px;font-size:clamp(22px,4vw,30px)}.landing-subtagline{color:var(--ink-muted);max-width:520px;margin:0 auto 28px;font-size:17px;line-height:1.6}.landing-film-strip{justify-content:center;margin-bottom:36px}.landing-hero-cta{padding:16px 32px;font-size:16px}.landing-section{padding:64px 24px}.landing-section-alt{background:var(--cream-dark)}.landing-container{max-width:960px;margin:0 auto}.landing-section-title{text-align:center;margin-bottom:36px;font-size:clamp(28px,5vw,36px)}.landing-summary{text-align:center;max-width:640px;margin:0 auto}.landing-summary-lead{font-family:var(--font-display);margin-bottom:12px;font-size:24px}.landing-summary-body{color:var(--ink-muted);font-size:16px;line-height:1.6}.landing-steps{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;display:grid}.landing-step{flex-direction:column;gap:12px;display:flex}.landing-step-num{font-family:var(--font-display);color:var(--amber);font-size:32px;font-weight:700;line-height:1}.landing-step h3{margin-bottom:8px;font-size:20px}.landing-step p{color:var(--ink-muted);font-size:14px;line-height:1.5}.landing-features{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;display:grid}.landing-feature h3{color:var(--ink);margin-bottom:8px;font-size:18px}.landing-feature p{color:var(--ink-muted);font-size:14px;line-height:1.5}.landing-faq{flex-direction:column;gap:12px;max-width:720px;margin:0 auto;display:flex}.landing-faq-item h3{margin-bottom:6px;font-size:17px}.landing-faq-item p{color:var(--ink-muted);font-size:15px}.landing-footer{text-align:center;border-top:1px solid var(--cream-border);padding:64px 24px 80px}.landing-footer-inner{flex-direction:column;align-items:center;gap:16px;display:flex}.landing-footer-inner p{color:var(--ink-muted);font-size:16px}.film-strip{gap:3px;margin:8px 0;display:flex}.film-hole{background:var(--cream-border);border-radius:50%;width:8px;height:8px}.shot-counter{background:var(--ink);color:var(--cream);font-variant-numeric:tabular-nums;border-radius:100px;align-items:center;gap:6px;padding:6px 12px;font-size:13px;font-weight:500;display:inline-flex}.countdown{font-family:var(--font-display);color:var(--amber);letter-spacing:-.02em;font-size:48px}.photo-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:14px;display:grid}.photo-tile{border-radius:var(--radius-lg);aspect-ratio:1;background:var(--cream-dark);cursor:pointer;transition:transform var(--transition), box-shadow var(--transition);position:relative;overflow:hidden}.photo-tile:hover{transform:scale(1.02);box-shadow:0 8px 24px #1a15101f}.photo-tile img{object-fit:cover;width:100%;height:100%;transition:transform .35s var(--ease);display:block}.photo-tile:hover img{transform:scale(1.04)}.photo-tile-loading{width:100%;height:100%;color:var(--ink-faint);justify-content:center;align-items:center;font-size:13px;display:flex}.photo-tile-label{color:#ffffffd9;font-size:11px;font-weight:500;position:absolute;bottom:8px;right:10px}.photo-placeholder{border-radius:var(--radius-lg);background:var(--cream-dark);border:1px solid var(--cream-border);justify-content:center;align-items:center;width:80px;height:80px;font-size:24px;display:flex}.photo-thumb{aspect-ratio:1;border-radius:var(--radius-lg);object-fit:cover;width:100%;display:block}.reveal-nav{flex-direction:column;align-items:center;gap:12px;display:flex}.reveal-banner{background:var(--amber-bg);border-radius:var(--radius-lg);border:1px solid var(--amber-light);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:24px;padding:14px 18px;display:flex}.lightbox{z-index:100;animation:fadeIn .25s var(--ease);background:#000000eb;flex-direction:column;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.lightbox-img{border-radius:var(--radius-lg);object-fit:contain;max-width:100%;max-height:75vh}.lightbox-btn{color:#fff;border-radius:var(--radius-pill);cursor:pointer;transition:background var(--transition), transform .2s var(--ease);background:#ffffff26;border:none;padding:10px 22px;font-size:14px}.lightbox-btn:hover{background:#ffffff40}.lightbox-btn-primary{color:#111;background:#fff;font-weight:500}.lightbox-btn-primary:hover{background:#f0f0f0}.badge{border-radius:100px;align-items:center;gap:5px;padding:4px 10px;font-size:12px;font-weight:500;display:inline-flex}.badge-active{color:#2a5c3a;background:#e6f4ea}.badge-pending{color:#8b5e1a;background:#fdf3e3}.badge-revealed{color:#5a3e2b;background:#f0e8da}.modal-overlay{z-index:50;animation:fadeIn .3s var(--ease);background:#0000008c;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.modal-card{border-radius:var(--radius-lg);width:100%;max-width:480px;animation:fadeUp .35s var(--ease);background:#fff;padding:28px;box-shadow:0 24px 64px #0000002e}.modal-list{color:var(--ink-muted);flex-direction:column;gap:12px;font-size:14px;line-height:1.5;display:flex}
