:root{color-scheme:dark;--navy:#080e22;--deep:#05091a;--gold:#f2cf87;--gold-light:#fff0c4;--text:#f0f0f4;--muted:#bac2d3;--serif:"Yu Mincho","Hiragino Mincho ProN","Noto Serif JP",serif;--sans:"Yu Gothic","Hiragino Kaku Gothic ProN",Meiryo,sans-serif}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;padding:env(safe-area-inset-top) env(safe-area-inset-right) 0 env(safe-area-inset-left);background:#050919;color:var(--text);font:400 1.125rem/1.9 var(--sans);-webkit-text-size-adjust:100%;text-size-adjust:100%;overflow-wrap:anywhere;line-break:strict}
body,button,a{-webkit-tap-highlight-color:transparent}
button,a{touch-action:manipulation}
button{font:inherit;cursor:pointer}
button:disabled{cursor:default}
button:focus-visible,a:focus-visible{outline:3px solid #fff6c6;outline-offset:5px}
[tabindex="-1"]:focus{outline:none}
button,a{-webkit-user-select:none;user-select:none}
h1,h2,h3,h4,p,figure{margin:0}
ul,ol{margin:0;padding:0;list-style:none}
img{display:block;max-width:100%;height:auto}
a{color:inherit}
em{font-style:normal;color:var(--gold-light)}
svg{display:block;width:1.5rem;height:1.5rem;flex:none}
[hidden]{display:none!important}
.svg-definitions{position:absolute;width:0;height:0;overflow:hidden}
.sr-only{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
.ambient{position:fixed;inset:0;z-index:-1;overflow:hidden;pointer-events:none;background:radial-gradient(ellipse at 0% 15%,#1d293c,transparent 65%),radial-gradient(ellipse at 100% 50%,#172c42,transparent 70%),#05091a}
.ambient:before{content:"";position:absolute;inset:0;background:url("assets/olympus-storm.webp") center/cover;opacity:.12;filter:blur(12px)}
.stardust{position:absolute;inset:0}
.stardust i{position:absolute;left:var(--x);top:var(--y);width:var(--size);height:var(--size);border-radius:50%;background:#ffe9b5;opacity:.18;box-shadow:0 0 8px #ecd8998a;animation:star-drift var(--duration) ease-in-out var(--delay) infinite alternate}
.site-shell{position:relative;width:min(100%,520px);min-height:100svh;margin:auto;isolation:isolate;background:linear-gradient(180deg,#0a122254,#080e22ab 55%,#071022d9);box-shadow:0 0 100px #0006;border-inline:1px solid #ae8e4626}
.screen{position:relative;min-width:0}
.screen.is-active{animation:screen-enter .5s ease-out both}
.eyebrow{display:flex;align-items:center;justify-content:center;gap:.7rem;color:#d1b579;font:400 .7rem/1.8 Georgia,serif;letter-spacing:.19em;text-align:center}
.eyebrow>span{display:block;width:1.2rem;height:1px;background:#c5a66b66}
.summoning-scene{position:relative;isolation:isolate;overflow:hidden;--charge:0;background:#07101e}
.temple-background{position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:cover;object-position:50% 42%;z-index:-3;animation:temple-breathe 16s ease-in-out infinite alternate}
.scene-vignette{position:absolute;inset:0;z-index:-2;background:linear-gradient(#050a1599,transparent 32%,#070e1d10 49%,#080e22 92%),linear-gradient(90deg,#07101f55,transparent 25% 75%,#07101f55)}
.home-heading{position:relative;z-index:3;padding:1rem .9rem 0;text-align:center;text-shadow:0 2px 18px #000}
.title-art{width:min(78%,315px);margin:-.15rem auto -.9rem;mix-blend-mode:screen;filter:drop-shadow(0 3px 12px #c9985326);animation:title-radiance 8s ease-in-out infinite}
.hero-copy{font:600 clamp(1.12rem,4.9vw,1.5rem)/1.8 var(--serif);letter-spacing:.07em;color:#eee6d8;margin:.3rem auto 0}
.hero-copy strong{color:var(--gold-light);font-weight:800;text-shadow:0 2px 8px #000,0 0 18px #d9b76a40}
.ritual-section{position:relative;z-index:2;text-align:center;padding:.25rem 0 0;scroll-margin-top:1rem}
.thunder-stage{position:relative;height:clamp(220px,64vw,320px);width:100%;isolation:isolate}
.charge-glow{position:absolute;inset:-10% 0;background:radial-gradient(ellipse at 50% 52%,#ffd06a70,transparent 47%);opacity:calc(.17 + var(--charge)*.78);transform:scale(calc(.75 + var(--charge)*.3));pointer-events:none}
.storm-lightning{position:absolute;inset:-70% 0 -12%;display:block;width:100%;height:182%;z-index:5;pointer-events:none;mix-blend-mode:screen}
.storm-cloud{position:absolute;bottom:-19%;width:115%;height:auto;max-width:none;pointer-events:none;z-index:2;opacity:calc(.68 + var(--charge)*.3);filter:brightness(calc(.8 + var(--charge)*.4));will-change:transform}
.cloud-left{left:-64%;animation:cloud-drift-left 12s ease-in-out infinite alternate}
.cloud-right{right:-64%;animation:cloud-drift-right 15s ease-in-out -5s infinite alternate}
.bolt-altar{position:absolute;inset:0 23%;z-index:3;display:grid;place-items:center;padding:0;border:0;background:transparent;color:var(--gold-light);touch-action:pan-y;user-select:none;-webkit-touch-callout:none}
.bolt-altar:focus-visible{outline-offset:0;border-radius:14px}
.thunder-weapon{height:100%;width:100%;object-fit:contain;pointer-events:none;filter:drop-shadow(0 0 calc(7px + var(--charge)*20px) #ffd06366) brightness(calc(1 + var(--charge)*.45));animation:weapon-hover 4.8s ease-in-out infinite;will-change:transform}
.hold-hand{position:absolute;left:48%;top:49%;width:2.3rem;height:2.8rem;filter:drop-shadow(0 3px 5px #000a);animation:finger-hold 3.6s ease-in-out infinite;pointer-events:none}
.artifact-caption{position:absolute;bottom:.1rem;left:0;right:0;z-index:3;pointer-events:none;font:.55rem/1.5 Georgia,serif;letter-spacing:.26em;color:#cbb58b;opacity:.8}
.charge-panel{position:relative;z-index:4;max-width:360px;margin:.55rem auto 0;padding:.5rem 1.5rem 0}
.ritual-instruction{min-height:1.8rem;font:700 clamp(.9375rem,3.7vw,1.0625rem)/1.8 var(--serif);letter-spacing:.015em;color:#f3dcaa;text-shadow:0 2px 10px #000}
.charge-meter{height:5px;overflow:hidden;margin:.65rem 0 .4rem;background:#263346;border:1px solid #ccaa6155;box-shadow:0 0 0 4px #0a132775}
.charge-meter>span{display:block;width:100%;height:100%;transform:scaleX(var(--charge));transform-origin:left;background:linear-gradient(90deg,#b88231,#ffeabe);box-shadow:0 0 15px #ffdc87}
.charge-caption{display:flex;justify-content:space-between;font-size:.75rem;line-height:1.5;color:#c7c3b7}
.charge-caption>span:last-child{font-family:Georgia,serif;font-variant-numeric:tabular-nums;letter-spacing:.1em}
.summon-alternative{position:relative;z-index:4;display:flex;align-items:center;justify-content:center;gap:.6rem;width:calc(100% - 3rem);max-width:325px;min-height:54px;margin:1.05rem auto 0;padding:.7rem;border:1px solid #e3bf7ea3;border-radius:5px;background:linear-gradient(110deg,#3b321f,#1c2534 60%,#3b321f);box-shadow:inset 0 0 22px #ddae3812,0 4px 20px #0005;color:#ffe8b8;font:700 1rem/1.6 var(--serif)}
.summon-alternative>svg{width:1rem;height:1rem}
.summon-alternative:active{transform:translateY(2px)}
.summon-alternative:disabled{opacity:.45}
.tap-hand{position:absolute;right:-.15rem;bottom:-.65rem;width:2.8rem;height:3.2rem;pointer-events:none;filter:drop-shadow(0 3px 5px #0008);animation:finger-tap 2.4s ease-in-out infinite;transform-origin:50% 100%}
.is-charging .hold-hand,.is-summoning .hold-hand{opacity:0;animation:none}
.is-charging .thunder-weapon,.is-summoning .thunder-weapon{animation:none;transform:translateY(calc(var(--charge)*-7px)) scale(calc(1 + var(--charge)*.055))}
.is-charging .cloud-left,.is-summoning .cloud-left{animation:none;transform:translateX(calc(var(--charge)*21%))}
.is-charging .cloud-right,.is-summoning .cloud-right{animation:none;transform:translateX(calc(var(--charge)*-21%))}
.is-striking .temple-background{animation:none;filter:brightness(calc(1 + var(--discharge-light,0)*.52)) saturate(calc(1 - var(--discharge-light,0)*.22))}
.is-striking .thunder-weapon{animation:weapon-discharge .9s ease-out both}
.text-button{display:block;width:fit-content;max-width:100%;min-height:44px;margin:1.1rem auto 0;padding:.55rem .65rem;border:0;background:none;color:#c2cbdc;text-decoration:underline;text-underline-offset:.3em;font-size:.9375rem;line-height:1.7;text-align:center}
.skip-motion{margin-top:.15rem}
.home-invitation{position:relative;z-index:2;padding:1.4rem 1rem 0;text-align:center;font:600 1.0625rem/1.9 var(--serif);color:#e6d7b6}.home-invitation>span{font:400 .8125rem/1.8 var(--sans);color:#b9c4d5}
.scroll-cue{display:flex;flex-direction:column;align-items:center;gap:.6rem;padding:2rem 0 1rem;font:.55rem/1.5 Georgia,serif;letter-spacing:.2em;color:#a4936f}
.scroll-cue span{width:1px;height:28px;background:linear-gradient(#e0bb71,transparent);transform-origin:top;animation:scroll-line 2.6s ease-in-out infinite}
.intro-section{padding:2.2rem clamp(1.1rem,5vw,2rem) 3rem;border-top:1px solid #b0914c24}
.intro-section h2,.story-copy h2{font:700 clamp(1.5rem,6.2vw,2rem)/1.7 var(--serif);text-align:center;letter-spacing:.045em;margin:.9rem 0 1.7rem}
.wish-list li{display:grid;grid-template-columns:2.3rem minmax(0,1fr);align-items:center;gap:.85rem;padding:1.15rem 0;border-bottom:1px solid #c8aa6830}
.small-seal{display:grid;place-items:center;width:2.3rem;height:2.3rem;transform:rotate(-8deg);border:1px solid #cfae6790;border-radius:50%;color:#eaca87;font:.9rem/1 Georgia,serif}
.wish-list p{font-size:1rem;line-height:1.85;color:#cbd1de}
.wish-list strong{display:block;font-size:1.0625rem;font-weight:700;color:#f4e4bf}
.section-closing{font-size:1rem;line-height:1.9;text-align:center;color:#c8cfdc;margin:1.5rem 0 0}
.story-section{position:relative;border-block:1px solid #b0914c40;background:linear-gradient(#12192c,#0e162a)}
.story-section>img{width:100%;aspect-ratio:3/2;object-fit:cover;mask-image:linear-gradient(#000 60%,transparent 100%);-webkit-mask-image:linear-gradient(#000 60%,transparent 100%)}
.story-copy{position:relative;margin-top:-4.3rem;padding:0 clamp(1.1rem,5vw,2rem) 2rem;text-align:center}
.story-copy h2{margin:.6rem 0 1.1rem}
.story-copy>p:not(.eyebrow){font-size:1.0625rem;line-height:2;color:#dae0ea}
.steps{display:grid;gap:.7rem;margin:1.7rem 0;text-align:left}
.steps li{display:grid;grid-template-columns:2rem minmax(0,1fr);gap:.7rem;align-items:center;font-size:1rem}
.steps span{display:grid;place-items:center;width:2rem;height:2rem;border:1px solid #d0b47760;color:#eed29b;border-radius:50%;font:600 .875rem/1 var(--serif)}
.gold-button{position:relative;display:flex;align-items:center;justify-content:center;gap:.45rem;width:100%;min-height:4.4rem;padding:1rem .8rem;border:1px solid #ffedaf;border-radius:7px;background:linear-gradient(115deg,#b98328,#f5d893 23%,#fff0be 48%,#edc571 72%,#c89335);box-shadow:0 4px 0 #724817,0 7px 30px #caa35326;color:#37260c;font:800 clamp(1.0625rem,4.5vw,1.3rem)/1.6 var(--serif);text-decoration:none;text-align:center;isolation:isolate;transition:transform .2s,box-shadow .2s}
.gold-button>span{min-width:0;position:relative;z-index:1}
.gold-button>svg:not(.tap-hand){width:1.2rem;height:1.2rem;position:relative;z-index:1}
.gold-button:before{content:"";position:absolute;inset:3px;border:1px solid #96652466;border-radius:4px;pointer-events:none}
.gold-button:after{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;background:linear-gradient(105deg,transparent 20%,#fff9 48%,transparent 75%) no-repeat;background-size:50% 100%;background-position:-150% 0;animation:button-shine 6.5s 1.5s infinite}
.gold-button:active{transform:translateY(3px);box-shadow:0 1px 0 #724817,0 3px 14px #caa35326}
.button-note{margin-top:1rem;font-size:.8125rem;line-height:1.8;text-align:center;color:#b7c0d0}
.reveal-screen{overflow:hidden;background:#0b1227}
.reveal-art{position:relative;isolation:isolate;overflow:hidden}
.reveal-art>.god-portrait{width:100%;height:clamp(385px,118vw,610px);object-fit:cover;object-position:50% 12%;animation:zeus-arrive 1.5s cubic-bezier(.2,.65,.2,1) both}
.reveal-art:after{content:"";position:absolute;inset:55% 0 -1px;z-index:4;background:linear-gradient(transparent,#0b1227 94%);pointer-events:none}
.reveal-light{position:absolute;inset:0;background:linear-gradient(110deg,transparent 30%,#ffe4a020 46%,transparent 62%);mix-blend-mode:screen;animation:divine-light 7s ease-in-out infinite;pointer-events:none}
.cloud-curtain{position:absolute;z-index:3;top:12%;width:190%;max-width:none;height:70%;object-fit:fill;pointer-events:none;filter:brightness(.78);will-change:transform;animation-duration:1.65s;animation-timing-function:cubic-bezier(.12,.6,.2,1);animation-fill-mode:both}
.curtain-left{left:-90%;animation-name:cloud-part-left}
.curtain-right{right:-90%;animation-name:cloud-part-right}
.reveal-label{position:absolute;z-index:5;left:0;right:0;bottom:18%;text-align:center;font:700 1rem/1.9 var(--serif);letter-spacing:.32em;color:#ffedbd;text-shadow:0 2px 10px #000;animation:divine-caption 1.3s .35s both}
.reveal-copy{position:relative;z-index:5;margin-top:-20%;padding:0 clamp(1.1rem,5vw,2rem) 2.5rem;text-align:center}
.reveal-copy h2,.offering-screen h2{font:700 clamp(1.65rem,7vw,2.25rem)/1.6 var(--serif);letter-spacing:.035em;margin:.7rem 0 1.15rem;text-shadow:0 2px 12px #0006}
.reveal-copy>p:not(.eyebrow):not(.button-note){font-size:1.0625rem;line-height:2}
.reveal-copy .reveal-command{color:#e9cf99;margin:1.3rem 0 1.6rem}
.journey-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.85rem 1.1rem;border-bottom:1px solid #c0a16c33;background:#090f20}
.journey-brand{display:flex;align-items:center;gap:.5rem;font:700 .875rem/1.7 var(--serif);color:#e3c78f;min-width:0}
.journey-brand svg{width:1.1rem;height:1.1rem}
.journey-count{font:.875rem/1.2 Georgia,serif;color:#aebbcf;white-space:nowrap}
.journey-count b{font-size:1.6rem;font-weight:400;color:#f6d895}
.question-portrait{position:relative;overflow:hidden;border-bottom:1px solid #c0a16c40}
.question-portrait>img{width:100%;height:225px;object-fit:cover;object-position:50% 22%;animation:portrait-breathe 12s ease-in-out infinite}
.question-portrait:after{content:"";position:absolute;inset:50% 0 0;background:linear-gradient(transparent,#090f23d9);pointer-events:none}
.portrait-glow{position:absolute;inset:0;background:radial-gradient(ellipse at 50% 22%,#ffe89024,transparent 65%);animation:halo-breathe 5s ease-in-out infinite;pointer-events:none}
.question-portrait>span{position:absolute;left:0;right:0;bottom:.7rem;z-index:1;text-align:center;font:600 .8125rem/1.7 var(--serif);letter-spacing:.2em;color:#ffe5ad;text-shadow:0 2px 10px #000}
.question-content{padding:1rem clamp(.9rem,4vw,1.65rem) 1.75rem}
.progress-track{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem;margin:0 .2rem}
.progress-track span{height:3px;background:#26334c;border-radius:5px;transition:background .3s}
.progress-track span.complete{background:#e2bd74;box-shadow:0 0 8px #ffce6650}
.progress-track span.current{background:linear-gradient(90deg,#e2bd7477,#efd598)}
.oracle-reply{font:500 .9375rem/1.85 var(--serif);text-align:center;color:#cab886;padding:.8rem .4rem .9rem}
.question-card{padding:1.35rem .9rem 1rem;border:1px solid #c2a06a77;border-radius:10px;background:linear-gradient(130deg,#152039f2,#0b1428f5);box-shadow:0 12px 36px #0003;animation:question-enter .4s ease-out both}
.question-card.is-changing{animation:answer-received .48s ease-in-out both;pointer-events:none}
.question-card>.eyebrow{font:700 .8125rem/1.8 var(--serif);letter-spacing:.15em;color:#d9bc80}
.question-card h2{font:700 clamp(1.2rem,5.1vw,1.55rem)/1.85 var(--serif);color:#fff0cb;white-space:pre-line;text-align:center;margin:.65rem 0 .8rem;letter-spacing:.01em}
.choice-hint{font-size:.8125rem;line-height:1.7;color:#abbacf;text-align:center;margin-bottom:1.15rem}
.choices{display:grid;grid-template-columns:minmax(0,1fr);gap:.8rem}
.choice{position:relative;display:grid;grid-template-columns:1.7rem minmax(0,1fr) .8rem;align-items:center;gap:.6rem;width:100%;min-height:4.4rem;padding:1rem .75rem;text-align:left;border:1px solid #b79960a3;border-radius:6px;background:linear-gradient(110deg,#22334f,#162740);color:#f7edd6;font:700 1.0625rem/1.7 var(--sans);transition:background .2s,border-color .2s,transform .2s;overflow-wrap:anywhere}
.choice-letter{display:grid;place-items:center;width:1.65rem;height:1.65rem;border:1px solid #c4a56b70;border-radius:50%;font:.875rem/1 Georgia,serif;color:#eaca8e}
.choice>svg{width:.8rem;height:.8rem;color:#cdb074}
.choice>span{min-width:0}
.choice:active{transform:scale(.985)}
.choice.is-selected{border-color:#ffe5a4;color:#332308;background:linear-gradient(110deg,#edc373,#fff0c5);box-shadow:0 0 22px #e9bd4740}
.choice.is-selected .choice-letter{color:#54350b;border-color:#926419}
.choice.is-selected>svg{color:#75511b}
.choices.has-selection .choice:not(.is-selected){opacity:.48}
.offering-screen{padding:2rem clamp(1.05rem,4.5vw,1.8rem) 1.5rem;text-align:center;overflow:hidden;background:linear-gradient(#0b1425,#0a1021)}
.offering-screen h2{margin:.7rem 0 1rem}
.offering-intro{font-size:.9375rem;color:#ccd2df;line-height:1.7}
.offering-wish{font:700 clamp(1.25rem,5.2vw,1.6rem)/1.8 var(--serif);color:#ffe4ad;padding:.65rem .5rem .9rem;position:relative;z-index:2}
.throw-stage{position:relative;height:clamp(330px,92vw,430px);margin:.2rem -2rem 0;isolation:isolate;overflow:hidden}
.throw-temple{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 26%;opacity:.68;mask-image:linear-gradient(transparent,#000 12% 70%,transparent);-webkit-mask-image:linear-gradient(transparent,#000 12% 70%,transparent)}
.sky-opening{position:absolute;inset:-20% 0 20%;z-index:1;background:radial-gradient(ellipse at 50% 20%,#ffe9a887,transparent 55%);opacity:.18;transform-origin:50% 20%;pointer-events:none}
.offering-cloud{position:absolute;z-index:2;top:-8%;width:110%;max-width:none;pointer-events:none;filter:brightness(.65);opacity:.8}
.offering-cloud-left{left:-55%;animation:cloud-drift-left 14s ease-in-out infinite alternate}
.offering-cloud-right{right:-55%;animation:cloud-drift-right 12s ease-in-out infinite alternate}
.throw-bolt{position:absolute;bottom:0;left:50%;width:50%;height:85%;transform:translateX(-50%);padding:0;background:none;border:0;z-index:4;touch-action:none;-webkit-touch-callout:none}
.throw-bolt>img{width:100%;height:100%;object-fit:contain;pointer-events:none;filter:drop-shadow(0 0 15px #efc45d55);animation:weapon-hover 4.5s ease-in-out infinite}
.throw-bolt.is-dragging>img{animation:none;transform:translateY(var(--drag-y,0px)) rotate(var(--drag-tilt,0deg));filter:drop-shadow(0 0 25px #ffdc9977)}
.swipe-hint{position:absolute;inset:46% -25% auto;display:flex;flex-direction:column;align-items:center;gap:.25rem;pointer-events:none;color:#fff0c1;text-shadow:0 2px 8px #000;animation:swipe-up 2.8s ease-in-out infinite}
.swipe-hint>svg{transform:rotate(-90deg);width:1.25rem;height:1.25rem}
.swipe-hint>span{font:700 .8125rem/1.6 var(--sans);background:#071022c9;border:1px solid #bd9f5666;border-radius:4px;padding:.2rem .6rem}
.throw-bolt.is-dragging .swipe-hint{opacity:0;animation:none}
.wish-trail{position:absolute;inset:0;display:block;width:100%;height:100%;z-index:3;pointer-events:none;mix-blend-mode:screen}
.seal-instruction{position:relative;z-index:5;font-size:1rem;line-height:1.95;color:#c9d0dc;margin:.15rem 0 1.25rem}
.seal-instruction strong{font-weight:700;color:#f1d69f}
.throw-fallback{min-height:4rem;font-size:clamp(1rem,4.4vw,1.2rem)}
.is-throwing .throw-bolt>img{animation:thunder-throw .94s cubic-bezier(.52,0,.62,.35) both}
.is-throwing .swipe-hint{display:none}
.is-throwing .sky-opening{animation:sky-open 1.5s ease-out both}
.is-throwing .offering-cloud-left{animation:offering-part-left 1.5s ease-in both}
.is-throwing .offering-cloud-right{animation:offering-part-right 1.5s ease-in both}
.is-throwing .throw-fallback{opacity:.45}
.result-hero{position:relative;overflow:hidden}
.result-hero>img{width:100%;height:clamp(400px,122vw,600px);object-fit:cover;object-position:50% 10%;animation:zeus-arrive 1.2s ease-out both}
.result-hero:after{content:"";position:absolute;inset:46% 0 -1px;background:linear-gradient(transparent,#0a1227 92%)}
.result-aura{position:absolute;inset:0;background:radial-gradient(ellipse at 48% 30%,#ffe0a638,transparent 64%);mix-blend-mode:screen;animation:halo-breathe 5s ease-in-out infinite}
.result-hero-copy{position:relative;z-index:1;margin-top:-22%;padding:0 1.05rem 1.5rem;text-align:center}
.result-hero-copy h2{font:700 clamp(1.65rem,6.7vw,2.25rem)/1.7 var(--serif);letter-spacing:.02em;margin-top:.6rem;text-shadow:0 3px 15px #0008}
.result-content{padding:0 clamp(1rem,4.5vw,1.8rem) 2rem;background:linear-gradient(#0a1227,#0d172b)}
.oracle-letter{position:relative;padding:2rem 1.15rem 1.7rem;border-block:1px solid #d1b47688;background:radial-gradient(ellipse at 50% 0,#aa843c20,transparent 80%);text-align:center}
.letter-ornament{position:absolute;left:50%;top:0;transform:translate(-50%,-50%);padding:0 .6rem;background:#0c1528;color:#f3d08d;font:.8rem/1 Georgia,serif}
.letter-label{font-size:.875rem;letter-spacing:.08em;color:#cbb784}
.result-wish{font:800 clamp(1.3rem,5.7vw,1.75rem)/1.8 var(--serif);color:#ffe3a0;margin:.6rem 0 1.2rem;text-wrap:pretty}
#result-message{font-size:1.0625rem;line-height:2.1;text-align:left;white-space:pre-line;color:#e0e5ee}
.letter-ending{font:700 1.2rem/1.9 var(--serif);color:#f4e8ca;margin-top:1.4rem}
.letter-ending strong{font-weight:800;color:#ffe3a0;background:linear-gradient(transparent 67%,#c397342f 67%,#c397342f 94%,transparent 94%);box-decoration-break:clone;-webkit-box-decoration-break:clone}
.cta-block{padding:1.7rem 0 1.2rem;text-align:center}
.cta-kicker{font:700 1.125rem/1.8 var(--serif);color:#fbe3ab;margin-bottom:.75rem}
.registration-link{padding:1.2rem .55rem;min-height:5rem;font-size:clamp(1rem,4.5vw,1.35rem)}
.registration-link>.tap-hand{right:-.1rem;bottom:-.9rem;z-index:3}
.guidance{margin-top:1.3rem;padding:1.8rem 0 .3rem;border-top:1px solid #bea16a38}
.guidance h3,.line-guide h3{font:700 clamp(1.35rem,5.5vw,1.7rem)/1.8 var(--serif);text-align:center;color:#e4dcc9;margin:.6rem 0 1.4rem}
.guidance-row{display:grid;grid-template-columns:2rem minmax(0,1fr);gap:.85rem;padding:1.15rem 0;border-top:1px solid #bea16a2e}
.guidance-row>span{font:1.4rem/1.6 Georgia,serif;color:#b5985d}
.guidance-row h4{font:700 1.125rem/1.7 var(--serif);color:#f1d79f;margin-bottom:.4rem}
.guidance-row p{font-size:1rem;line-height:1.95;color:#c6d0e1}
.line-guide{margin-top:1.8rem;padding:1.75rem 1rem 1rem;border:1px solid #cbae6b80;border-radius:10px;text-align:center;background:radial-gradient(ellipse at 50% 0,#77581e33,transparent 65%),#111c32}
.line-guide>svg{margin:0 auto .65rem;width:2rem;height:2rem;color:#efd69a}
.line-guide h3{font-size:clamp(1.25rem,5vw,1.6rem);margin-bottom:1.3rem}
.line-guide>p{font-size:1.0625rem;line-height:2;color:#d4dcea;margin-top:1rem}
.line-guide>p strong{font-weight:800;color:#ffe1a0}
.line-guide .line-closing{font-size:1rem;color:#b9c7dc}
.line-guide .cta-block{padding-bottom:.4rem}
.line-guide .registration-link{font-size:clamp(1rem,4.15vw,1.2rem)}
.site-footer{padding:1.5rem 1rem calc(1.5rem + env(safe-area-inset-bottom));border-top:1px solid #ad915227;text-align:center;color:#bba474}
.site-footer>svg{width:1.1rem;height:1.1rem;margin:0 auto .6rem}
.site-footer>p{font:600 .875rem/1.8 var(--serif);letter-spacing:.08em}
.site-footer small{font:.55rem/1.8 Georgia,serif;letter-spacing:.15em;color:#8e8c89}
.transition-light{position:fixed;inset:0;z-index:100;pointer-events:none;background:linear-gradient(110deg,transparent,#ffe5a7,transparent);opacity:0}
.noscript-note{padding:1.5rem;border:1px solid #d1b270;background:#172039;font-size:1rem}
.noscript-note a{display:block;margin-top:1rem;color:#ffe8b3}
.will-reveal{opacity:0;transform:translateY(18px);transition:opacity .7s ease,transform .7s ease}
.will-reveal.in-view{opacity:1;transform:none}

body.page-paused *,body.page-paused *:before,body.page-paused *:after{animation-play-state:paused!important}
@keyframes screen-enter{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@keyframes star-drift{from{opacity:.12;transform:translateY(8px)}to{opacity:.62;transform:translateY(-14px)}}
@keyframes title-radiance{0%,100%{filter:drop-shadow(0 3px 12px #f4c06720)}50%{filter:drop-shadow(0 3px 19px #f4c06748)}}
@keyframes halo-breathe{0%,100%{opacity:.5}50%{opacity:1}}

@keyframes finger-tap{0%,20%,75%,100%{transform:translateY(4px) rotate(-13deg)}38%,53%{transform:translateY(-4px) rotate(-13deg) scale(.93)}}
@keyframes scroll-line{0%,100%{transform:scaleY(.65);opacity:.4}50%{transform:scaleY(1);opacity:1}}
@keyframes button-shine{0%,45%,100%{background-position:-150% 0}24%,32%{background-position:250% 0}}
@keyframes zeus-arrive{from{opacity:.2;transform:scale(1.1) translateY(16px);filter:brightness(1.45)}to{opacity:1;transform:none;filter:brightness(1)}}
@keyframes portrait-breathe{0%,100%{transform:scale(1.015)}50%{transform:scale(1.055)}}
@keyframes question-enter{from{opacity:.3;transform:translateY(10px)}to{opacity:1;transform:none}}
@keyframes answer-received{0%{transform:none}45%{box-shadow:0 0 35px #e7bf5355}100%{opacity:.3;transform:translateY(-6px)}}
@keyframes temple-breathe{from{transform:scale(1)}to{transform:scale(1.045)}}
@keyframes cloud-drift-left{from{transform:translate(-2%,2%)}to{transform:translate(8%,-3%)}}
@keyframes cloud-drift-right{from{transform:translate(3%,-2%)}to{transform:translate(-7%,3%)}}
@keyframes weapon-hover{0%,100%{transform:translateY(3px) rotate(-2deg)}50%{transform:translateY(-7px) rotate(1deg)}}
@keyframes finger-hold{0%,15%,90%,100%{transform:translateY(5px) rotate(-18deg);opacity:0}24%{opacity:1;transform:translateY(0) rotate(-18deg)}32%,73%{opacity:1;transform:translateY(-2px) rotate(-18deg) scale(.88)}}
@keyframes cloud-part-left{from{transform:translateX(0);opacity:1}to{transform:translateX(-49%);opacity:.12}}
@keyframes cloud-part-right{from{transform:translateX(0);opacity:1}to{transform:translateX(49%);opacity:.12}}
@keyframes divine-caption{from{opacity:0;letter-spacing:.5em;transform:translateY(10px)}to{opacity:1;letter-spacing:.32em;transform:none}}
@keyframes divine-light{0%,100%{opacity:.3;transform:translateX(-6%)}50%{opacity:.8;transform:translateX(6%)}}
@keyframes swipe-up{0%,15%,100%{opacity:.25;transform:translateY(12px)}60%,75%{opacity:1;transform:translateY(-12px)}}
@keyframes thunder-throw{0%{transform:translateY(var(--launch-y,0px)) rotate(0) scale(1);opacity:1}30%{transform:translateY(calc(var(--launch-y,0px) - 50px)) rotate(-8deg) scale(.95);opacity:1}100%{transform:translateY(-460px) rotate(-12deg) scale(.18);opacity:0}}
@keyframes sky-open{0%{opacity:.18;transform:scale(.8)}80%,100%{opacity:.9;transform:scale(1.6)}}
@keyframes offering-part-left{from{transform:translateX(0)}to{transform:translateX(-48%)}}
@keyframes offering-part-right{from{transform:translateX(0)}to{transform:translateX(48%)}}
.lightning-spill{position:absolute;inset:0;z-index:1;opacity:calc(var(--discharge-light,0)*.3);pointer-events:none;background:radial-gradient(ellipse at 50% 28%,#dcecffaa,transparent 58%),linear-gradient(90deg,#b7d8ff33,transparent 25% 75%,#b7d8ff33);mix-blend-mode:screen}
.charge-arcs{position:absolute;inset:-10% 0;display:block;width:100%;height:120%;z-index:4;pointer-events:none;mix-blend-mode:screen}
.is-striking .storm-cloud{filter:brightness(calc(1.1 + var(--discharge-light,0)*.65)) saturate(calc(1 - var(--discharge-light,0)*.2))}
.is-throwing .throw-temple{filter:brightness(calc(1 + var(--discharge-light,0)*.65))}
.is-throwing .offering-cloud{filter:brightness(calc(.65 + var(--discharge-light,0)*.8))}
@keyframes weapon-discharge{0%{transform:translateY(-7px) scale(1.055)}15%{filter:brightness(1.65);transform:translateY(-10px) scale(1.08)}100%{transform:translateY(-100px) scale(.4);opacity:0}}
@media(hover:hover) and (pointer:fine){.summon-alternative:hover{background:linear-gradient(110deg,#554325,#263448,#554325);border-color:#ffe6a7}.bolt-altar:hover .thunder-weapon{filter:drop-shadow(0 0 18px #ffd06388) brightness(1.16)}.gold-button:hover{box-shadow:0 4px 0 #724817,0 7px 40px #e1b44e55}.choice:hover{border-color:#ffe9a5;background:linear-gradient(110deg,#304764,#243b59)}.choice.is-selected:hover{background:linear-gradient(110deg,#edc373,#fff0c5)}}
@media(max-width:370px){.home-heading{padding-top:1rem}.hero-copy{font-size:1.05rem}.eyebrow{font-size:.625rem;letter-spacing:.16em}.question-content{padding-inline:.7rem}.question-card{padding-inline:.7rem}.choice{grid-template-columns:1.5rem minmax(0,1fr) .65rem;gap:.5rem;padding:.9rem .65rem;font-size:1rem}.choice-letter{width:1.4rem;height:1.4rem;font-size:.8rem}.line-guide{padding-inline:.7rem}.registration-link{gap:.25rem}.registration-link>svg:not(.tap-hand){width:.9rem;height:.9rem}.oracle-letter{padding-inline:.6rem}.story-copy{margin-top:-3rem}}
@media(max-height:750px) and (max-width:520px){.title-art{width:min(74%,265px)}.home-heading{padding-top:.7rem}.thunder-stage{height:220px}.question-portrait>img{height:185px}.summon-alternative{margin-top:.8rem}.scroll-cue{padding-top:1.5rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.will-reveal{opacity:1;transform:none}.transition-light{display:none}.question-portrait>img,.thunder-weapon,.throw-bolt>img{transform:none}.cloud-curtain,.hold-hand,.storm-lightning,.wish-trail,.charge-arcs,.lightning-spill{display:none}}

@media(max-width:520px){.ambient:before{display:none}}
