:root{--ink: #101828;--ink-soft: #3d4a5c;--fog: #eef2f7;--snow: #f8fafc;--line: rgba(16, 24, 40, .12);--mist: rgba(16, 24, 40, .06);--signal: #e85d04;--signal-deep: #c2410c;--cobalt: #1d4e89;--sky: #5b8def;--ok: #0f766e;--rose: #b42318;--shadow: 0 28px 70px rgba(16, 24, 40, .1);--radius: 20px;--font-display: "Bricolage Grotesque", system-ui, sans-serif;--font-body: "Figtree", system-ui, sans-serif;color-scheme:light}*,*:before,*:after{box-sizing:border-box}html,body,#root{min-height:100%;max-width:100%}html,body{overflow-x:hidden}body{margin:0;font-family:var(--font-body);color:var(--ink);background-color:var(--fog);background-image:radial-gradient(ellipse 90% 55% at 80% -10%,rgba(232,93,4,.18),transparent 55%),radial-gradient(ellipse 70% 50% at -15% 20%,rgba(29,78,137,.14),transparent 50%),linear-gradient(165deg,#f4f7fb,#e8eef6 48%,#dfe8f2);background-attachment:fixed;line-height:1.55;-webkit-font-smoothing:antialiased}body:before{content:"";position:fixed;inset:0;pointer-events:none;background:linear-gradient(118deg,transparent 0%,transparent 42%,rgba(232,93,4,.07) 48%,rgba(91,141,239,.08) 54%,transparent 62%,transparent 100%);animation:beam-drift 14s ease-in-out infinite alternate}body:after{content:"";position:fixed;inset:0;pointer-events:none;opacity:.4;background-image:radial-gradient(rgba(16,24,40,.09) 1px,transparent 1px);background-size:22px 22px;mask-image:radial-gradient(ellipse at 50% 30%,black 20%,transparent 75%)}a{color:var(--cobalt);text-decoration-thickness:1px;text-underline-offset:3px}button,input,select{font:inherit}button{cursor:pointer}.app-shell{position:relative;z-index:1;min-height:100vh;display:flex;flex-direction:column;max-width:100%;min-width:0;padding:1.1rem max(1rem,env(safe-area-inset-right,0px)) 2rem max(1rem,env(safe-area-inset-left,0px));padding-top:max(1.1rem,env(safe-area-inset-top,0px));padding-bottom:max(2rem,env(safe-area-inset-bottom,0px))}.topbar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:1rem;min-width:0;margin-bottom:clamp(1.25rem,3.5vw,2rem);animation:rise .55s ease both}.brand{display:inline-flex;align-items:center;gap:.7rem;min-width:0;color:inherit;text-decoration:none}.brand-mark{width:2.55rem;height:2.55rem;border-radius:.8rem;background:linear-gradient(145deg,var(--ink) 0%,#243044 100%);color:#fff;display:grid;place-items:center;position:relative;overflow:hidden;box-shadow:0 10px 24px #10182838}.brand-mark svg{width:1.35rem;height:1.35rem}.brand-mark:after{content:"";position:absolute;width:140%;height:2px;background:linear-gradient(90deg,transparent,var(--signal),transparent);transform:rotate(-32deg);animation:laser 2.8s ease-in-out infinite}.brand-name{font-family:var(--font-display);font-size:1.4rem;font-weight:700;letter-spacing:-.04em;line-height:1}.brand-tag{display:block;margin-top:.18rem;font-size:.7rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft);overflow-wrap:anywhere}.nav-links{display:flex;align-items:center;gap:.35rem}.nav-links a{color:var(--ink-soft);text-decoration:none;font-size:.9rem;font-weight:600;padding:.45rem .85rem;border-radius:10px;transition:background .2s ease,color .2s ease}.nav-links a:hover,.nav-links a.active{background:#ffffffb3;color:var(--ink)}.nav-links a.nav-feedback{display:inline-flex;align-items:center;gap:.4rem;margin-left:.15rem;padding:.4rem .8rem .4rem .65rem;color:var(--signal-deep);background:linear-gradient(180deg,#ffffffeb,#fff8f2e0);border:1px dashed rgba(232,93,4,.45);box-shadow:0 6px 16px #e85d041a}.nav-links a.nav-feedback svg{width:.95rem;height:.95rem;flex-shrink:0}.nav-links a.nav-feedback:hover,.nav-links a.nav-feedback:focus-visible{color:#9a3412;background:#fff7ed;border-color:#e85d04b3;border-style:solid;transform:translateY(-1px)}.status-pill{display:inline-flex;align-items:center;gap:.4rem;font-size:.75rem;font-weight:600;padding:.35rem .7rem;border-radius:10px;background:#ffffffa6;border:1px solid var(--line);color:var(--ink-soft)}.status-pill .dot{width:.45rem;height:.45rem;border-radius:50%;background:#94a3b8}.status-pill.online .dot{background:var(--ok);box-shadow:0 0 0 3px #0f766e26}.status-pill.offline .dot{background:var(--rose)}.main{flex:1;width:min(760px,100%);max-width:100%;min-width:0;margin:0 auto}.hero{text-align:left;margin-bottom:1.5rem;animation:rise .65s .04s ease both;position:relative}.hero-kicker{display:inline-flex;align-items:center;gap:.45rem;font-size:.78rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--signal-deep);margin-bottom:.75rem}.hero-kicker:before{content:"";width:1.4rem;height:2px;background:var(--signal)}.hero-brand{margin:0;font-family:var(--font-display);font-size:clamp(2.8rem,9vw,4.2rem);line-height:.95;letter-spacing:-.045em;font-weight:800;color:var(--ink)}.hero-brand em{font-style:normal;background:linear-gradient(110deg,var(--signal-deep) 10%,var(--signal) 45%,var(--cobalt) 95%);-webkit-background-clip:text;background-clip:text;color:transparent}.hero-line{margin:.9rem 0 0;max-width:34rem;color:var(--ink-soft);font-size:1.08rem;font-weight:500}.hero-compact .hero-brand{font-size:clamp(2rem,6vw,2.8rem)}.panel{background:#ffffffc7;backdrop-filter:blur(16px);border:1px solid rgba(255,255,255,.9);border-radius:calc(var(--radius) + 2px);box-shadow:var(--shadow);padding:clamp(1rem,3vw,1.7rem);animation:rise .7s .08s ease both;position:relative;overflow:hidden;max-width:100%;min-width:0}.panel:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--signal),var(--sky),transparent 85%)}.section-label{margin:0 0 .75rem;font-size:.75rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft)}.presets{display:grid;grid-template-columns:repeat(3,1fr);gap:.55rem;margin-bottom:1.1rem}@media(max-width:520px){.presets{grid-template-columns:1fr}}.presets.two{grid-template-columns:1fr 1fr}@media(max-width:520px){.presets.two{grid-template-columns:1fr}}.preset{text-align:left;border:1px solid var(--line);background:#ffffffb3;border-radius:14px;padding:.75rem .8rem;transition:border-color .15s ease,background .15s ease,transform .15s ease;color:inherit}.preset:hover:not(:disabled){border-color:#e85d0459;transform:translateY(-1px)}.preset.active{border-color:var(--signal);background:#e85d0414;box-shadow:inset 0 0 0 1px #e85d0433}.preset strong{display:block;font-size:.92rem;font-weight:700;margin-bottom:.15rem}.preset span{font-size:.78rem;color:var(--ink-soft);line-height:1.3}.dropzone{position:relative;border:1.5px dashed rgba(29,78,137,.28);border-radius:var(--radius);background:linear-gradient(145deg,#5b8def14,#e85d040d);min-height:188px;display:grid;place-items:center;text-align:center;padding:1.4rem;transition:border-color .2s ease,transform .25s ease,background .2s ease;cursor:pointer}.dropzone:hover,.dropzone.active{border-color:var(--signal);transform:translateY(-2px);background:linear-gradient(145deg,#5b8def1f,#e85d041a)}.dropzone input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer;z-index:2;font-size:16px}.dropzone-label{position:relative;z-index:1;pointer-events:none}.drop-icon{width:3rem;height:3rem;margin:0 auto .75rem;border-radius:14px;display:grid;place-items:center;background:var(--ink);color:#fff;font-size:1.2rem;font-weight:700;font-family:var(--font-display)}.dropzone strong{display:block;font-size:1.08rem;font-weight:700;margin-bottom:.3rem}.dropzone span{color:var(--ink-soft);font-size:.9rem}.file-chip{margin-top:0;display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.75rem .85rem;border-radius:14px;background:var(--snow);border:1px solid var(--line);animation:rise .35s ease both;min-width:0;max-width:100%;width:100%}.file-chip .lead{display:flex;align-items:center;gap:.75rem;min-width:0;flex:1;overflow:hidden}.file-type{flex-shrink:0;width:2.5rem;height:2.5rem;border-radius:10px;display:grid;place-items:center;font-size:.65rem;font-weight:800;letter-spacing:.02em;text-transform:uppercase;background:var(--ink);color:#fff}.file-chip .meta{min-width:0;flex:1;overflow:hidden}.file-chip .name{font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-chip .size{color:var(--ink-soft);font-size:.85rem}.file-chip .btn{flex-shrink:0}.options{display:grid;gap:1rem;margin-top:1.2rem}@media(min-width:640px){.options.two{grid-template-columns:1fr 1fr}}.field{display:grid;gap:.4rem}.field label{font-size:.75rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-soft)}.field input,.field select{width:100%;border:1px solid var(--line);background:#fffffff2;border-radius:12px;padding:.75rem .9rem;color:var(--ink);outline:none;transition:border-color .15s ease,box-shadow .15s ease}.field input:focus,.field select:focus{border-color:#e85d048c;box-shadow:0 0 0 3px #e85d041f}.password-wrap{position:relative}.password-wrap input{padding-right:4.2rem}.password-wrap .ghost-btn{position:absolute;right:.35rem;top:50%;transform:translateY(-50%);border:none;background:transparent;color:var(--ink-soft);font-size:.8rem;font-weight:700;padding:.4rem .55rem}.actions{display:flex;flex-wrap:wrap;gap:.65rem;margin-top:1.3rem}.btn{appearance:none;border:none;border-radius:12px;padding:.8rem 1.2rem;font-weight:700;transition:transform .15s ease,box-shadow .15s ease,opacity .15s ease}.btn:disabled{opacity:.5;cursor:not-allowed}label.btn.disabled{opacity:.5;pointer-events:none}.btn:not(:disabled):hover{transform:translateY(-1px)}.btn:not(:disabled):active{transform:translateY(0)}.btn-primary{background:linear-gradient(135deg,var(--ink) 0%,#1c2a40 60%,#243b5c 100%);color:#f8fafc;box-shadow:0 12px 28px #10182840}.btn-primary:not(:disabled):hover{box-shadow:0 16px 34px #1018284d}.btn-signal{background:linear-gradient(135deg,var(--signal-deep),var(--signal));color:#fff;box-shadow:0 12px 28px #e85d0447}.btn-secondary{background:#ffffffd9;color:var(--ink);border:1px solid var(--line)}.btn-danger{background:#b4231814;color:var(--rose);border:1px solid rgba(180,35,24,.18)}.btn-sm{padding:.55rem .85rem;font-size:.88rem}.progress{margin-top:1.1rem}.progress-track{height:.55rem;border-radius:999px;background:var(--mist);overflow:hidden}.progress-fill{height:100%;width:0%;border-radius:inherit;background:linear-gradient(90deg,var(--cobalt),var(--signal));transition:width .2s ease}.progress-label{margin-top:.45rem;font-size:.85rem;color:var(--ink-soft);font-weight:600}.alert{margin-top:1rem;padding:.85rem 1rem;border-radius:12px;font-size:.92rem;animation:rise .3s ease both}.alert-error{background:#b4231812;color:var(--rose);border:1px solid rgba(180,35,24,.14);white-space:pre-line}.alert-ok{background:#0f766e14;color:var(--ok);border:1px solid rgba(15,118,110,.14)}.alert-info{background:#1d4e8912;color:var(--cobalt);border:1px solid rgba(29,78,137,.14)}.share-layout{display:grid;gap:1.5rem}@media(min-width:700px){.share-layout{grid-template-columns:minmax(200px,240px) 1fr;align-items:start}}.qr-stack{display:grid;gap:.75rem;justify-items:center}.qr-frame{background:#fff;border-radius:18px;padding:.9rem;border:1px solid var(--line);display:grid;place-items:center;animation:pop .5s cubic-bezier(.2,1.1,.4,1) both;box-shadow:0 14px 40px #10182814;position:relative}.qr-frame:after{content:"";position:absolute;inset:-1px;border-radius:inherit;pointer-events:none;border:2px solid transparent;background:linear-gradient(#fff,#fff) padding-box,linear-gradient(135deg,var(--signal),var(--sky)) border-box;opacity:.35;mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask-composite:exclude;padding:2px}.qr-frame img{width:min(210px,100%);height:auto;display:block;border-radius:6px}.expiry-bar{width:100%;max-width:220px}.expiry-bar .track{height:6px;border-radius:999px;background:var(--mist);overflow:hidden}.expiry-bar .fill{height:100%;background:linear-gradient(90deg,var(--signal),var(--cobalt));border-radius:inherit;transition:width .4s linear}.expiry-bar .label{margin-top:.35rem;font-size:.78rem;font-weight:600;color:var(--ink-soft);text-align:center}.share-meta h2{margin:0 0 .3rem;font-family:var(--font-display);font-size:1.5rem;letter-spacing:-.03em;font-weight:750;word-break:break-word}.share-meta .sub{margin:0;color:var(--ink-soft);font-weight:500}.stats{display:flex;flex-wrap:wrap;gap:.45rem;margin:1rem 0}.stat{font-size:.78rem;font-weight:700;padding:.35rem .65rem;border-radius:8px;background:var(--fog);border:1px solid var(--line);color:var(--ink-soft)}.stat.live{color:var(--ok);border-color:#0f766e40;background:#0f766e12}.link-row{display:flex;gap:.5rem;margin-top:.15rem}.link-row input{flex:1;min-width:0;border:1px solid var(--line);border-radius:12px;padding:.7rem .85rem;background:#fff;font-size:.88rem}.download-hero{text-align:left;margin-bottom:1.2rem;animation:rise .55s ease both}.download-hero .badge{display:inline-block;font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--signal-deep);margin-bottom:.55rem}.download-hero h1{margin:0;font-family:var(--font-display);font-size:clamp(1.7rem,5vw,2.35rem);letter-spacing:-.03em;word-break:break-word;font-weight:800}.download-hero p{margin:.5rem 0 0;color:var(--ink-soft);font-weight:500}.dl-icon{width:3.5rem;height:3.5rem;border-radius:14px;display:grid;place-items:center;background:linear-gradient(145deg,var(--ink),#2a3f5f);color:#fff;font-family:var(--font-display);font-weight:800;font-size:.75rem;margin-bottom:.9rem}.steps{display:grid;gap:1.15rem}.step{display:grid;grid-template-columns:auto 1fr;gap:.9rem;align-items:start}.step-n{width:2.1rem;height:2.1rem;border-radius:10px;background:var(--ink);color:#fff;display:grid;place-items:center;font-weight:800;font-size:.9rem;font-family:var(--font-display)}.step strong{display:block;margin-bottom:.2rem;font-size:1.02rem}.footer{margin-top:2.4rem;text-align:center;color:var(--ink-soft);font-size:.82rem}.footer p{margin:.25rem 0}.footer .name{font-family:var(--font-display);font-weight:700;color:var(--ink);letter-spacing:-.02em}.muted{color:var(--ink-soft)}.center-stack{display:grid;gap:1rem;justify-items:center;text-align:center;padding:.5rem 0}.spinner{width:2rem;height:2rem;border-radius:50%;border:3px solid var(--mist);border-top-color:var(--signal);animation:spin .8s linear infinite}@keyframes rise{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes pop{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes laser{0%,to{transform:translateY(18px) rotate(-32deg);opacity:.2}50%{transform:translateY(-18px) rotate(-32deg);opacity:1}}@keyframes beam-drift{0%{transform:translate(-2%) scale(1)}to{transform:translate(2%) scale(1.03)}}.file-list{margin-top:.85rem;display:grid;grid-template-columns:minmax(0,1fr);gap:.55rem;min-width:0;max-width:100%;max-height:min(42vh,22rem);overflow-x:hidden;overflow-y:auto;-webkit-overflow-scrolling:touch}.check-row{display:flex;gap:.7rem;align-items:flex-start;padding:.85rem .1rem 0;cursor:pointer;font-size:.92rem;min-width:0;max-width:100%}.check-row input{margin-top:.25rem;width:1.05rem;height:1.05rem;accent-color:var(--signal)}.turnstile-wrap{margin-top:1rem;min-height:65px}.scanner{position:relative;border-radius:16px;overflow:hidden;background:#0f172a;aspect-ratio:3 / 4;max-height:420px;border:1px solid var(--line)}.scanner-video{width:100%;height:100%;object-fit:cover;display:block}.scanner-canvas{display:none}.scanner-placeholder{position:absolute;inset:0;display:grid;place-items:center;background:radial-gradient(circle at center,rgba(232,93,4,.12),transparent 55%),#1e293b}.scanner.drop-active{outline:2px dashed var(--signal);outline-offset:-4px}.social-share{margin-top:1.15rem}.social-share-row{display:flex;flex-wrap:wrap;gap:.4rem}.social-share-btn{appearance:none;border:1px solid var(--line);background:#fff;color:var(--ink);font-size:.78rem;font-weight:700;padding:.45rem .7rem;border-radius:999px}.social-share-btn:hover{border-color:var(--signal);color:var(--signal-deep);background:#e85d0414}.history-list{display:grid;gap:.65rem}.history-item{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.85rem .95rem;border-radius:14px;border:1px solid var(--line);background:var(--snow);min-width:0;max-width:100%}code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.88em;background:var(--fog);padding:.1em .35em;border-radius:4px}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;letter-spacing:.02em}.key-card{margin:1rem 0;padding:1rem 1.05rem;border-radius:14px;border:1px solid rgba(232,93,4,.28);background:linear-gradient(145deg,#e85d040f,#1d4e890d);display:grid;gap:.75rem}.key-card-head{display:flex;flex-direction:column;gap:.15rem}.key-card-head strong{font-family:var(--font-display);font-weight:750;letter-spacing:-.02em}.field-hint{margin:.35rem 0 0;font-size:.78rem;color:var(--ink-soft);line-height:1.4}.qr-modes{display:flex;gap:.4rem;justify-content:center;margin-top:.65rem}.chip-btn{border:1px solid var(--line);background:#fff;color:var(--ink-soft);font-size:.78rem;font-weight:700;padding:.4rem .75rem;border-radius:999px}.chip-btn.active{border-color:var(--signal);color:var(--signal-deep);background:#e85d0414}.qr-mode-hint{margin:.45rem 0 0;font-size:.75rem;text-align:center;max-width:240px}.folder-row{display:flex;flex-wrap:wrap;align-items:center;gap:.65rem;margin-top:.75rem;min-width:0;max-width:100%}.folder-row .muted{flex:1 1 12rem;min-width:0}.folder-input{position:absolute;width:1px;height:1px;opacity:0;overflow:hidden;clip:rect(0,0,0,0)}.folder-row label.disabled{opacity:.5;pointer-events:none}.key-recovery{display:grid;gap:.75rem}button.linkish{border:none;background:none;padding:0;color:var(--cobalt);font-weight:700;text-decoration:underline;text-underline-offset:2px}.toast-host{position:fixed;z-index:80;right:1rem;bottom:1rem;display:grid;gap:.55rem;width:min(340px,calc(100vw - 2rem));pointer-events:none}.toast{pointer-events:auto;padding:.85rem 1rem;border-radius:14px;border:1px solid var(--line);background:#fff;box-shadow:var(--shadow);display:grid;gap:.2rem;animation:rise .35s ease both}.toast strong{font-family:var(--font-display);font-weight:750;letter-spacing:-.02em}.toast span{font-size:.85rem;color:var(--ink-soft)}.toast-ok{border-color:#0f766e59;background:linear-gradient(145deg,#fff,#0f766e14)}.toast-info{border-color:#1d4e8947;background:linear-gradient(145deg,#fff,#1d4e890f)}.toast-error{border-color:#b423184d;background:linear-gradient(145deg,#fff,#b423180f)}.pin-card .pin-display{font-size:clamp(1.8rem,6vw,2.4rem);font-weight:800;letter-spacing:.28em;text-align:center;padding:.65rem;color:var(--ink)}.pin-input{font-size:1.6rem!important;letter-spacing:.35em;text-align:center;font-weight:700}.live-controls{margin:1rem 0;padding-top:.25rem}.actions.wrap{flex-wrap:wrap}.footer-links{margin:.35rem 0 0;font-size:.85rem}.footer-links a{color:var(--ink-soft)}.seo-panel{margin-top:1rem}.seo-h2{font-family:var(--font-display);font-size:1.15rem;margin:0 0 .65rem;color:var(--ink)}.seo-list{margin:.5rem 0 0;padding-left:1.2rem;color:var(--ink-soft)}.seo-list li{margin:.35rem 0}.seo-faq{display:flex;flex-direction:column;gap:.55rem;margin-bottom:1rem}.seo-faq-item{border:1px solid var(--line);border-radius:12px;background:var(--snow);padding:.65rem .85rem}.seo-faq-item summary{cursor:pointer;font-weight:600;color:var(--ink)}.seo-faq-item p{margin:.5rem 0 0;font-size:.92rem}.image-preview{margin-top:1.1rem;padding:.85rem;border-radius:14px;border:1px solid var(--line);background:var(--snow)}.image-preview img{display:block;width:100%;max-height:360px;object-fit:contain;border-radius:10px;background:#0f172a0d}@media(max-width:720px){.nav-links{flex-wrap:wrap;justify-content:flex-end;max-width:100%}.dropzone{min-height:148px;padding:1rem .85rem}.file-chip{flex-wrap:wrap;align-items:flex-start;gap:.55rem .65rem}.file-chip .lead{flex:1 1 12rem;max-width:100%}.file-chip .name{white-space:normal;overflow:visible;text-overflow:unset;overflow-wrap:anywhere;word-break:break-word;line-height:1.3}.file-chip .btn{margin-left:auto}.check-row{padding-right:0}.check-row span{min-width:0;overflow-wrap:anywhere}.toast-host{right:.75rem;left:.75rem;width:auto;bottom:.75rem}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}.festival-banner{display:flex;align-items:center;justify-content:space-between;gap:.75rem;width:min(760px,100%);margin:0 auto .85rem;padding:.55rem .85rem;border-radius:12px;border:1px solid var(--line);background:linear-gradient(120deg,var(--festival-wash, transparent),rgba(255,255,255,.78) 42%,var(--festival-wash-alt, transparent));backdrop-filter:blur(8px);box-shadow:0 10px 28px #10182814;animation:rise .45s ease both;position:relative;z-index:2}.festival-banner--landmark{border-color:color-mix(in srgb,var(--festival-accent, var(--signal)) 35%,var(--line));box-shadow:0 14px 36px #1018281f,0 0 0 1px color-mix(in srgb,var(--festival-accent, var(--signal)) 20%,transparent)}.festival-banner--featured{border-color:color-mix(in srgb,var(--festival-accent, var(--signal)) 22%,var(--line))}.festival-banner-copy{display:flex;align-items:center;gap:.55rem;min-width:0}.festival-banner-mark{flex-shrink:0;width:2rem;height:2rem;border-radius:999px;background:var(--festival-mark, linear-gradient(135deg, var(--signal), var(--cobalt)));box-shadow:0 0 0 3px var(--festival-mark-ring, rgba(232, 93, 4, .15));display:grid;place-items:center}.festival-banner-motif{font-size:.95rem;line-height:1;filter:drop-shadow(0 1px 0 rgba(255,255,255,.35))}.festival-banner-meta{margin-bottom:.12rem}.festival-tier-pill{display:inline-flex;align-items:center;font-size:.65rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:.15rem .45rem;border-radius:999px;background:var(--mist);color:var(--ink-soft)}.festival-tier-pill--landmark{background:color-mix(in srgb,var(--festival-accent, var(--signal)) 18%,white);color:var(--signal-deep)}.festival-tier-pill--featured{background:color-mix(in srgb,var(--festival-accent, var(--signal)) 12%,white);color:var(--ink)}.festival-banner strong{font-family:var(--font-display);font-size:.95rem;letter-spacing:-.02em}.festival-banner span.muted{display:block;font-size:.78rem;margin-top:.05rem}.festival-banner-dismiss{flex-shrink:0;border:0;background:transparent;color:var(--ink-soft);font-size:.8rem;font-weight:600;padding:.3rem .45rem;border-radius:8px}.festival-banner-dismiss:hover{background:var(--mist);color:var(--ink)}.festival-atmosphere{pointer-events:none;position:fixed;inset:0;z-index:0;opacity:calc(.22 + var(--festival-intensity, .4) * .28);mix-blend-mode:multiply;mask-image:linear-gradient(90deg,black 0%,transparent 18%,transparent 82%,black 100%)}.festival-atmosphere--landmark{mix-blend-mode:multiply;opacity:.28}.festival-atmosphere--dots{background-image:radial-gradient(var(--festival-accent, var(--signal)) 1.1px,transparent 1.2px);background-size:calc(18px + var(--festival-intensity, .4) * 10px) calc(18px + var(--festival-intensity, .4) * 10px)}.festival-atmosphere--beams{background:repeating-linear-gradient(calc(100deg + var(--festival-hue, 20) * 1deg),transparent 0 14px,var(--festival-wash, rgba(232, 93, 4, .08)) 14px 28px)}.festival-atmosphere--grid{background-image:linear-gradient(var(--festival-wash, rgba(16, 24, 40, .06)) 1px,transparent 1px),linear-gradient(90deg,var(--festival-wash-alt, rgba(16, 24, 40, .06)) 1px,transparent 1px);background-size:28px 28px}.festival-atmosphere--ribbons{background:radial-gradient(ellipse 40% 50% at 0% 20%,var(--festival-wash),transparent 70%),radial-gradient(ellipse 40% 50% at 100% 30%,var(--festival-wash-alt),transparent 70%)}.festival-atmosphere--glow{background:radial-gradient(circle at 0% 0%,var(--festival-wash),transparent 40%),radial-gradient(circle at 100% 100%,var(--festival-wash-alt),transparent 40%)}.festival-atmosphere--confetti{background-image:radial-gradient(circle at 10% 30%,var(--festival-accent) 1.5px,transparent 2px),radial-gradient(circle at 90% 20%,var(--festival-accent-deep) 1.5px,transparent 2px);background-size:90px 90px,110px 110px;animation:festival-drift 18s linear infinite}.festival-atmosphere-motifs{position:absolute;inset:0;overflow:hidden}.festival-atmosphere-motifs span{position:absolute;top:calc(12% + var(--i) * 22%);left:calc(2% + var(--i) * 2%);font-size:1.1rem;opacity:.28;animation:festival-float calc(7s + var(--i) * 1.4s) ease-in-out infinite;animation-delay:calc(var(--i) * -1.2s)}.festival-atmosphere-motifs span:nth-child(2){left:auto;right:3%}html[data-festival-tier=daily] body{background-image:radial-gradient(ellipse 90% 55% at 80% -10%,var(--festival-wash),transparent 55%),radial-gradient(ellipse 70% 50% at -15% 20%,var(--festival-wash-alt),transparent 50%),linear-gradient(165deg,#f4f7fb,#e8eef6 48%,#dfe8f2)}html[data-festival-tier=featured][data-festival-surface=light] body{background-image:radial-gradient(ellipse 90% 55% at 80% -10%,var(--festival-wash),transparent 55%),radial-gradient(ellipse 70% 50% at -15% 20%,var(--festival-wash-alt),transparent 50%),linear-gradient(165deg,#f7f8fc,#eef2f8 48%,#e4ebf4)}html[data-festival-tier=landmark] .brand-tag{color:var(--signal-deep)}@keyframes festival-drift{0%{background-position:0 0,20px 10px,0 0,40px 20px}to{background-position:90px 60px,-40px 80px,50px -30px,-20px 100px}}@keyframes festival-float{0%,to{transform:translateY(0) rotate(-6deg)}50%{transform:translateY(-10px) rotate(6deg)}}html[data-festival] body{transition:background-color .35s ease,background-image .45s ease}html[data-festival] .brand-mark{box-shadow:0 10px 24px var(--festival-brand-shadow, rgba(16, 24, 40, .22))}html[data-festival] .brand-mark:after{background:linear-gradient(90deg,transparent,var(--festival-beam, var(--signal)),transparent)}html[data-festival] .btn-signal{background:linear-gradient(135deg,var(--signal-deep),var(--signal));box-shadow:0 12px 28px var(--festival-cta-shadow, rgba(232, 93, 4, .28))}html[data-festival] .nav-links a.nav-feedback{color:var(--signal-deep);border-color:color-mix(in srgb,var(--signal) 45%,transparent)}html[data-festival=independence-day-in]{--signal: #ff9933;--signal-deep: #e07b12;--cobalt: #000080;--sky: #138808;--ok: #138808;--festival-beam: #ff9933;--festival-brand-shadow: rgba(255, 153, 51, .28);--festival-cta-shadow: rgba(19, 136, 8, .28);--festival-mark: linear-gradient(180deg, #ff9933 0 33%, #ffffff 33% 66%, #138808 66% 100%);--festival-mark-ring: rgba(0, 0, 128, .16)}html[data-festival=independence-day-in] body{background-color:#f7f4ef;background-image:linear-gradient(180deg,rgba(255,153,51,.42) 0%,rgba(255,153,51,.18) 18%,transparent 34%),linear-gradient(0deg,rgba(19,136,8,.38) 0%,rgba(19,136,8,.16) 18%,transparent 34%),radial-gradient(circle at 50% 42%,rgba(0,0,128,.12),transparent 28%),linear-gradient(165deg,#fffaf3,#f3f7f2 55%,#e8f0e8)}html[data-festival=independence-day-in] body:before{background:repeating-linear-gradient(90deg,#ff993312 0 12px,#ffffff0d 12px 24px,#13880812 24px 36px);opacity:.85;animation:none}html[data-festival=independence-day-in] .brand-mark{background:linear-gradient(180deg,#f93,#fff 48%,#138808);color:navy}html[data-festival=independence-day-in] .festival-banner{border-color:#0000802e;background:linear-gradient(90deg,#ff993338,#ffffffe6 40%,#1388082e)}html[data-festival=republic-day]{--signal: #ff9933;--signal-deep: #d97706;--cobalt: #000080;--sky: #1d4ed8;--ok: #138808;--festival-mark: linear-gradient(180deg, #ff9933 0 33%, #fff 33% 66%, #138808 66% 100%);--festival-mark-ring: rgba(0, 0, 128, .18);--festival-beam: #000080}html[data-festival=republic-day] body{background-image:linear-gradient(115deg,rgba(255,153,51,.28),transparent 40%),linear-gradient(245deg,rgba(19,136,8,.24),transparent 42%),radial-gradient(circle at 70% 10%,rgba(0,0,128,.14),transparent 35%),linear-gradient(165deg,#f8fafc,#eef2ff,#ecfdf5)}html[data-festival=republic-day] .brand-mark{background:navy;color:#fff}html[data-festival=holi]{--signal: #ec4899;--signal-deep: #db2777;--cobalt: #7c3aed;--sky: #22d3ee;--ok: #84cc16;--festival-mark: conic-gradient(#f472b6, #facc15, #34d399, #60a5fa, #c084fc, #f472b6);--festival-mark-ring: rgba(236, 72, 153, .2)}html[data-festival=holi] body{background-image:radial-gradient(circle at 12% 18%,rgba(244,114,182,.35),transparent 28%),radial-gradient(circle at 88% 12%,rgba(250,204,21,.32),transparent 26%),radial-gradient(circle at 78% 78%,rgba(52,211,153,.28),transparent 30%),radial-gradient(circle at 18% 82%,rgba(96,165,250,.3),transparent 28%),linear-gradient(165deg,#fff7fb,#f5f3ff,#ecfeff)}html[data-festival=diwali]{--signal: #f59e0b;--signal-deep: #b45309;--cobalt: #7c2d12;--sky: #fbbf24;--festival-mark: radial-gradient(circle at 50% 40%, #fde68a, #f59e0b 55%, #b45309);--festival-mark-ring: rgba(245, 158, 11, .25);--festival-beam: #fbbf24}html[data-festival=diwali] body{background-color:#1c1208;background-image:radial-gradient(ellipse 70% 45% at 50% -5%,rgba(251,191,36,.35),transparent 55%),radial-gradient(circle at 20% 80%,rgba(180,83,9,.28),transparent 35%),radial-gradient(circle at 85% 70%,rgba(245,158,11,.2),transparent 30%),linear-gradient(165deg,#2a1a0c,#1a120c 55%,#120c08);color:#f8fafc}html[data-festival=diwali]{--ink: #f8fafc;--ink-soft: #e7d5b8;--fog: #1c1208;--line: rgba(251, 191, 36, .22);--mist: rgba(251, 191, 36, .08)}html[data-festival=diwali] body:after{opacity:.25;background-image:radial-gradient(rgba(251,191,36,.45) 1px,transparent 1px)}html[data-festival=diwali] .panel,html[data-festival=diwali] .status-pill,html[data-festival=diwali] .festival-banner{background:#2a1a0cc7;border-color:#fbbf2440;color:#f8fafc}html[data-festival=diwali] .nav-links a:hover,html[data-festival=diwali] .nav-links a.active{background:#fbbf2424;color:#fff7ed}html[data-festival=diwali] .brand-name,html[data-festival=diwali] .nav-links a,html[data-festival=diwali] .footer a{color:#fde68a}html[data-festival=diwali] a:not(.nav-links a):not(.footer a):not(.brand){color:#fbbf24}html[data-festival=diwali] .brand-mark{background:linear-gradient(145deg,#fbbf24,#b45309);color:#1c1208}html[data-festival=christmas]{--signal: #dc2626;--signal-deep: #991b1b;--cobalt: #166534;--sky: #22c55e;--ok: #15803d;--festival-mark: linear-gradient(135deg, #dc2626, #166534);--festival-mark-ring: rgba(220, 38, 38, .18)}html[data-festival=christmas] body{background-image:radial-gradient(circle at 10% 10%,rgba(220,38,38,.2),transparent 28%),radial-gradient(circle at 90% 15%,rgba(22,101,52,.22),transparent 30%),radial-gradient(circle at 50% 100%,rgba(248,250,252,.55),transparent 40%),linear-gradient(165deg,#f8fafc,#ecfdf5 48%,#fef2f2)}html[data-festival=new-year]{--signal: #a855f7;--signal-deep: #7e22ce;--cobalt: #1d4ed8;--sky: #fbbf24;--festival-mark: linear-gradient(135deg, #fbbf24, #a855f7, #1d4ed8)}html[data-festival=new-year] body{background-image:radial-gradient(circle at 20% 20%,rgba(251,191,36,.28),transparent 25%),radial-gradient(circle at 80% 10%,rgba(168,85,247,.25),transparent 28%),radial-gradient(circle at 70% 80%,rgba(29,78,216,.18),transparent 30%),linear-gradient(165deg,#0f172a,#1e1b4b,#312e81);color:#f8fafc}html[data-festival=new-year]{--ink: #f8fafc;--ink-soft: #c7d2fe;--line: rgba(248, 250, 252, .16);--mist: rgba(248, 250, 252, .08)}html[data-festival=new-year] .brand-name,html[data-festival=new-year] a{color:#fde68a}html[data-festival=new-year] .panel,html[data-festival=new-year] .festival-banner,html[data-festival=new-year] .status-pill{background:#0f172ab8;border-color:#f8fafc24}html[data-festival=valentines]{--signal: #e11d48;--signal-deep: #be123c;--cobalt: #9f1239;--sky: #fb7185;--festival-mark: radial-gradient(circle at 40% 40%, #fb7185, #e11d48)}html[data-festival=valentines] body{background-image:radial-gradient(circle at 15% 20%,rgba(251,113,133,.35),transparent 30%),radial-gradient(circle at 85% 25%,rgba(225,29,72,.22),transparent 28%),linear-gradient(165deg,#fff1f2,#ffe4e6,#fdf2f8)}html[data-festival=womens-day]{--signal: #db2777;--signal-deep: #9d174d;--cobalt: #7e22ce;--sky: #f472b6;--festival-mark: linear-gradient(135deg, #f472b6, #7e22ce)}html[data-festival=womens-day] body{background-image:radial-gradient(ellipse at 80% 0%,rgba(244,114,182,.3),transparent 40%),radial-gradient(ellipse at 0% 40%,rgba(126,34,206,.18),transparent 40%),linear-gradient(165deg,#fdf4ff,#fce7f3 55%,#ede9fe)}html[data-festival=st-patricks]{--signal: #16a34a;--signal-deep: #166534;--cobalt: #14532d;--sky: #4ade80;--ok: #15803d;--festival-mark: linear-gradient(135deg, #22c55e, #166534)}html[data-festival=st-patricks] body{background-image:radial-gradient(circle at 20% 15%,rgba(74,222,128,.35),transparent 30%),radial-gradient(circle at 90% 70%,rgba(22,101,52,.2),transparent 32%),linear-gradient(165deg,#f0fdf4,#dcfce7,#ecfccb)}html[data-festival=eid-fitr],html[data-festival=eid-adha]{--signal: #059669;--signal-deep: #047857;--cobalt: #0f766e;--sky: #fbbf24;--festival-mark: linear-gradient(135deg, #059669, #fbbf24);--festival-beam: #fbbf24}html[data-festival=eid-fitr] body,html[data-festival=eid-adha] body{background-image:radial-gradient(circle at 70% 8%,rgba(251,191,36,.28),transparent 28%),radial-gradient(circle at 10% 80%,rgba(5,150,105,.22),transparent 30%),linear-gradient(165deg,#ecfdf5,#f0fdf4 45%,#fffbeb)}html[data-festival=earth-day]{--signal: #0d9488;--signal-deep: #0f766e;--cobalt: #1d4e89;--sky: #38bdf8;--ok: #15803d;--festival-mark: linear-gradient(135deg, #38bdf8, #15803d)}html[data-festival=earth-day] body{background-image:radial-gradient(circle at 30% 20%,rgba(56,189,248,.28),transparent 32%),radial-gradient(circle at 80% 70%,rgba(21,128,61,.22),transparent 34%),linear-gradient(165deg,#f0f9ff,#ecfdf5 55%,#f0fdfa)}html[data-festival=pride]{--signal: #e11d48;--signal-deep: #be123c;--cobalt: #2563eb;--sky: #facc15;--festival-mark: linear-gradient( 90deg, #ef4444, #f97316, #eab308, #22c55e, #3b82f6, #8b5cf6 )}html[data-festival=pride] body{background-image:linear-gradient(120deg,#ef44441f,#f973161a,#eab3081a,#22c55e1a,#3b82f61a,#8b5cf61f),linear-gradient(165deg,#fff7ed,#f8fafc,#f5f3ff)}html[data-festival=pride] body:before{background:linear-gradient(90deg,#ef4444,#f97316,#eab308,#22c55e,#3b82f6,#8b5cf6);opacity:.12;height:6px;inset:0 0 auto;animation:none}html[data-festival=independence-day-us]{--signal: #dc2626;--signal-deep: #991b1b;--cobalt: #1e3a8a;--sky: #3b82f6;--festival-mark: linear-gradient(180deg, #1e3a8a 0 40%, #fff 40% 60%, #dc2626 60% 100%)}html[data-festival=independence-day-us] body{background-image:linear-gradient(180deg,rgba(30,58,138,.22),transparent 28%),linear-gradient(0deg,rgba(220,38,38,.18),transparent 24%),linear-gradient(165deg,#eff6ff,#fff,#fef2f2)}html[data-festival=onam]{--signal: #ca8a04;--signal-deep: #a16207;--cobalt: #166534;--sky: #facc15;--ok: #15803d;--festival-mark: radial-gradient(circle, #facc15 0 30%, #166534 30% 55%, #ca8a04 55% 100%)}html[data-festival=onam] body{background-image:radial-gradient(circle at 50% 0%,rgba(250,204,21,.3),transparent 35%),radial-gradient(circle at 15% 80%,rgba(22,101,52,.2),transparent 30%),linear-gradient(165deg,#fefce8,#ecfdf5 55%,#fff7ed)}html[data-festival=raksha-bandhan]{--signal: #db2777;--signal-deep: #be185d;--cobalt: #9d174d;--sky: #f9a8d4;--festival-mark: linear-gradient(135deg, #f9a8d4, #db2777, #fbbf24)}html[data-festival=raksha-bandhan] body{background-image:radial-gradient(circle at 20% 15%,rgba(249,168,212,.4),transparent 28%),radial-gradient(circle at 85% 20%,rgba(251,191,36,.25),transparent 26%),linear-gradient(165deg,#fff1f2,#fdf2f8,#fffbeb)}html[data-festival=janmashtami]{--signal: #f59e0b;--signal-deep: #b45309;--cobalt: #1d4ed8;--sky: #60a5fa;--festival-mark: linear-gradient(135deg, #fbbf24, #1d4ed8)}html[data-festival=janmashtami] body{background-image:radial-gradient(circle at 75% 10%,rgba(251,191,36,.32),transparent 30%),radial-gradient(circle at 10% 70%,rgba(29,78,216,.2),transparent 32%),linear-gradient(165deg,#eff6ff,#fffbeb 55%,#f8fafc)}html[data-festival=ganesh-chaturthi]{--signal: #ea580c;--signal-deep: #c2410c;--cobalt: #7c2d12;--sky: #fbbf24;--festival-mark: linear-gradient(135deg, #fb923c, #b45309)}html[data-festival=ganesh-chaturthi] body{background-image:radial-gradient(circle at 50% 0%,rgba(251,146,60,.35),transparent 35%),radial-gradient(circle at 90% 80%,rgba(180,83,9,.18),transparent 30%),linear-gradient(165deg,#fff7ed,#ffedd5,#fef3c7)}html[data-festival=teachers-day]{--signal: #2563eb;--signal-deep: #1d4ed8;--cobalt: #1e3a8a;--sky: #60a5fa;--festival-mark: linear-gradient(135deg, #60a5fa, #1d4ed8)}html[data-festival=teachers-day] body{background-image:radial-gradient(circle at 80% -5%,rgba(96,165,250,.3),transparent 35%),linear-gradient(165deg,#eff6ff,#f8fafc 55%,#eef2ff)}html[data-festival=mid-autumn]{--signal: #f59e0b;--signal-deep: #b45309;--cobalt: #9a3412;--sky: #fde68a;--festival-mark: radial-gradient(circle, #fde68a, #f59e0b 60%, #9a3412)}html[data-festival=mid-autumn] body{background-color:#1a1208;background-image:radial-gradient(circle at 80% 12%,rgba(253,230,138,.45),transparent 22%),radial-gradient(circle at 20% 80%,rgba(154,52,18,.25),transparent 30%),linear-gradient(165deg,#1c1410,#2a1a0c 55%,#120c08);color:#fff7ed}html[data-festival=mid-autumn]{--ink: #fff7ed;--ink-soft: #fde68a;--line: rgba(253, 230, 138, .2)}html[data-festival=mid-autumn] .panel,html[data-festival=mid-autumn] .festival-banner{background:#1c1410c7;border-color:#fde68a38}html[data-festival=gandhi-jayanti]{--signal: #64748b;--signal-deep: #475569;--cobalt: #334155;--sky: #94a3b8;--ok: #0f766e;--festival-mark: linear-gradient(135deg, #e2e8f0, #64748b)}html[data-festival=gandhi-jayanti] body{background-image:radial-gradient(circle at 50% 0%,rgba(148,163,184,.25),transparent 40%),linear-gradient(165deg,#f8fafc,#f1f5f9 55%,#e2e8f0)}html[data-festival=navratri]{--signal: #dc2626;--signal-deep: #b91c1c;--cobalt: #7c3aed;--sky: #fbbf24;--festival-mark: linear-gradient(90deg, #dc2626, #f59e0b, #16a34a, #2563eb, #7c3aed)}html[data-festival=navratri] body{background-image:linear-gradient(135deg,#dc26261f,#f59e0b1a,#16a34a1a,#2563eb1a,#7c3aed1f),linear-gradient(165deg,#fff7ed,#faf5ff 55%,#eff6ff)}html[data-festival=dussehra]{--signal: #ea580c;--signal-deep: #c2410c;--cobalt: #9a3412;--sky: #fbbf24;--festival-mark: linear-gradient(135deg, #fb923c, #dc2626)}html[data-festival=dussehra] body{background-image:radial-gradient(circle at 50% 0%,rgba(251,146,60,.35),transparent 38%),radial-gradient(circle at 10% 90%,rgba(220,38,38,.18),transparent 30%),linear-gradient(165deg,#fff7ed,#ffedd5,#fef2f2)}html[data-festival=halloween]{--signal: #f97316;--signal-deep: #c2410c;--cobalt: #581c87;--sky: #a855f7;--festival-mark: linear-gradient(135deg, #f97316, #581c87)}html[data-festival=halloween] body{background-color:#1a1025;background-image:radial-gradient(circle at 20% 20%,rgba(249,115,22,.28),transparent 28%),radial-gradient(circle at 85% 15%,rgba(88,28,135,.35),transparent 30%),linear-gradient(165deg,#1a1025,#2e1065 55%,#171717);color:#f8fafc}html[data-festival=halloween]{--ink: #f8fafc;--ink-soft: #e9d5ff;--line: rgba(249, 115, 22, .25)}html[data-festival=halloween] .panel,html[data-festival=halloween] .festival-banner{background:#1a1025cc;border-color:#f9731647}html[data-festival=halloween] .brand-name,html[data-festival=halloween] a{color:#fdba74}html[data-festival=thanksgiving-us]{--signal: #c2410c;--signal-deep: #9a3412;--cobalt: #78350f;--sky: #fbbf24;--festival-mark: linear-gradient(135deg, #fbbf24, #c2410c, #78350f)}html[data-festival=thanksgiving-us] body{background-image:radial-gradient(circle at 30% 10%,rgba(251,191,36,.28),transparent 30%),radial-gradient(circle at 90% 70%,rgba(194,65,12,.2),transparent 32%),linear-gradient(165deg,#fffbeb,#ffedd5,#fef3c7)}html[data-festival=makar-sankranti]{--signal: #ea580c;--signal-deep: #c2410c;--cobalt: #b45309;--sky: #facc15;--festival-mark: linear-gradient(135deg, #facc15, #ea580c)}html[data-festival=makar-sankranti] body{background-image:radial-gradient(circle at 50% -10%,rgba(250,204,21,.4),transparent 35%),radial-gradient(circle at 10% 80%,rgba(234,88,12,.2),transparent 30%),linear-gradient(165deg,#fffbeb,#ffedd5,#fef9c3)}html[data-festival=world-youth-day],html[data-festival=national-youth-day-in]{--signal: #7c3aed;--signal-deep: #5b21b6;--cobalt: #2563eb;--sky: #22d3ee;--festival-mark: linear-gradient(135deg, #22d3ee, #7c3aed, #f472b6);--festival-beam: #22d3ee}html[data-festival=world-youth-day] body,html[data-festival=national-youth-day-in] body{background-image:radial-gradient(circle at 12% 18%,rgba(34,211,238,.32),transparent 28%),radial-gradient(circle at 88% 12%,rgba(244,114,182,.28),transparent 26%),radial-gradient(circle at 70% 80%,rgba(124,58,237,.22),transparent 30%),linear-gradient(165deg,#ecfeff,#f5f3ff 48%,#fdf2f8)}html[data-festival=international-tea-day]{--signal: #16a34a;--signal-deep: #166534;--cobalt: #3f6212;--sky: #86efac;--festival-mark: linear-gradient(135deg, #bbf7d0, #16a34a, #713f12)}html[data-festival=international-tea-day] body{background-image:radial-gradient(circle at 20% 10%,rgba(134,239,172,.35),transparent 30%),radial-gradient(circle at 85% 70%,rgba(113,63,18,.14),transparent 32%),linear-gradient(165deg,#f0fdf4,#ecfccb,#fef3c7)}html[data-festival=world-coffee-day]{--signal: #92400e;--signal-deep: #78350f;--cobalt: #44403c;--sky: #d6d3d1;--festival-mark: linear-gradient(135deg, #d6d3d1, #92400e, #1c1917)}html[data-festival=world-coffee-day] body{background-image:radial-gradient(circle at 30% 15%,rgba(214,211,209,.45),transparent 28%),radial-gradient(circle at 80% 75%,rgba(146,64,14,.22),transparent 30%),linear-gradient(165deg,#fafaf9,#f5f5f4,#fef3c7)}html[data-festival=world-chocolate-day]{--signal: #7c2d12;--signal-deep: #5c1a0a;--cobalt: #44403c;--sky: #fdba74;--festival-mark: linear-gradient(135deg, #fdba74, #7c2d12)}html[data-festival=world-chocolate-day] body{background-image:radial-gradient(circle at 50% 0%,rgba(253,186,116,.3),transparent 32%),linear-gradient(165deg,#fff7ed,#ffedd5 45%,#fce7f3)}html[data-festival=yuris-night],html[data-festival=hubble-day],html[data-festival=apollo-moon-day],html[data-festival=chandrayaan-day],html[data-festival=voyager-day],html[data-festival=mangalyaan-day],html[data-festival=sputnik-day],html[data-festival=world-space-week],html[data-festival=asteroid-day],html[data-festival=perseverance-day],html[data-festival=aryabhata-day]{--signal: #38bdf8;--signal-deep: #0284c7;--cobalt: #c4b5fd;--sky: #f8fafc;--ink: #e2e8f0;--ink-soft: #94a3b8;--line: rgba(56, 189, 248, .22);--mist: rgba(56, 189, 248, .08);--festival-mark: radial-gradient(circle at 40% 35%, #f8fafc, #38bdf8 45%, #1e1b4b 80%);--festival-beam: #38bdf8}html[data-festival=yuris-night] body,html[data-festival=hubble-day] body,html[data-festival=apollo-moon-day] body,html[data-festival=chandrayaan-day] body,html[data-festival=voyager-day] body,html[data-festival=mangalyaan-day] body,html[data-festival=sputnik-day] body,html[data-festival=world-space-week] body,html[data-festival=asteroid-day] body,html[data-festival=perseverance-day] body,html[data-festival=aryabhata-day] body{background-color:#070b16;background-image:radial-gradient(circle at 15% 20%,rgba(56,189,248,.2),transparent 22%),radial-gradient(circle at 80% 15%,rgba(196,181,253,.18),transparent 24%),radial-gradient(circle at 60% 80%,rgba(14,165,233,.12),transparent 30%),linear-gradient(165deg,#070b16,#111827,#0f172a);color:#e2e8f0}html[data-festival=yuris-night] body:after,html[data-festival=hubble-day] body:after,html[data-festival=apollo-moon-day] body:after,html[data-festival=chandrayaan-day] body:after,html[data-festival=voyager-day] body:after,html[data-festival=mangalyaan-day] body:after,html[data-festival=sputnik-day] body:after,html[data-festival=world-space-week] body:after,html[data-festival=asteroid-day] body:after,html[data-festival=perseverance-day] body:after,html[data-festival=aryabhata-day] body:after{opacity:.55;background-image:radial-gradient(#f8fafc 1px,transparent 1px);background-size:18px 18px}html[data-festival=yuris-night] .panel,html[data-festival=hubble-day] .panel,html[data-festival=apollo-moon-day] .panel,html[data-festival=chandrayaan-day] .panel,html[data-festival=voyager-day] .panel,html[data-festival=mangalyaan-day] .panel,html[data-festival=sputnik-day] .panel,html[data-festival=world-space-week] .panel,html[data-festival=asteroid-day] .panel,html[data-festival=perseverance-day] .panel,html[data-festival=aryabhata-day] .panel,html[data-festival=yuris-night] .festival-banner,html[data-festival=hubble-day] .festival-banner,html[data-festival=apollo-moon-day] .festival-banner,html[data-festival=chandrayaan-day] .festival-banner,html[data-festival=voyager-day] .festival-banner,html[data-festival=mangalyaan-day] .festival-banner,html[data-festival=sputnik-day] .festival-banner,html[data-festival=world-space-week] .festival-banner,html[data-festival=asteroid-day] .festival-banner,html[data-festival=perseverance-day] .festival-banner,html[data-festival=aryabhata-day] .festival-banner,html[data-festival=yuris-night] .status-pill,html[data-festival=hubble-day] .status-pill,html[data-festival=apollo-moon-day] .status-pill,html[data-festival=chandrayaan-day] .status-pill,html[data-festival=voyager-day] .status-pill,html[data-festival=mangalyaan-day] .status-pill,html[data-festival=sputnik-day] .status-pill,html[data-festival=world-space-week] .status-pill,html[data-festival=asteroid-day] .status-pill,html[data-festival=perseverance-day] .status-pill,html[data-festival=aryabhata-day] .status-pill{background:#0f172ac7;border-color:#38bdf838;color:#e2e8f0}html[data-festival=yuris-night] .brand-name,html[data-festival=hubble-day] .brand-name,html[data-festival=apollo-moon-day] .brand-name,html[data-festival=chandrayaan-day] .brand-name,html[data-festival=voyager-day] .brand-name,html[data-festival=mangalyaan-day] .brand-name,html[data-festival=sputnik-day] .brand-name,html[data-festival=world-space-week] .brand-name,html[data-festival=asteroid-day] .brand-name,html[data-festival=perseverance-day] .brand-name,html[data-festival=aryabhata-day] .brand-name,html[data-festival=yuris-night] a,html[data-festival=hubble-day] a,html[data-festival=apollo-moon-day] a,html[data-festival=chandrayaan-day] a,html[data-festival=voyager-day] a,html[data-festival=mangalyaan-day] a,html[data-festival=sputnik-day] a,html[data-festival=world-space-week] a,html[data-festival=asteroid-day] a,html[data-festival=perseverance-day] a,html[data-festival=aryabhata-day] a{color:#7dd3fc}html[data-festival=chandrayaan-day]{--signal: #ff9933;--signal-deep: #ea580c;--cobalt: #38bdf8;--festival-mark: linear-gradient(180deg, #ff9933, #f8fafc 45%, #138808)}html[data-festival=world-emoji-day],html[data-festival=selfie-day],html[data-festival=friendship-day],html[data-festival=world-music-day],html[data-festival=international-cat-day],html[data-festival=international-dog-day],html[data-festival=world-photography-day]{--signal: #f43f5e;--signal-deep: #e11d48;--cobalt: #8b5cf6;--sky: #22d3ee;--festival-mark: linear-gradient(135deg, #22d3ee, #f43f5e, #8b5cf6)}html[data-festival=world-emoji-day] body,html[data-festival=selfie-day] body,html[data-festival=friendship-day] body,html[data-festival=world-music-day] body,html[data-festival=international-cat-day] body,html[data-festival=international-dog-day] body,html[data-festival=world-photography-day] body{background-image:radial-gradient(circle at 10% 20%,rgba(244,63,94,.22),transparent 28%),radial-gradient(circle at 90% 15%,rgba(139,92,246,.2),transparent 26%),radial-gradient(circle at 70% 85%,rgba(34,211,238,.18),transparent 28%),linear-gradient(165deg,#fff1f2,#f5f3ff,#ecfeff)}html[data-festival=star-wars-day],html[data-festival=towel-day],html[data-festival=back-to-the-future-day]{--signal: #facc15;--signal-deep: #ca8a04;--cobalt: #1d4ed8;--sky: #38bdf8;--festival-mark: linear-gradient(135deg, #facc15, #1d4ed8)}html[data-festival=star-wars-day] body,html[data-festival=towel-day] body,html[data-festival=back-to-the-future-day] body{background-color:#0b1220;background-image:radial-gradient(circle at 20% 20%,rgba(250,204,21,.2),transparent 25%),radial-gradient(circle at 80% 30%,rgba(29,78,216,.25),transparent 28%),linear-gradient(165deg,#0b1220,#111827 55%,#1e293b);color:#e2e8f0}html[data-festival=star-wars-day],html[data-festival=towel-day],html[data-festival=back-to-the-future-day]{--ink: #e2e8f0;--ink-soft: #94a3b8;--line: rgba(250, 204, 21, .2)}html[data-festival=star-wars-day] .panel,html[data-festival=towel-day] .panel,html[data-festival=back-to-the-future-day] .panel,html[data-festival=star-wars-day] .festival-banner,html[data-festival=towel-day] .festival-banner,html[data-festival=back-to-the-future-day] .festival-banner{background:#0f172acc;border-color:#facc1538}html[data-festival=www-day],html[data-festival=internet-day],html[data-festival=linux-day],html[data-festival=wikipedia-day],html[data-festival=programmers-day],html[data-festival=pi-day],html[data-festival=national-science-day-in],html[data-festival=national-technology-day-in]{--signal: #06b6d4;--signal-deep: #0e7490;--cobalt: #4f46e5;--sky: #67e8f9;--festival-mark: linear-gradient(135deg, #67e8f9, #4f46e5)}html[data-festival=www-day] body,html[data-festival=internet-day] body,html[data-festival=linux-day] body,html[data-festival=wikipedia-day] body,html[data-festival=programmers-day] body,html[data-festival=pi-day] body,html[data-festival=national-science-day-in] body,html[data-festival=national-technology-day-in] body{background-image:radial-gradient(circle at 15% 15%,rgba(103,232,249,.28),transparent 28%),radial-gradient(circle at 85% 20%,rgba(79,70,229,.18),transparent 28%),linear-gradient(165deg,#ecfeff,#eef2ff,#f8fafc)}html[data-festival=world-happiness-day],html[data-festival=world-kindness-day],html[data-festival=world-mental-health-day]{--signal: #14b8a6;--signal-deep: #0f766e;--cobalt: #0369a1;--sky: #5eead4;--festival-mark: linear-gradient(135deg, #5eead4, #38bdf8)}html[data-festival=world-happiness-day] body,html[data-festival=world-kindness-day] body,html[data-festival=world-mental-health-day] body{background-image:radial-gradient(circle at 20% 20%,rgba(94,234,212,.3),transparent 30%),radial-gradient(circle at 80% 15%,rgba(56,189,248,.22),transparent 28%),linear-gradient(165deg,#f0fdfa,#ecfeff 55%,#f8fafc)}html[data-festival=national-sports-day-in],html[data-festival=kargil-vijay-diwas],html[data-festival=constitution-day-in],html[data-festival=wright-brothers-day]{--signal: #ea580c;--signal-deep: #c2410c;--cobalt: #1d4e89;--sky: #fb923c;--festival-mark: linear-gradient(135deg, #fb923c, #1d4e89)}html[data-festival=national-sports-day-in] body,html[data-festival=kargil-vijay-diwas] body,html[data-festival=constitution-day-in] body,html[data-festival=wright-brothers-day] body{background-image:radial-gradient(circle at 80% 10%,rgba(251,146,60,.25),transparent 30%),radial-gradient(circle at 10% 70%,rgba(29,78,137,.16),transparent 30%),linear-gradient(165deg,#fff7ed,#f8fafc 55%,#eff6ff)}html[data-festival=world-environment-day]{--signal: #16a34a;--signal-deep: #15803d;--cobalt: #0f766e;--sky: #4ade80;--festival-mark: linear-gradient(135deg, #4ade80, #0f766e)}html[data-festival=world-environment-day] body{background-image:radial-gradient(circle at 25% 20%,rgba(74,222,128,.3),transparent 30%),linear-gradient(165deg,#f0fdf4,#ecfdf5,#f0f9ff)}html[data-festival^=d][data-festival-visual=fun]{--signal: #f43f5e;--signal-deep: #e11d48;--cobalt: #8b5cf6;--sky: #22d3ee;--festival-mark: linear-gradient(135deg, #22d3ee, #f43f5e, #8b5cf6)}html[data-festival^=d][data-festival-visual=fun] body{background-image:radial-gradient(circle at 15% 20%,rgba(244,114,182,.22),transparent 28%),radial-gradient(circle at 85% 15%,rgba(56,189,248,.2),transparent 26%),linear-gradient(165deg,#fff7ed,#fdf2f8,#ecfeff)}html[data-festival^=d][data-festival-visual=food]{--signal: #ea580c;--signal-deep: #c2410c;--cobalt: #9a3412;--sky: #fdba74;--festival-mark: linear-gradient(135deg, #fdba74, #ea580c)}html[data-festival^=d][data-festival-visual=food] body{background-image:radial-gradient(circle at 20% 15%,rgba(253,186,116,.35),transparent 28%),radial-gradient(circle at 80% 70%,rgba(234,88,12,.16),transparent 30%),linear-gradient(165deg,#fff7ed,#ffedd5 55%,#fef3c7)}html[data-festival^=d][data-festival-visual=nature]{--signal: #16a34a;--signal-deep: #15803d;--cobalt: #166534;--sky: #86efac;--festival-mark: linear-gradient(135deg, #86efac, #16a34a)}html[data-festival^=d][data-festival-visual=nature] body{background-image:radial-gradient(circle at 25% 20%,rgba(134,239,172,.32),transparent 30%),linear-gradient(165deg,#f0fdf4,#ecfccb,#f0f9ff)}html[data-festival^=d][data-festival-visual=tech]{--signal: #06b6d4;--signal-deep: #0e7490;--cobalt: #4f46e5;--sky: #67e8f9;--festival-mark: linear-gradient(135deg, #67e8f9, #4f46e5)}html[data-festival^=d][data-festival-visual=tech] body{background-image:radial-gradient(circle at 15% 15%,rgba(103,232,249,.28),transparent 28%),radial-gradient(circle at 85% 20%,rgba(79,70,229,.16),transparent 28%),linear-gradient(165deg,#ecfeff,#eef2ff,#f8fafc)}html[data-festival^=d][data-festival-visual=arts]{--signal: #db2777;--signal-deep: #9d174d;--cobalt: #7c3aed;--sky: #f9a8d4;--festival-mark: linear-gradient(135deg, #f9a8d4, #7c3aed)}html[data-festival^=d][data-festival-visual=arts] body{background-image:radial-gradient(circle at 20% 20%,rgba(249,168,212,.3),transparent 28%),radial-gradient(circle at 80% 15%,rgba(124,58,237,.18),transparent 28%),linear-gradient(165deg,#fdf2f8,#faf5ff 55%,#fff7ed)}html[data-festival^=d][data-festival-visual=health]{--signal: #14b8a6;--signal-deep: #0f766e;--cobalt: #0369a1;--sky: #5eead4;--festival-mark: linear-gradient(135deg, #5eead4, #38bdf8)}html[data-festival^=d][data-festival-visual=health] body{background-image:radial-gradient(circle at 20% 20%,rgba(94,234,212,.3),transparent 30%),linear-gradient(165deg,#f0fdfa,#ecfeff 55%,#f8fafc)}html[data-festival^=d][data-festival-visual=animals]{--signal: #f59e0b;--signal-deep: #d97706;--cobalt: #92400e;--sky: #fde68a;--festival-mark: linear-gradient(135deg, #fde68a, #f59e0b)}html[data-festival^=d][data-festival-visual=animals] body{background-image:radial-gradient(circle at 30% 15%,rgba(253,230,138,.35),transparent 28%),linear-gradient(165deg,#fffbeb,#fef3c7,#ecfdf5)}html[data-festival^=d][data-festival-visual=history]{--signal: #a16207;--signal-deep: #854d0e;--cobalt: #44403c;--sky: #d6d3d1;--festival-mark: linear-gradient(135deg, #d6d3d1, #a16207)}html[data-festival^=d][data-festival-visual=history] body{background-image:radial-gradient(circle at 50% 0%,rgba(214,211,209,.4),transparent 35%),linear-gradient(165deg,#fafaf9,#f5f5f4 55%,#fef3c7)}html[data-festival^=d][data-festival-visual=sports]{--signal: #2563eb;--signal-deep: #1d4ed8;--cobalt: #1e3a8a;--sky: #60a5fa;--festival-mark: linear-gradient(135deg, #60a5fa, #2563eb)}html[data-festival^=d][data-festival-visual=sports] body{background-image:radial-gradient(circle at 80% 10%,rgba(96,165,250,.3),transparent 30%),linear-gradient(165deg,#eff6ff,#f8fafc 55%,#ecfdf5)}html[data-festival^=d][data-festival-visual=social]{--signal: #e11d48;--signal-deep: #be123c;--cobalt: #9f1239;--sky: #fb7185;--festival-mark: linear-gradient(135deg, #fb7185, #e11d48)}html[data-festival^=d][data-festival-visual=social] body{background-image:radial-gradient(circle at 15% 20%,rgba(251,113,133,.28),transparent 28%),linear-gradient(165deg,#fff1f2,#fdf2f8,#eef2ff)}html[data-festival^=d][data-festival-visual=space]{--signal: #38bdf8;--signal-deep: #0284c7;--cobalt: #c4b5fd;--ink: #e2e8f0;--ink-soft: #94a3b8;--line: rgba(56, 189, 248, .22);--festival-mark: radial-gradient(circle at 40% 35%, #f8fafc, #38bdf8 45%, #1e1b4b 80%)}html[data-festival^=d][data-festival-visual=space] body{background-color:#070b16;background-image:radial-gradient(circle at 15% 20%,rgba(56,189,248,.2),transparent 22%),radial-gradient(circle at 80% 15%,rgba(196,181,253,.18),transparent 24%),linear-gradient(165deg,#070b16,#111827,#0f172a);color:#e2e8f0}html[data-festival^=d][data-festival-visual=youth]{--signal: #7c3aed;--signal-deep: #5b21b6;--cobalt: #2563eb;--sky: #22d3ee;--festival-mark: linear-gradient(135deg, #22d3ee, #7c3aed, #f472b6)}html[data-festival^=d][data-festival-visual=youth] body{background-image:radial-gradient(circle at 12% 18%,rgba(34,211,238,.32),transparent 28%),radial-gradient(circle at 88% 12%,rgba(244,114,182,.28),transparent 26%),linear-gradient(165deg,#ecfeff,#f5f3ff 48%,#fdf2f8)}html[data-festival-surface=dark]{color-scheme:dark}html[data-festival-surface=dark] .nav-links a{color:color-mix(in srgb,var(--ink-soft, #e7d5b8) 92%,white)}html[data-festival-surface=dark] .nav-links a:hover,html[data-festival-surface=dark] .nav-links a.active{background:#ffffff1a;color:#fff}html[data-festival-surface=dark] .brand-name{color:#fde68a}html[data-festival-surface=dark] .brand-tag{color:color-mix(in srgb,var(--ink-soft, #e7d5b8) 85%,white)}html[data-festival-surface=dark] .hero-line,html[data-festival-surface=dark] .muted,html[data-festival-surface=dark] .hero-kicker{color:color-mix(in srgb,var(--ink-soft, #e7d5b8) 90%,white)}html[data-festival-surface=dark] .footer,html[data-festival-surface=dark] .footer a{color:color-mix(in srgb,var(--ink-soft, #e7d5b8) 88%,white)}html[data-festival=diwali] .nav-links a,html[data-festival=halloween] .nav-links a,html[data-festival=new-year] .nav-links a{color:#fde68a}html[data-festival=diwali] .hero-line,html[data-festival=diwali] .muted,html[data-festival=halloween] .hero-line,html[data-festival=halloween] .muted,html[data-festival=new-year] .hero-line,html[data-festival=new-year] .muted{color:#e7d5b8}.festival-banner{position:relative;z-index:2;flex-shrink:0}.app-shell>.festival-banner{margin-bottom:1rem}.festival-fx{pointer-events:none;position:fixed;inset:0;z-index:0;overflow:hidden;contain:paint}.fx-fireworks .fx-firework{position:absolute;width:6px;height:6px;border-radius:50%;left:calc(8% + var(--i) * 12%);bottom:8%;background:#fbbf24;box-shadow:0 0 #fbbf24,0 0 12px #f59e0b;animation:fx-burst calc(2.4s + var(--i) * .25s) ease-out infinite;animation-delay:calc(var(--i) * .35s)}.fx-fireworks .fx-firework:nth-child(odd){left:calc(55% + var(--i) * 6%);background:#fb7185}.fx-diya{position:absolute;bottom:1.2rem;left:calc(10% + var(--i) * 18%);font-size:1.35rem;animation:fx-flicker calc(1.4s + var(--i) * .2s) ease-in-out infinite;filter:drop-shadow(0 0 8px rgba(251,191,36,.7))}.fx-ravana{position:absolute;right:1.5%;bottom:12%;width:5.5rem}.fx-ravana-figure{display:grid;justify-items:center;gap:.15rem;animation:fx-ravana-sway 3.2s ease-in-out infinite;opacity:.85}.fx-ravana-crown{font-size:1.4rem}.fx-ravana-face{font-size:2.4rem;line-height:1}.fx-ravana-label{font-size:.65rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#fb923c;background:#1c12088c;padding:.15rem .4rem;border-radius:999px}.fx-ember{position:absolute;width:5px;height:5px;border-radius:50%;background:#f97316;left:calc(30% + var(--i) * 10%);bottom:20%;animation:fx-ember-rise calc(2s + var(--i) * .3s) ease-in infinite;animation-delay:calc(var(--i) * .25s)}.fx-santa-sleigh{position:absolute;top:10%;left:-20%;font-size:1.8rem;animation:fx-santa-fly 16s linear infinite;filter:drop-shadow(0 4px 10px rgba(0,0,0,.2))}.fx-snow{position:absolute;top:-10%;left:calc(var(--i) * 5.5%);font-size:calc(.55rem + (var(--i) % 3) * .2rem);opacity:.55;animation:fx-snow-fall calc(7s + var(--i) * .45s) linear infinite;animation-delay:calc(var(--i) * -.4s)}.fx-youth-item{position:absolute;font-size:1.5rem;opacity:.7;animation:fx-youth-bounce calc(3.5s + var(--i) * .4s) ease-in-out infinite}.fx-youth-item:nth-child(1){left:2%;top:22%}.fx-youth-item:nth-child(2){right:2%;top:30%}.fx-youth-item:nth-child(3){left:3%;bottom:28%}.fx-youth-item:nth-child(4){right:3%;bottom:22%}.fx-youth-item:nth-child(5){right:4%;top:55%}.fx-powder{position:absolute;width:14px;height:14px;border-radius:50%;left:calc(5% + var(--i) * 9%);top:calc(15% + (var(--i) % 4) * 12%);background:hsl(calc(var(--i) * 36) 85% 60% / .65);animation:fx-powder-pop calc(2.8s + var(--i) * .2s) ease-out infinite;animation-delay:calc(var(--i) * .2s)}.fx-ribbon{position:absolute;top:0;width:28%;height:8px;opacity:.55;animation:fx-ribbon-wave 4s ease-in-out infinite}.fx-ribbon--saffron{left:0;background:#f93}.fx-ribbon--white{left:36%;background:#fff;animation-delay:.3s}.fx-ribbon--green{right:0;left:auto;background:#138808;animation-delay:.6s}.fx-ribbon--us-red{left:0;background:#dc2626}.fx-ribbon--us-white{left:36%;background:#fff;animation-delay:.3s}.fx-ribbon--us-blue{right:0;left:auto;background:#1e3a8a;animation-delay:.6s}.fx-us-star{position:absolute!important;top:calc(12% + (var(--i) % 4) * 10%)!important;left:calc(4% + var(--i) * 8%)!important;font-size:.85rem;animation:fx-sparkle 2.4s ease-in-out infinite;animation-delay:calc(var(--i) * .2s)}.fx-parade{position:absolute;inset:0}.fx-parade-item{position:absolute;font-size:1.35rem;opacity:.72;left:calc(2% + (var(--i) % 2) * 90%);top:calc(12% + var(--i) * 8%);filter:drop-shadow(0 2px 6px rgba(16,24,40,.18))}.fx-parade--float .fx-parade-item{animation:fx-youth-bounce calc(3.2s + var(--i) * .25s) ease-in-out infinite;animation-delay:calc(var(--i) * -.35s)}.fx-parade--bounce .fx-parade-item{animation:fx-parade-bounce calc(2.4s + var(--i) * .2s) ease-in-out infinite;animation-delay:calc(var(--i) * -.2s)}.fx-parade--fall .fx-parade-item{top:-8%;left:calc(6% + var(--i) * 9%);animation:fx-snow-fall calc(8s + var(--i) * .4s) linear infinite;animation-delay:calc(var(--i) * -.5s)}.fx-parade--fly .fx-parade-item{top:calc(18% + (var(--i) % 5) * 12%);left:-12%;animation:fx-bat-fly calc(11s + var(--i) * .7s) linear infinite;animation-delay:calc(var(--i) * .55s)}.fx-parade--orbit .fx-parade-item{left:50%;top:50%;animation:fx-orbit calc(10s + var(--i) * .6s) linear infinite;animation-delay:calc(var(--i) * -.8s);transform-origin:calc(-42vw + (var(--i) % 3) * 8vw) calc(-28vh + (var(--i) % 2) * 12vh)}.fx-parade--pulse .fx-parade-item{animation:fx-sparkle calc(2.6s + var(--i) * .2s) ease-in-out infinite;animation-delay:calc(var(--i) * .22s)}@keyframes fx-parade-bounce{0%,to{transform:translateY(0) scale(1)}40%{transform:translateY(-16px) scale(1.12)}60%{transform:translateY(-6px) scale(.96)}}@keyframes fx-orbit{0%{transform:rotate(0) translate(46vw) rotate(0)}to{transform:rotate(360deg) translate(46vw) rotate(-360deg)}}.fx-bat{position:absolute;top:calc(8% + var(--i) * 10%);left:-10%;font-size:1.2rem;animation:fx-bat-fly calc(10s + var(--i) * 1.2s) linear infinite;animation-delay:calc(var(--i) * 1.1s)}.fx-spark{position:absolute;left:calc(var(--i) * 8%);top:calc(10% + (var(--i) % 5) * 14%);color:#fbbf24;opacity:0;animation:fx-sparkle calc(2.2s + var(--i) * .15s) ease-in-out infinite;animation-delay:calc(var(--i) * .18s)}@keyframes fx-burst{0%{transform:translateY(0) scale(.4);opacity:0}25%{opacity:1}to{transform:translateY(-55vh) scale(1.6);opacity:0;box-shadow:-18px -22px #fbbf24,18px -20px #fb7185,-12px -40px #fde68a,14px -38px #fdba74,0 -50px #f59e0b}}@keyframes fx-flicker{0%,to{transform:scale(1);filter:drop-shadow(0 0 6px rgba(251,191,36,.55))}50%{transform:scale(1.08);filter:drop-shadow(0 0 14px rgba(251,191,36,.95))}}@keyframes fx-ravana-sway{0%,to{transform:rotate(-4deg) translateY(0)}50%{transform:rotate(4deg) translateY(-6px)}}@keyframes fx-ember-rise{0%{transform:translateY(0) scale(1);opacity:.9}to{transform:translateY(-90px) scale(.3);opacity:0}}@keyframes fx-santa-fly{0%{transform:translate(0) translateY(0)}50%{transform:translate(70vw) translateY(18px)}to{transform:translate(120vw) translateY(-10px)}}@keyframes fx-snow-fall{0%{transform:translateY(0) translate(0);opacity:0}10%{opacity:.7}to{transform:translateY(110vh) translate(20px);opacity:0}}@keyframes fx-youth-bounce{0%,to{transform:translateY(0) rotate(-4deg)}50%{transform:translateY(-14px) rotate(6deg)}}@keyframes fx-powder-pop{0%{transform:scale(.3);opacity:0}30%{opacity:.85}to{transform:scale(2.4) translateY(-40px);opacity:0}}@keyframes fx-ribbon-wave{0%,to{transform:translateY(0) skew(-8deg)}50%{transform:translateY(10px) skew(8deg)}}@keyframes fx-bat-fly{0%{transform:translate(0) translateY(0) scaleX(1)}50%{transform:translate(60vw) translateY(30px) scaleX(1)}to{transform:translate(120vw) translateY(-20px) scaleX(1)}}@keyframes fx-sparkle{0%,to{opacity:0;transform:scale(.4)}40%{opacity:.9;transform:scale(1.2)}}@media(max-width:720px){.festival-banner{align-items:flex-start}.festival-banner span.muted{display:block;font-size:.72rem;line-height:1.35}.fx-ravana,.fx-youth-item:nth-child(5),.fx-diya:nth-child(n+4){display:none}.fx-santa-sleigh{font-size:1.35rem}}@media(prefers-reduced-motion:reduce){.festival-fx *,.festival-atmosphere,.festival-atmosphere-motifs span{animation:none!important}}
