@font-face{font-family:Bagind;src:url('./assets/Bagind.woff2') format('woff2');font-display:swap;font-weight:400}
@font-face{font-family:Calming;src:url('./assets/Calming.woff2') format('woff2');font-display:swap;font-weight:400}
/* Canonical home: Layout.astro (.glass/.lg-btn) and index.astro (.home-cta-primary). */
:root{color-scheme:dark;--gold:#ecc440;--gold-400:#f2d36b;--gold-light:#f7e29a;--gold-soft:rgba(236,196,64,.15);--gold-whisper:rgba(236,196,64,.05);--gold-line:rgba(236,196,64,.3);--ink:#050509;--ink-850:#0b0b11;--ink-800:#141419;--text:#f7f7f7;--muted:#c5c5cf;--dim:#9999a5;--font-heading:Bagind,Georgia,serif;--font-body:Calming,Georgia,serif;--tracking-display:.045em}
*{box-sizing:border-box}html{background:var(--ink);scroll-behavior:smooth}body{position:relative;isolation:isolate;margin:0;min-width:280px;color:var(--text);font:16px/1.5 var(--font-body);-webkit-font-smoothing:antialiased;overflow-x:clip}button,input{font:inherit}a{color:inherit;text-decoration:none}button{color:inherit;cursor:pointer}button:disabled{cursor:default}a,button{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,input:focus-visible{outline:2px solid var(--gold-400);outline-offset:4px}[hidden]{display:none!important}::selection{color:var(--ink);background:var(--gold-light)}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.skip-link{position:fixed;left:18px;top:12px;transform:translateY(-150%);clip-path:inset(50%);z-index:100;background:var(--gold);color:#1a1206;padding:12px 20px;border-radius:12px}.skip-link:focus{transform:none;clip-path:none}
.atmosphere{position:fixed;inset:0;pointer-events:none;overflow:hidden;z-index:-1;background:radial-gradient(circle at 50% 18%,#0a0a12 0%,#050509 70%)}.halo{position:absolute;width:460px;height:460px;border:1px solid rgba(236,196,64,.16);border-radius:50%}.halo--one{top:-200px;left:-180px}.halo--two{bottom:-160px;right:-200px;opacity:.7}.grain{position:absolute;inset:0;background:radial-gradient(ellipse at 50% 21%,rgba(236,196,64,.045),transparent 55%)}
.page-shell{max-width:520px;padding:0 20px;margin:auto}.masthead{height:88px;display:flex;align-items:center;justify-content:space-between;gap:18px;position:relative}.masthead:after{content:'';position:absolute;bottom:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,rgba(236,196,64,.35),transparent)}.brand{display:block}.brand img{display:block;width:174px;height:auto;filter:drop-shadow(0 0 18px rgba(236,196,64,.16))}.masthead-right{display:flex;align-items:center;gap:20px}.location-mark{display:none;font-size:10px;letter-spacing:2px;color:var(--muted);align-items:center;gap:9px}.location-mark i{width:4px;height:4px;border-radius:50%;background:var(--gold);box-shadow:0 0 10px var(--gold)}.motion-control{display:grid;place-items:center;width:44px;height:44px;border-radius:14px;border:1px solid var(--gold-line);background:rgba(255,255,255,.04);color:var(--gold);box-shadow:inset 0 1px 0 rgba(255,255,255,.12);transition:background .25s,border-color .25s}.motion-control:hover{border-color:var(--gold-400);background:var(--gold-soft)}.motion-control:disabled{opacity:.6}
.portal-layout{padding:25px 0 26px}.welcome{position:relative;min-width:0}.welcome-top{display:flex;align-items:center;justify-content:space-between;gap:8px}.eyebrow{font-size:9px;letter-spacing:1.6px;color:var(--gold)}.season-stamp{font-size:8px;letter-spacing:1px;color:var(--gold);background:var(--gold-whisper);border:1px solid var(--gold-line);border-radius:999px;padding:5px 9px;white-space:nowrap}
h1{font:400 clamp(42px,11.4vw,57px)/1.04 var(--font-heading);letter-spacing:var(--tracking-display);color:var(--gold);margin:18px 0 12px}h1 em{font-style:normal;color:#fff}.welcome-copy{color:var(--muted);font:14px/1.6 Georgia,serif;margin:0}
/* The image keeps its original aspect ratio at every size. Never a faded background. */
.scene{position:relative;isolation:isolate;aspect-ratio:1126/614;width:100%;margin:23px 0 0}.portrait-frame{position:absolute;inset:0;overflow:hidden;border-radius:22px;border:1px solid var(--gold-line);box-shadow:inset 0 1px 0 rgba(247,226,154,.08),0 8px 28px rgba(0,0,0,.42)}.portrait{display:block;width:100%;height:100%;object-fit:contain;object-position:center;filter:none}.portrait-shade{position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,transparent 70%,rgba(5,5,9,.8))}.scene-caption{position:absolute;left:15px;bottom:12px;right:15px;text-align:center;font-size:8px;letter-spacing:2px;color:var(--gold-light);z-index:2}.moon{position:absolute;right:-10px;top:-12px;width:95px;height:95px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#f7e29a,#d4af37 52%,#4f390b);box-shadow:0 0 42px rgba(236,196,64,.15);z-index:-1}.orbit{position:absolute;inset:-9px;border-radius:27px;border:1px solid rgba(236,196,64,.1);pointer-events:none}.orbit--inner{inset:-5px;border-color:rgba(236,196,64,.05)}.star{position:absolute;color:var(--gold-light);z-index:3;pointer-events:none;animation:shimmer 5s ease-in-out infinite}.star svg{display:block;width:100%;height:100%}.star--one{width:22px;height:22px;left:-7px;top:22%}.star--two{width:28px;height:28px;right:8px;top:-13px;animation-delay:1s}.star--three{width:16px;height:16px;right:-5px;bottom:23%;animation-delay:2s}.web-corner{display:none}.bats-stage{display:none;position:absolute;inset:-30px -12px -8px;overflow:clip;pointer-events:none;z-index:4}.bats-stage svg{width:100%;height:100%;overflow:visible;fill:#070606;stroke:rgba(236,196,64,.3);stroke-width:.6;filter:drop-shadow(0 2px 1px rgba(247,226,154,.15))}.bats-stage .eye{fill:#ecc440}.bats-stage .shadow{display:none}.bats-stage .wing{transform-origin:50% 50%;animation:wing 1s ease-in-out infinite}.bats-stage .wing1{transform-origin:50% 50%;animation:wing-one 1s ease-in-out infinite}.bats-stage .bat{transform-origin:50% 50%;animation:bat-flight 15s ease-in-out infinite}.bats-stage .bat1{transform-origin:50% 50%;animation:bat-flight-one 17s ease-in-out infinite}.bats-stage .bat2{transform-origin:50% 50%;animation:bat-flight-two 21s ease-in-out infinite}
/* Chris Bolson rNXvPBR: original image reveal, animated text GIF and conic glow (MIT). */
.magic-zone{position:relative;z-index:6;margin:22px 0 0;isolation:isolate}.magic-button{--neon-clr-1:#ecc440;--neon-clr-2:#f7e29a;position:relative;display:flex;width:100%;align-items:center;justify-content:center;gap:10px;min-height:56px;padding:14px 12px;border:1px solid var(--gold-line);border-radius:16px;background-color:rgba(255,255,255,.9);background-image:url('./assets/halloween/bats-2.gif');background-size:cover;background-position:center;-webkit-background-clip:text;background-clip:text;color:transparent;font:400 19px/1.25 var(--font-heading);letter-spacing:.04em;transition:background-color .3s ease-in-out;isolation:isolate;text-align:center}.magic-wand{color:var(--gold);flex-shrink:0}.magic-button:before{content:'';position:absolute;inset:-8px;z-index:-1;background:conic-gradient(from var(--angle),transparent,var(--neon-color),transparent);border-radius:999px;filter:blur(10px);opacity:.32;animation:neon-rotate 3s linear infinite;transition:opacity .3s,filter .3s}.magic-button:hover:before,.magic-button:focus-visible:before,.magic-button.active:before{opacity:.75;filter:blur(15px)}.magic-button:after{content:'';position:absolute;bottom:0;right:0;width:100%;height:var(--bg-img-height,200px);max-height:340px;background-image:var(--bg-img);background-size:contain;background-repeat:no-repeat;background-position:right bottom;border-bottom-right-radius:inherit;opacity:0;filter:blur(20px);transition:opacity .5s ease-in-out,filter .5s ease-in-out;pointer-events:none}.magic-button.active:after{opacity:1;filter:blur(0);transition-delay:0s,.3s}.magic-button:disabled{cursor:wait}.magic-meta{display:flex;justify-content:space-between;align-items:center;gap:8px;font-size:10px;color:var(--dim);min-height:44px}.sound-control{display:flex;align-items:center;gap:6px;min-height:44px;padding:4px 0 4px 8px;border:none;background:transparent;font-size:10px;color:var(--gold-light)}.sound-control svg{flex-shrink:0}.sound-control[aria-pressed=true] .sound-muted,.sound-control[aria-pressed=false] .sound-waves{display:none}
.paths{margin-top:26px;min-width:0}.section-label{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.section-label h2{font:400 9px var(--font-body);letter-spacing:1.5px;margin:0;color:var(--muted)}.section-label>span{font-size:9px;letter-spacing:1px;color:var(--gold)}
/* Same dark glass recipe, specular line and gold-edge states as the home. */
.season-card{position:relative;isolation:isolate;overflow:hidden;padding:25px 24px 22px;border:1px solid var(--gold-line);border-radius:22px;background:linear-gradient(180deg,rgba(236,196,64,.10),transparent 42%),linear-gradient(160deg,rgba(20,20,25,.9),rgba(11,11,17,.96));-webkit-backdrop-filter:blur(16px) saturate(125%);backdrop-filter:blur(16px) saturate(125%);box-shadow:inset 0 1px 0 rgba(247,226,154,.08),inset 0 -1px 0 rgba(0,0,0,.35),0 8px 28px rgba(0,0,0,.42)}.season-card:before{content:'';position:absolute;top:0;left:12%;right:12%;height:1px;background:linear-gradient(90deg,transparent,rgba(247,226,154,.5),transparent);pointer-events:none}.card-orbit{position:absolute;width:240px;height:240px;border:1px solid var(--gold-soft);border-radius:50%;right:-155px;top:-65px;z-index:-1}.card-orbit:after{content:'';position:absolute;inset:-22px;border:1px solid var(--gold-whisper);border-radius:50%}.feature-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.feature-eyebrow{font-size:9px;letter-spacing:1.3px;color:var(--gold)}.feature-spark{color:var(--gold);width:26px;height:26px;flex-shrink:0}.season-card h3{font:400 36px/1.08 var(--font-heading);letter-spacing:var(--tracking-display);color:var(--gold);margin:14px 0 12px}.feature-description{font:14px/1.65 Georgia,serif;color:var(--muted);margin:0}.offer{margin-top:17px}.offer-price{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap;margin:0}.offer-price>span{font-size:12px;color:var(--muted)}.offer-price strong{font:400 36px/1.2 Georgia,serif;color:#fff;letter-spacing:-.5px}.gift{display:flex;align-items:center;gap:7px;color:var(--gold-light);font-size:12px;margin:9px 0 0}.gift svg{flex-shrink:0}
/* Exact .home-cta-primary gradient, inset highlights, resting glow and press. */
.feature-cta{position:relative;isolation:isolate;display:flex;justify-content:center;align-items:center;gap:12px;margin-top:23px;padding:15px 24px;min-height:54px;font-size:15px;font-weight:700;letter-spacing:.02em;color:#1a1206;background:linear-gradient(135deg,#f7e29a 0%,#e8c34a 46%,#cc9900 100%);border:1px solid rgba(247,226,154,.65);border-radius:16px;box-shadow:inset 0 -3px 15px rgba(255,255,255,.5),inset 0 1px 0 rgba(255,255,255,.6),0 6px 18px rgba(236,196,64,.26);transition:transform .2s ease,box-shadow .2s ease}.feature-cta:after{content:'';position:absolute;left:50%;bottom:-13px;width:72%;height:26px;transform:translateX(-50%);background:#ecc440;filter:blur(16px);border-radius:50%;opacity:.6;transition:opacity .25s ease;pointer-events:none;z-index:-1}.feature-cta:hover{transform:translateY(3px);box-shadow:inset 0 -3px 17px rgba(255,255,255,.55),inset 0 1px 0 rgba(255,255,255,.65),0 3px 10px rgba(236,196,64,.3)}.feature-cta:hover:after{opacity:.3}.feature-cta:active{transform:translateY(4px)}.offer-condition{font:11px/1.65 Georgia,serif;color:var(--muted);margin:15px 0 0}
.link-list{display:grid;gap:10px;margin-top:14px}.path-link{position:relative;overflow:hidden;display:flex;align-items:center;gap:15px;padding:16px 17px;min-height:82px;border-radius:16px;color:var(--text);background:rgba(255,255,255,.08);-webkit-backdrop-filter:blur(12px) saturate(160%);backdrop-filter:blur(12px) saturate(160%);border:1px solid var(--gold-line);box-shadow:inset 0 1px 0 rgba(255,255,255,.18),0 8px 24px rgba(0,0,0,.35);transition:transform .25s ease,border-color .25s ease,background .25s ease,box-shadow .25s ease}.path-link:before{content:'';position:absolute;inset:0;border-radius:inherit;pointer-events:none;background:radial-gradient(circle at var(--mx,50%) var(--my,50%),rgba(255,255,255,.22),transparent 60%);opacity:0;transition:opacity .4s ease}.path-link:after{content:'';position:absolute;top:0;left:12%;right:12%;height:1px;pointer-events:none;background:linear-gradient(90deg,transparent,rgba(255,255,255,.5),transparent)}.path-link>*{position:relative;z-index:1}.path-link:hover{background:rgba(236,196,64,.16);border-color:var(--gold-400);transform:translateY(-2px);box-shadow:inset 0 1px 0 rgba(255,255,255,.22),0 12px 30px rgba(204,153,0,.28)}.path-link:hover:before{opacity:1}.path-link:active{transform:translateY(0)}.path-link--reserve{border-color:rgba(236,196,64,.55);background:linear-gradient(135deg,rgba(236,196,64,.12),rgba(255,255,255,.06))}.path-icon{width:30px;height:32px;flex-shrink:0;color:var(--gold)}.path-icon svg{width:100%;height:100%}.path-copy{display:grid;gap:5px;flex:1;min-width:0}.path-copy strong{font:400 17px/1.2 var(--font-body);color:var(--text)}.path-copy>span{font:11px/1.5 Georgia,serif;color:var(--muted)}.path-arrow{width:20px;height:20px;flex-shrink:0;color:var(--gold);transition:transform .25s ease}.path-link:hover .path-arrow{transform:translate(2px,-2px)}.location-link{display:flex;align-items:center;gap:11px;padding:24px 4px 0;color:var(--gold-light);font-size:12px}.location-link>svg{flex-shrink:0}.location-link>span:nth-child(2){flex:1}.location-detail{display:block;font:11px/1.6 Georgia,serif;color:var(--muted);margin-top:3px}.location-link:hover{color:var(--gold)}
.footer{position:relative;display:flex;align-items:center;justify-content:space-between;gap:15px;padding:24px 0 30px;border-top:1px solid var(--gold-soft);font-size:7px;letter-spacing:1px;color:var(--dim)}.footer>div{display:flex;gap:10px;letter-spacing:.3px;font-size:10px}.footer a:hover{color:var(--gold)}
[data-season=halloween] .bats-stage{display:block}[data-season=halloween] .welcome:before{content:'';position:absolute;width:160px;height:155px;top:-16px;left:-20px;background:url('./assets/halloween/web-t-left.png') top left/contain no-repeat;opacity:.14;z-index:-1;pointer-events:none}
@property --angle{syntax:'<angle>';initial-value:0deg;inherits:false}
@property --neon-color{syntax:'<color>';initial-value:#ecc440;inherits:false}
@keyframes neon-rotate{from{--angle:0deg;--neon-color:#ecc440}50%{--neon-color:#d4af37}to{--angle:360deg;--neon-color:#ecc440}}@keyframes shimmer{50%{opacity:.4;transform:scale(.75)}}
/* Calle vYZqgwz (MIT), same SVG wings and flights retained from approved first preview. */
@keyframes wing{50%{transform:scaleX(.5) rotate(-25deg)}}@keyframes wing-one{50%{transform:scaleX(.5) rotate(25deg)}}
@keyframes bat-flight{0%,100%{transform:translate(145px,35px) scale(.42) rotate(10deg)}25%{transform:translate(-130px,90px) scale(.46) rotate(-10deg)}50%{transform:translate(-150px,-90px) scale(.39) rotate(10deg)}75%{transform:translate(-80px,-100px) scale(.42) rotate(-10deg)}}
@keyframes bat-flight-one{0%,100%{transform:translate(-120px,-80px) scale(.3) rotate(-10deg)}25%{transform:translate(0,-40px) scale(.3) rotate(10deg)}50%{transform:translate(140px,50px) scale(.35) rotate(-10deg)}75%{transform:translate(-100px,30px) scale(.33) rotate(10deg)}}
@keyframes bat-flight-two{0%,100%{transform:translate(140px,-80px) scale(.25) rotate(10deg)}25%{transform:translate(160px,-90px) scale(.3) rotate(-10deg)}50%{transform:translate(170px,-100px) scale(.24) rotate(10deg)}75%{transform:translate(100px,-50px) scale(.34) rotate(-10deg)}}
[data-motion=off] *,[data-motion=off] *:before,[data-page-hidden] *,[data-page-hidden] *:before{animation-play-state:paused!important}[data-motion=off] .magic-button{background-image:none;background-color:var(--gold-light)}[data-motion=off] .magic-button:after{transition:none;filter:none}
@media(min-width:701px){.page-shell{max-width:1140px;padding:0 36px}.masthead{height:120px}.brand img{width:208px}.location-mark{display:flex}.portal-layout{display:grid;grid-template-columns:minmax(0,1.03fr) minmax(0,1fr);gap:56px;padding:48px 0}.welcome{padding-top:2px}h1{font-size:clamp(57px,5.7vw,76px);margin:28px 0 19px}.welcome-copy{font-size:16px;line-height:1.7}.scene{margin-top:34px}.scene-caption{bottom:17px;font-size:9px}.moon{width:135px;height:135px;top:-18px;right:-14px}.magic-zone{margin-top:26px}.magic-button{font-size:22px;padding:17px 20px;min-height:62px}.magic-meta{font-size:11px}.sound-control{font-size:11px}.paths{margin-top:0}.section-label{margin-bottom:16px}.section-label h2{font-size:10px;letter-spacing:1.8px}.season-card{padding:29px 30px 25px}.season-card h3{font-size:42px}.feature-description{font-size:15px}.offer-price strong{font-size:40px}.feature-cta{font-size:16px}.offer-condition{font-size:12px}.link-list{margin-top:16px;gap:11px}.path-link{padding:18px 22px;min-height:87px}.path-copy strong{font-size:19px}.path-copy>span{font-size:12px}.footer{font-size:9px;padding:26px 0 33px}.footer>div{font-size:11px;gap:16px}}
@media(min-width:701px) and (max-width:960px){.page-shell{padding:0 27px}.portal-layout{gap:32px}.season-stamp{font-size:7px;letter-spacing:.4px;padding:5px 7px}.eyebrow{font-size:8px;letter-spacing:1px}h1{font-size:55px}.season-card{padding:24px}.season-card h3{font-size:34px}.path-link{padding:16px;gap:11px}.path-copy strong{font-size:17px}.path-copy>span{font-size:10px}.magic-button{font-size:18px}.magic-meta{font-size:9px}.sound-control{font-size:9px}}
@media(max-width:370px){.page-shell{padding:0 18px}.brand img{width:164px}.portal-layout{padding-top:22px}h1{font-size:42px}.eyebrow{font-size:8px;letter-spacing:1px}.season-stamp{font-size:7px}.welcome-copy{font-size:13px}.season-card{padding:23px 21px}.season-card h3{font-size:32px}.feature-eyebrow{font-size:8px;letter-spacing:1px}.path-link{padding:15px;gap:12px}.path-copy strong{font-size:16px}.path-copy>span{font-size:10.5px}.magic-button{font-size:17px}.magic-meta,.sound-control{font-size:9px}.footer{align-items:flex-start;font-size:6.5px;letter-spacing:.7px}.footer>div{font-size:9px;gap:8px}.desktop-break{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.magic-button{background-image:none;background-color:var(--gold-light)}.magic-button:after{filter:none}}
