@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,400;1,500&family=DM+Sans:wght@400;500;600;700&display=swap');
:root{--bg:#100e14;--text:#eee9df;--muted:#a6a0ac;--amber:#edbd7c;--violet:#c3a7e4;--line:#ffffff18}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:84px}body{margin:0;background:var(--bg);color:var(--text);font-family:'DM Sans',sans-serif;font-size:15px}a{color:inherit;text-decoration:none}button{font:inherit}a,button{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:2px solid var(--amber);outline-offset:6px}.symbols{position:absolute;width:0;height:0}.skip{position:absolute;top:-100px}.skip:focus{top:10px;z-index:20;background:var(--bg);padding:15px}header{height:68px;display:flex;align-items:center;justify-content:space-between;padding:0 6%;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:10;background:#100e14b8;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}.brand{display:flex;align-items:center;gap:12px}.torch{width:29px;height:48px;color:var(--amber);filter:drop-shadow(0 0 13px #ed9f4650)}.brand>span{font:500 28px 'Cormorant Garamond',serif;letter-spacing:4px;line-height:1}.brand small{display:block;font:500 12px 'DM Sans',sans-serif;letter-spacing:5px;margin-top:7px}nav{display:flex;align-items:center;gap:38px;font-size:12px;color:#c5bfcc}nav a:hover,footer a:hover{color:var(--amber)}.nav-cta{border:1px solid #a78c5c66;padding:13px 19px;color:#dfc39e}.nav-cta span{margin-left:21px}.hero{position:relative;min-height:760px;height:calc(100svh - 68px);max-height:1000px;isolation:isolate;overflow:hidden}.hero-art{position:absolute;inset:0;background:url('crystal-grotto-story-v2.webp') center center/cover;z-index:-3}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,#100e14f0 0%,#100e14b3 33%,#100e1420 68%),linear-gradient(0deg,#100e14,transparent 28%);z-index:-2}.hero-copy{padding:104px 0 120px 10%;max-width:840px}.eyebrow{font-size:12px;letter-spacing:2.6px;font-weight:600;display:flex;align-items:center;gap:11px;color:#dabf97}.eyebrow span{width:5px;height:5px;border-radius:50%;background:var(--amber);box-shadow:0 0 12px var(--amber)}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:'Cormorant Garamond',Georgia,serif;font-weight:400}h1{font-size:clamp(66px,6.4vw,102px);line-height:1.01;letter-spacing:-2.5px;margin:29px 0 27px}em{font-style:normal;font-weight:400;color:var(--violet)}.intro{color:#bcb4c3;font-size:14px;line-height:1.85;margin-bottom:32px}.button{display:inline-flex;align-items:center;gap:39px;background:#edc58e;color:#211b16;padding:17px 23px;font-size:12px;font-weight:600;border:1px solid #edc58e;cursor:pointer;transition:background .2s,transform .2s}.button:hover{background:#ffdaa6;transform:translateY(-2px)}.button span{font-size:17px}.hero-note{font-size:12px;color:#8b8391;margin-top:17px}.scroll-cue{position:absolute;left:10%;bottom:39px;color:#938899;font-size:12px;letter-spacing:2px;display:flex;gap:24px;align-items:center}.scroll-cue span{font-size:20px}.section{margin:0 10%;padding:100px 0;border-bottom:1px solid var(--line)}.section-label{font-size:12px;letter-spacing:2px;color:#aba1b1;display:flex;gap:19px}.section-label>span{color:#77677d}.about{display:grid;grid-template-columns:1fr 3fr;gap:30px;padding-top:120px;padding-bottom:115px}.muted{color:#9684a6;margin-bottom:22px}h2{font-size:clamp(42px,4vw,61px);line-height:1.08;letter-spacing:-1px;margin-bottom:32px}.about-bottom{display:grid;grid-template-columns:110px 1fr;gap:45px;max-width:650px;padding-top:9px}.large-gem{width:83px;height:110px;color:var(--violet);filter:drop-shadow(0 0 24px #c3a7e428)}.about p:not(.eyebrow){font-size:14px;color:var(--muted);line-height:1.9;margin-bottom:17px}.world-heading{display:flex;justify-content:space-between;gap:80px;align-items:center;margin-top:36px}.world-heading>p{max-width:310px;font-size:13px;color:var(--muted);line-height:1.9}.qualities{display:grid;grid-template-columns:repeat(3,1fr);margin-top:32px}.qualities article{position:relative;border-left:1px solid var(--line);padding:21px 32px 2px}.qualities article:first-child{padding-left:0;border-left:0}.quality-number{position:absolute;right:28px;top:24px;font:400 15px 'Cormorant Garamond',serif;color:#766780}.gem{height:55px;width:55px;margin-bottom:27px}.violet{color:var(--violet)}.amber{color:var(--amber)}.sage{color:#a8bfa2}h3{font-size:27px;margin-bottom:14px}.qualities p{color:var(--muted);font-size:12px;line-height:1.9;max-width:280px}.journey{position:relative;text-align:center;overflow:hidden;padding:100px 0 80px;border:0}.journey .eyebrow{display:block;margin:22px 0}.journey-torch{height:64px;width:46px;color:var(--amber);filter:drop-shadow(0 0 25px #edbd7c77)}.journey h2{font-size:65px;margin-bottom:22px}.journey>p:not(.eyebrow){color:var(--muted);font-size:13px;line-height:1.8}.secondary{background:transparent;color:var(--amber);border-color:#8f71494d;margin-top:16px}.secondary:hover{color:#211b16}.bookmark-message{font-size:12px!important;min-height:32px;margin-top:18px}.orbit{width:490px;height:490px;border:1px solid #b5a1c10b;position:absolute;left:50%;top:60px;transform:translateX(-50%);border-radius:50%;z-index:-1;background:radial-gradient(ellipse,#8963a20c,transparent 65%)}footer{margin:0 6%;padding:34px 0;display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line)}footer .brand{transform:scale(.77);transform-origin:left center}footer p,footer>a:last-child{font-size:12px;color:#8c8194}footer p{margin:0}::selection{background:#69547f;color:white}@media(min-width:1600px){.hero-copy{padding-top:145px}}@media(max-width:900px){header{height:64px;padding:0 6%}nav{gap:20px}.hero{min-height:740px;height:auto}.hero-copy{padding:110px 7% 150px}.hero-art{background-position:60% center}.hero-shade{background:linear-gradient(90deg,#100e14e8,#100e1470 75%),linear-gradient(0deg,#100e14,transparent 40%)}.scroll-cue{left:7%}.section{margin:0 7%;padding:75px 0}.about{grid-template-columns:1fr;gap:35px}.about-bottom{gap:30px}.world-heading{gap:30px}.qualities article{padding:15px 20px}h3{font-size:24px}.qualities p{font-size:12px}footer{gap:20px}footer p{max-width:150px;line-height:1.8}}@media(max-width:600px){nav>a:not(.nav-cta){display:none}.nav-cta{padding:11px;font-size:12px}.nav-cta span{margin-left:12px}.brand>span{font-size:24px}.brand small{font-size:12px}h1{font-size:66px;letter-spacing:-2px}.hero-copy{padding-top:75px}.hero{min-height:760px}.hero-art{background-position:65% center}.hero-shade{background:linear-gradient(90deg,#100e14db,#100e1460),linear-gradient(0deg,#100e14,transparent 50%)}.world-heading{display:block}.world-heading>p{max-width:100%}.qualities{grid-template-columns:1fr;margin-top:35px}.qualities article,.qualities article:first-child{padding:25px 0;border-left:0;border-top:1px solid var(--line);display:grid;grid-template-columns:62px 1fr;column-gap:15px}.qualities .gem{grid-row:1/3;margin:0;width:40px}.qualities h3{font-size:25px;padding-right:20px;margin-bottom:8px}.qualities p{max-width:100%;margin-bottom:0}.quality-number{right:0;top:30px}.about-bottom{grid-template-columns:1fr;gap:18px}.large-gem{height:70px;width:60px}.journey h2{font-size:57px}footer{flex-wrap:wrap}footer p{display:none}.orbit{width:330px;height:430px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Forest scene for the journey section. */
.journey{isolation:isolate;margin-left:0;margin-right:0;padding-left:7%;padding-right:7%;background:linear-gradient(0deg,#100e14 0%,#100e1470 28%,#100e1480 72%,#100e14 100%),url("forest-paths.webp") center/cover}.journey:before{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(ellipse at center,#100e14bf 0%,#100e1455 60%,transparent 90%)}.journey .orbit{display:none}.journey .secondary{background:#100e14b8}.journey .secondary:hover{background:#ffdaa6}.journey>p:not(.eyebrow){color:#c5bdce}.brand>span{line-height:1.2}

/* Selected flame-only Lucia mark. */
img.torch,img.journey-torch,img.gem{object-fit:contain}img.torch{width:32px;height:40px}

.origin-note a{color:var(--amber);text-decoration:underline;text-underline-offset:3px}.origin-note{padding-top:16px;border-top:1px solid var(--line)}

/* Open transition into and out of the forest. */
.world{border-bottom:0}footer{border-top:0}
#torch-fire{display:none;width:100%;height:100%}.hero-art.fire-ready #torch-fire{display:block}.hero-art.fire-ready{background-image:none}

/* A weathered brass invitation, with inset carving and a crystal-set arrow. */
.portal-button{position:relative;isolation:isolate;gap:22px;min-width:260px;min-height:58px;padding:10px 20px;border:1px solid #b58c55;border-radius:7px 3px 7px 3px;color:#f1d8ad;background:linear-gradient(135deg,#9b784b 0%,#4c4030 5%,#302a25 19%,#242125 57%,#45372a 92%,#9d7746 100%);box-shadow:0 6px 22px #0007,inset 0 1px 1px #f9d79b55,inset 0 -2px 3px #0009;transition:box-shadow .25s,border-color .25s,transform .25s}
.portal-button:before{content:"";position:absolute;inset:5px;border:1px solid #c39b624d;border-radius:3px 1px 3px 1px;box-shadow:inset 0 0 0 1px #100e1470;pointer-events:none;z-index:-1;background:radial-gradient(ellipse at 20% 5%,#b78a4120,transparent 60%),radial-gradient(ellipse at 85% 90%,#171f1d90,transparent 55%)}
.portal-button:after{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;opacity:.18;z-index:-1;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='80'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.6' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' opacity='.5' filter='url(%23n)'/%3E%3C/svg%3E")}
.portal-button .portal-label{font-family:'Cormorant Garamond',Georgia,serif;font-size:23px;font-weight:500;letter-spacing:.4px;text-shadow:0 1px 2px #000a}
.portal-arrow{height:30px;width:24px;margin-left:auto;filter:drop-shadow(0 0 8px #b69bcc20)}
.portal-button:hover{background:linear-gradient(135deg,#ae8955 0%,#5a4933 5%,#3a3028 19%,#2e2525 57%,#55422d 92%,#b68b50 100%);border-color:#dfbd82;box-shadow:0 5px 25px #0007,0 0 24px #d8a4541c,inset 0 1px 2px #ffe3ac66,inset 0 -2px 3px #0009;transform:translateY(-1px)}
.portal-button:active{transform:translateY(1px);box-shadow:inset 0 2px 6px #0008}.portal-button:focus-visible{outline:2px solid #f0cf94;outline-offset:5px}
@media(max-width:600px){.portal-button{gap:18px;min-height:54px;padding:9px 18px}.portal-button .portal-label{font-size:22px}}

.hero-sparkles{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:1}.hero-copy{position:relative;z-index:2}

.journey-fireflies{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:0}.journey>*:not(.journey-fireflies):not(.orbit){position:relative;z-index:1}
.firefly{position:absolute;width:var(--size);height:var(--size);border-radius:50%;background:#fff0aa;box-shadow:0 0 5px 1px #f8ce6c99,0 0 14px 3px #e9af4326;animation:firefly-drift var(--speed) ease-in-out var(--delay) infinite alternate,firefly-glow var(--pulse) ease-in-out var(--delay) infinite;animation-play-state:paused;opacity:.55}
.journey-fireflies.is-visible .firefly{animation-play-state:running}@keyframes firefly-drift{0%{transform:translate(0,0)}50%{transform:translate(calc(var(--dx)*.4),calc(var(--dy)*.7))}100%{transform:translate(var(--dx),var(--dy))}}@keyframes firefly-glow{0%,100%{opacity:.16}50%{opacity:.8}}@media(prefers-reduced-motion:reduce){.firefly{animation:none;opacity:.45}}

.downloads{border-bottom:0}.download-heading{display:flex;justify-content:space-between;align-items:center;gap:48px;margin-top:36px}.download-heading>p{max-width:260px;line-height:1.8;color:var(--muted)}.download-options{display:grid;grid-template-columns:1fr 1fr;gap:44px;margin-top:28px}.download-options article{padding:30px 0;border-top:1px solid var(--line)}.download-options article>p:not(.eyebrow){color:var(--muted);line-height:1.8;font-size:14px}.download-options .button{margin-top:16px}.download-options .portal-arrow{margin-left:auto}.download-options .download-status{font-size:12px!important;margin:14px 0 0}.download-options button:disabled{opacity:.55;cursor:default;transform:none}.download-options button:disabled:hover{background:transparent;color:var(--amber)}@media(max-width:600px){nav{gap:12px}nav>a.nav-download{display:block}header{padding:0 5%}.nav-cta{padding:10px 8px}.nav-cta span{margin-left:5px}.brand{gap:7px}.brand>span{font-size:21px;letter-spacing:3px}.download-heading{display:block}.download-options{grid-template-columns:1fr;gap:12px}}

.editor-preview{margin:0 6%;border-bottom:0;padding-top:20px}.editor-heading{display:flex;align-items:center;justify-content:space-between;gap:40px;padding:0 4.55%;margin-bottom:38px}.editor-heading h2{margin-bottom:0}.editor-heading>p{color:var(--muted);font-size:14px;line-height:1.8;max-width:230px}.editor-figure{margin:0}.editor-frame{position:relative;aspect-ratio:8/5;border:1px solid #b58c5538;border-radius:7px;box-shadow:0 22px 80px #0007;background:#252525}.editor-loupe{position:absolute;width:clamp(200px,20vw,300px);aspect-ratio:1;left:50%;top:50%;transform:translate(-50%,-50%);border:2px solid #edbd7ce6;border-radius:50%;overflow:hidden;box-shadow:0 0 0 5px #100e1455,0 12px 36px #0008;opacity:0;pointer-events:none;z-index:3;transition:opacity .18s ease,transform .18s ease;transform:translate(-50%,-50%) scale(.86)}.editor-frame.is-hovering .editor-loupe{opacity:1;transform:translate(-50%,-50%) scale(1)}.editor-figure figcaption{display:flex;justify-content:space-between;gap:20px;color:var(--muted);font-size:12px;line-height:1.6;margin-top:18px}@media(max-width:600px){.editor-preview{margin:0 5%}.editor-heading{display:block;padding:0 2%}.editor-heading>p{max-width:none}.editor-figure figcaption{display:block}.editor-figure figcaption>span{display:block}.editor-figure figcaption>span:last-child{display:none}}@media(hover:none){.editor-loupe{display:none}.editor-figure figcaption>span:last-child{display:none}}

.journey .portal-button{margin-top:16px}

body{overflow-x:clip}



.editor-image{display:block;width:100%;height:auto;aspect-ratio:8/5;border-radius:6px}.editor-loupe .editor-zoom-image{position:absolute;display:block;max-width:none;transform-origin:0 0}
/* Simple bronze buttons share one border and a quiet hover state. */
.portal-button{background:#302822;border-color:#9c7b50;border-radius:4px;box-shadow:none;min-height:54px;padding:10px 20px}.portal-button:before,.portal-button:after{display:none}.portal-button .portal-label{font-size:21px;text-shadow:none}.portal-arrow{filter:none;height:24px;width:24px}.portal-button:hover{background:#403328;border-color:#d4ad74;box-shadow:none;transform:none}.portal-button:active{background:#251f1b;box-shadow:none;transform:none}

.footer-links{display:flex;align-items:center;gap:28px;font-size:12px;color:#8c8194}@media(max-width:600px){nav>a.nav-discord{display:block}.footer-links{gap:20px}}

@media(min-width:601px){.download-options article:last-child{text-align:right}.download-options article:last-child .eyebrow{justify-content:flex-end}}

header nav{font-size:14px}header .brand>span{font-size:30px}@media(max-width:600px){header nav{font-size:13px}header .brand>span{font-size:23px}header .nav-cta{font-size:13px}}
