﻿/*! Egg Hunt 2026 landing page styles — scoped to /egghunt2026.
 * Loaded only on that page via {{#section 'css'}} in views/egghunt/egghunt2026.handlebars.
 * Relies on the global style.css for shared classes (blur-card, game-card, fonts, jumbotron, etc.). */.egg-hunt-logo{width:min(460px,82vw);height:auto;margin-bottom:.5rem;filter:drop-shadow(0 3px 8px rgba(0, 0, 0, 0.55))}.game-play-card{border-radius:1rem;background-color:var(--bs-body-bg)}.game-play-cover-wrap{position:relative;overflow:hidden}.game-play-cover{width:100%;height:auto;display:block;transition:transform .4s ease}.game-play-card:hover .game-play-cover{transform:scale(1.04)}.game-play-live-badge{position:absolute;top:.6rem;left:.6rem;display:inline-flex;align-items:center;gap:.35rem;padding:.2rem .6rem;border-radius:999px;font-size:.7rem;font-weight:700;letter-spacing:.08em;color:#fff;background-color:rgba(0,0,0,.6);backdrop-filter:blur(4px)}.game-play-live-dot{width:.5rem;height:.5rem;border-radius:50%;background-color:#35d07f;box-shadow:0 0 6px #35d07f;animation:game-play-pulse 1.6s ease-in-out infinite}@keyframes game-play-pulse{0%,100%{opacity:1}50%{opacity:.35}}.game-play-title{font-size:1.35rem;line-height:1.2}.game-play-creator{font-size:.9rem;color:var(--bs-secondary-color)}.btn-roblox-play,.btn-roblox-demo{display:inline-flex;align-items:center;justify-content:center;gap:.45rem;font-weight:600;font-size:1.05rem;padding:.55rem .85rem;border-radius:.6rem;transition:background-color .15s ease,color .15s ease,transform .1s ease}.btn-roblox-play{color:#fff;background-color:#00b06f;border:2px solid #00b06f}.btn-roblox-play:hover,.btn-roblox-play:focus{color:#fff;background-color:#009a60;border-color:#009a60}.btn-roblox-demo{color:#00b06f;background-color:rgba(0,0,0,0);border:2px solid #00b06f}.btn-roblox-demo:hover,.btn-roblox-demo:focus{color:#fff;background-color:#00b06f}.btn-roblox-play:active,.btn-roblox-demo:active{transform:translateY(1px)}.game-play-btn-icon{width:1.15em;height:1.15em}@media(prefers-reduced-motion: reduce){.game-play-cover,.game-play-live-dot{transition:none;animation:none}}.chapter-placeholder{position:relative;aspect-ratio:16/9;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:#fff;overflow:hidden}.chapter-placeholder-num{font-size:clamp(3rem,8vw,5rem);line-height:1;color:hsla(0,0%,100%,.55);text-shadow:0 2px 12px rgba(0,0,0,.25)}.chapter-placeholder-tag{margin-top:.85rem;padding:.3rem .9rem;border-radius:999px;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.09em;background:rgba(0,0,0,.35);backdrop-filter:blur(2px)}.chapter-theme-oasis{background:linear-gradient(135deg, #f7c24b 0%, #e8823a 100%)}.chapter-theme-sunnyside{background:linear-gradient(135deg, #3fb9e6 0%, #5566d8 100%)}.chapter-theme-ruins{background:linear-gradient(135deg, #8e2f5b 0%, #b5341f 100%)}.egghunt-gallery .carousel-item img{aspect-ratio:16/9;object-fit:cover}.egghunt-gallery .carousel-inner{box-shadow:0 6px 22px rgba(0,0,0,.4)}.egghunt-gallery .carousel-indicators{bottom:auto;top:.6rem}.egghunt-caption{right:0;left:0;bottom:0;padding:3rem 1.25rem 1.1rem;text-align:left;background:linear-gradient(to top, rgba(0, 0, 0, 0.82), rgba(0, 0, 0, 0.3) 55%, transparent)}.egghunt-caption h3{color:#fff;text-shadow:0 1px 3px rgba(0,0,0,.5)}.egghunt-caption p{color:hsla(0,0%,100%,.9);font-size:.95rem;text-shadow:0 1px 3px rgba(0,0,0,.5)}.partners-row{min-height:56px}.partner-logo{max-height:46px;max-width:100%;width:auto;object-fit:contain;opacity:.85;transition:opacity .2s ease}.partner-logo:hover{opacity:1}.partner-placeholder{display:inline-flex;align-items:center;justify-content:center;font-weight:600;font-size:.95rem;padding:.5rem .9rem;border:1px dashed var(--bs-border-color);border-radius:.6rem;color:var(--bs-secondary-color);opacity:.7}.hero-stage{height:240px;display:flex;align-items:flex-end;justify-content:center;overflow:hidden}.hero-portrait{max-height:228px;max-width:82%;width:auto;object-fit:contain;filter:drop-shadow(0 5px 7px rgba(0, 0, 0, 0.3))}.hero-portrait-wide{max-width:96%}html[data-bs-theme=light] .hero-stage{background:linear-gradient(180deg, #f4f1ec 0%, #e8e4dd 100%)}html[data-bs-theme=dark] .hero-stage{background:linear-gradient(180deg, #2a2a30 0%, #1b1b1f 100%)}.npc-role{font-size:.8rem;text-transform:uppercase;letter-spacing:.04em}.npc-stage{height:150px;display:flex;align-items:flex-end;justify-content:center;overflow:hidden}.npc-portrait{max-height:142px;max-width:85%;width:auto;object-fit:contain;filter:drop-shadow(0 4px 5px rgba(0, 0, 0, 0.28))}html[data-bs-theme=light] .npc-stage{background:linear-gradient(180deg, #f4f1ec 0%, #e8e4dd 100%)}html[data-bs-theme=dark] .npc-stage{background:linear-gradient(180deg, #2a2a30 0%, #1b1b1f 100%)}.npc-col{position:relative}.companion-bubble{position:absolute;left:50%;bottom:calc(100% - 2.4rem);z-index:6;width:max-content;max-width:92%;padding:.5rem .8rem;border-radius:1rem;background:#fffdf7;color:#3a2f22;font-size:.78rem;font-style:italic;line-height:1.28;text-align:center;box-shadow:0 8px 20px rgba(0,0,0,.28);opacity:0;pointer-events:none;transform:translate(-50%, 0.5rem) scale(0.55);transform-origin:bottom center;transition:opacity .22s ease,transform .32s cubic-bezier(0.34, 1.56, 0.64, 1)}.companion-bubble::after{content:"";position:absolute;left:50%;bottom:-0.45rem;transform:translateX(-50%);border-left:.5rem solid rgba(0,0,0,0);border-right:.5rem solid rgba(0,0,0,0);border-top:.5rem solid #fffdf7}.companion-bubble.is-visible{opacity:1;transform:translate(-50%, 0) scale(1)}@media(hover: hover){.npc-col:hover .companion-bubble{opacity:1;transform:translate(-50%, 0) scale(1)}}@media(prefers-reduced-motion: reduce){.companion-bubble{transition:opacity .2s ease;transform:translate(-50%, 0) scale(1)}}.century-egg-viewer{position:relative;width:min(440px,84vw);height:min(440px,84vw);margin:0 auto;border-radius:50%;background:radial-gradient(circle at 50% 46%, rgba(247, 196, 75, 0.28), rgba(247, 196, 75, 0.08) 42%, transparent 68%)}.century-egg-viewer model-viewer{width:100%;height:100%;background-color:rgba(0,0,0,0);--poster-color: transparent}html[data-bs-theme=light] .kickstarter-pane{background-color:hsla(0,0%,100%,.9)}html[data-bs-theme=dark] .kickstarter-pane{background-color:rgba(0,0,0,.74)}.kickstarter-stat-number{font-size:clamp(2.25rem,5vw,3rem);line-height:1.05}.kickstarter-stat-label{font-size:.85rem;text-transform:uppercase;letter-spacing:.06em;opacity:.85;margin-top:.25rem}