    @font-face { font-family:"Asia Lashay Display"; src:url("fonts/AsiaLashayDisplay-Regular.woff") format("woff"); font-style:normal; font-weight:400; font-display:swap; }
    :root {
      color-scheme:dark;
      --ink:#120b1b; --paper:#fff3ed; --muted:#e1ced8; --accent:#efb7a9;
      --cursor-x:72vw; --cursor-y:48vh; --px:0px; --py:0px; --progress:0;
    }
    * { box-sizing:border-box; }
    html { scroll-behavior:smooth; }
    body { margin:0; background:var(--ink); color:var(--paper); font:400 16px/1.55 "DM Sans",Arial,sans-serif; }
    a { color:inherit; }
    button { font:inherit; }
    a:focus-visible,button:focus-visible { outline:2px solid var(--paper); outline-offset:5px; }
    .sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
    .skip { position:fixed; left:1rem; top:-5rem; z-index:100; padding:.8rem 1rem; background:var(--paper); color:var(--ink); }
    .skip:focus { top:1rem; }
    .shell { width:min(100% - 8vw,1500px); margin-inline:auto; }

    /* One visual world remains in place while the content moves through it. */
    .world { position:fixed; inset:0; z-index:0; overflow:hidden; pointer-events:none; background:#0b0814; }
    .world::before { content:""; position:absolute; inset:-30%; background:conic-gradient(from 25deg at 64% 55%,#35144b,#0b2950,#401b43,#11091e,#35144b); filter:blur(55px); animation:tide 18s ease-in-out infinite alternate; }
    .world-fire { position:absolute; inset:0; transform:translate3d(var(--px),var(--py),0) scale(1.08); transition:transform .25s ease,filter .8s ease; }
    .world-fire img { position:absolute; inset:0; display:block; width:100%; height:100%; object-fit:cover; }
    .world-fire .flame-still { display:none; }
    .world-ring { position:absolute; left:50%; top:50%; translate:22vw 0; width:56vmax; height:56vmax; border:1px solid rgba(245,184,244,.28); border-radius:50%; animation:revolve 17s linear infinite; transition:translate 1.2s ease; }
    .world-ring.second { width:71vmax; height:71vmax; border-color:rgba(94,157,255,.17); animation-duration:28s; animation-direction:reverse; }
    .world-glow { position:absolute; inset:0; background:radial-gradient(circle clamp(18rem,34vw,34rem) at var(--cursor-x) var(--cursor-y),rgba(211,134,241,.42),transparent 80%),radial-gradient(circle clamp(16rem,30vw,30rem) at calc(100% - var(--cursor-x)) calc(100% - var(--cursor-y)),rgba(76,126,242,.22),transparent 80%); mix-blend-mode:screen; }
    .world-glow::before { content:""; position:absolute; inset:-8% -3% -8% auto; width:min(60vw,840px); background:url("asia-lashay-axis.svg") center/contain no-repeat; opacity:.3; transform:translate3d(var(--px),var(--py),0); transition:transform .25s ease; }
    .world-shade { position:absolute; inset:0; background:linear-gradient(90deg,rgba(12,7,22,.74) 0%,rgba(12,7,22,.5) 35%,rgba(12,7,22,.16) 70%,rgba(12,7,22,.32) 100%); transition:background 1s ease; }
    .world-ripple { position:absolute; left:var(--tap-x,-100px); top:var(--tap-y,-100px); width:20px; height:20px; border:1px solid rgba(255,216,239,.8); border-radius:50%; opacity:0; }
    .world-ripple.is-active { animation:ripple .9s ease-out both; }
    .world::after { content:""; position:absolute; inset:0; background:linear-gradient(180deg,rgba(4,4,12,.22),transparent 24%,transparent 77%,rgba(4,4,12,.57)); }

    body[data-stage="music"] .world-ring { translate:-25vw 0; }
    body[data-stage="music"] .world-shade { background:linear-gradient(90deg,rgba(12,7,22,.24),rgba(12,7,22,.64) 43%,rgba(12,7,22,.9) 100%); }
    body[data-stage="connect"] .world-ring { translate:24vw 0; }
    body[data-mode="orbit"] { --accent:#b8c9ff; }
    body[data-mode="orbit"] .world-fire { filter:hue-rotate(38deg) saturate(1.28); }
    body[data-mode="orbit"] .world-ring { animation-duration:8s; border-color:rgba(167,195,255,.45); }
    body[data-mode="pulse"] { --accent:#ffb5d4; }
    body[data-mode="pulse"] .world-fire { animation:flame-pulse 3.2s ease-in-out infinite; }
    body[data-mode="pulse"] .world-glow { animation:glow-pulse 3.2s ease-in-out infinite; }
    @keyframes tide { from { transform:rotate(-12deg) scale(1); } to { transform:rotate(16deg) scale(1.2); } }
    @keyframes flame-pulse { 0%,100% { filter:brightness(.9) saturate(1); } 50% { filter:brightness(1.3) saturate(1.3); } }
    @keyframes revolve { from { transform:translate(-50%,-50%) rotate(0deg) scaleY(.55); } to { transform:translate(-50%,-50%) rotate(360deg) scaleY(.55); } }
    @keyframes glow-pulse { 0%,100% { opacity:.45; } 50% { opacity:1; } }
    @keyframes ripple { from { opacity:.85; transform:translate(-50%,-50%) scale(.2); } to { opacity:0; transform:translate(-50%,-50%) scale(13); } }

    .progress { position:fixed; inset:0 0 auto; z-index:40; height:3px; background:rgba(255,255,255,.09); pointer-events:none; }
    .progress span { display:block; width:100%; height:100%; background:var(--accent); transform:scaleX(var(--progress)); transform-origin:left; transition:background .4s ease; }
    .site-header { position:sticky; top:0; z-index:30; background:rgba(15,9,26,.76); border-bottom:1px solid rgba(255,225,235,.16); backdrop-filter:blur(20px); -webkit-backdrop-filter:blur(20px); }
    .header-inner { display:flex; align-items:center; gap:clamp(1.5rem,4vw,4rem); min-height:78px; }
    .wordmark { display:inline-flex; align-items:center; margin-right:auto; text-decoration:none; }
    .wordmark img { display:block; width:clamp(175px,19vw,230px); height:auto; }
    nav { display:flex; gap:clamp(1.25rem,3vw,3rem); }
    nav a { position:relative; display:inline-flex; align-items:center; min-height:44px; color:#e9dce5; font-size:.77rem; font-weight:700; letter-spacing:.15em; text-decoration:none; text-transform:uppercase; transition:color .2s ease; }
    nav a::after { content:""; position:absolute; bottom:7px; left:0; right:0; height:1px; background:var(--accent); transform:scaleX(0); transform-origin:left; transition:transform .25s ease; }
    nav a:hover,nav a[aria-current="location"] { color:var(--accent); }
    nav a:hover::after,nav a[aria-current="location"]::after { transform:scaleX(1); }

    main { position:relative; z-index:1; }
    section { scroll-margin-top:78px; }
    .hero,.music,.connect { min-height:calc(100svh - 78px); }
    .hero { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,.55fr); align-items:center; gap:2rem; padding-block:clamp(5rem,9vh,10rem) 3rem; }
    h1,h2 { font-family:"Bodoni Moda",Baskerville,Georgia,serif; font-weight:400; letter-spacing:-.075em; }
    h1 { margin:0; font-size:clamp(6.6rem,13vw,14rem); line-height:.78; }
    h1 span { display:block; }
    h1 span:last-child { margin-left:.21em; color:var(--accent); font-style:italic; transition:color .4s ease; }
    .hero-copy > p { max-width:31rem; margin:2.5rem 0 0; color:#eadbe3; font-size:clamp(1.08rem,1.4vw,1.35rem); line-height:1.6; }
    .actions { display:flex; flex-wrap:wrap; align-items:center; gap:1rem 1.6rem; margin-top:2.6rem; }
    .button { display:inline-flex; align-items:center; justify-content:space-between; gap:2.4rem; min-height:55px; min-width:13rem; padding:.9rem 1.1rem; border:1px solid var(--accent); background:var(--accent); color:#1b1020; font-size:.77rem; font-weight:700; letter-spacing:.13em; text-decoration:none; text-transform:uppercase; transition:background .2s ease,transform .2s ease,border-color .2s ease; }
    .button:hover { background:var(--paper); border-color:var(--paper); transform:translateY(-3px); }
    .button:active { transform:translateY(0); }
    .text-link { display:inline-flex; align-items:center; gap:.6rem; min-height:44px; border-bottom:1px solid var(--accent); padding:.55rem 0; color:var(--paper); font-size:.77rem; font-weight:700; letter-spacing:.13em; text-decoration:none; text-transform:uppercase; transition:color .2s ease; }
    .text-link:hover { color:var(--accent); }
    .text-link span:last-child { transition:transform .2s ease; }
    .text-link:hover span:last-child { transform:translateX(.4rem); }
    .scene-icon { display:grid; place-items:center; align-self:end; justify-self:end; width:48px; height:48px; margin-bottom:clamp(1rem,5vh,5rem); border:0; border-radius:50%; background:rgba(16,8,28,.3); color:var(--paper); font-size:1.9rem; line-height:1; cursor:pointer; transition:background .2s ease,transform .2s ease; }
    .scene-icon:hover { background:rgba(16,8,28,.7); transform:rotate(35deg); }
    .scene-icon:active { transform:rotate(70deg) scale(.92); }

    .music { display:grid; grid-template-columns:1fr 1fr; align-items:center; gap:5vw; padding-block:clamp(6rem,10vh,10rem); }
    .music-content { grid-column:2; max-width:610px; }
    h2 { margin:0 0 1.8rem; font-size:clamp(5.2rem,10vw,11rem); line-height:.83; }
    h2 em { color:var(--accent); font-weight:400; transition:color .4s ease; }
    .music-content > p,.connect-copy > p { max-width:32rem; margin:0 0 1.4rem; color:#ecdee6; font-size:clamp(1.08rem,1.4vw,1.35rem); line-height:1.65; }
    .release-note { display:inline-flex; align-items:center; gap:1.5rem; min-height:48px; margin:1rem 0 2.8rem; padding:.8rem 1rem; border:1px solid rgba(255,225,235,.35); background:rgba(20,10,32,.58); color:#f1dce7; font-size:.84rem; font-weight:600; text-decoration:none; transition:background .2s ease,border-color .2s ease; }
    .release-note:hover { border-color:var(--accent); background:rgba(87,48,111,.72); }

    .connect { display:flex; flex-direction:column; justify-content:space-between; padding-top:clamp(6rem,10vh,10rem); }
    .connect-content { max-width:800px; }
    .connect h2 { font-size:clamp(5.2rem,10vw,11rem); }
    .signup-link { display:inline-flex; align-items:center; gap:1.2rem; min-height:52px; margin:1.2rem 0 .8rem; padding:.8rem 1.1rem; background:var(--accent); color:var(--ink); font-size:.9rem; font-weight:700; text-decoration:none; transition:transform .2s ease,background .2s ease; }
    .signup-link:hover { transform:translateY(-3px); background:#ffe0d8; }
    .signup-link:active { transform:translateY(0); }
    .social-links { display:flex; flex-direction:column; align-items:flex-start; gap:.65rem; margin-top:2rem; }
    .social-links a { display:flex; align-items:center; justify-content:space-between; gap:2rem; width:min(100%,420px); min-height:60px; padding:.6rem .1rem; border-bottom:1px solid rgba(255,225,235,.48); color:var(--paper); font-size:clamp(1.1rem,1.6vw,1.55rem); font-weight:500; text-decoration:none; transition:color .2s ease,border-color .2s ease; }
    .social-links a:hover { color:var(--accent); border-color:var(--accent); }
    .social-links a span:first-child { transition:transform .2s ease; }
    .social-links a:hover span:first-child { transform:translateX(.5rem); }
    .social-links a span:last-child { color:var(--accent); transition:transform .2s ease; }
    .social-links a:hover span:last-child { transform:translate(3px,-3px); }
    footer { display:flex; justify-content:space-between; gap:1rem; margin-top:5rem; padding:1.5rem 0 2rem; border-top:1px solid rgba(255,225,235,.27); color:#d9c6d2; font-size:.78rem; font-weight:700; letter-spacing:.13em; text-transform:uppercase; }

    .landing-page { min-height:100svh; display:flex; flex-direction:column; }
    .landing-header { position:relative; z-index:2; display:flex; align-items:center; min-height:94px; }
    .landing-header .scene-icon { align-self:auto; margin:0 0 0 auto; }
    .landing-page main { flex:1; display:flex; }
    .landing-hero { display:flex; align-items:center; min-height:calc(100svh - 174px); padding-block:4rem; }
    .landing-content { max-width:850px; }
    .landing-hero h1,.hero h1 { font-family:"Asia Lashay Display",Baskerville,Georgia,serif; }
    .landing-hero h1 { font-size:clamp(6rem,15vw,15rem); line-height:.78; }
    .landing-hero h1 em { color:var(--accent); font-weight:400; }
    .landing-content p { margin:2.8rem 0 2rem; font-size:clamp(1.1rem,1.7vw,1.5rem); }
    .landing-entry { display:inline-grid; place-items:center; width:60px; height:60px; border:1px solid var(--accent); border-radius:50%; font-size:1.6rem; text-decoration:none; transition:color .2s ease,background .2s ease; }
    .landing-entry:hover { color:var(--ink); background:var(--accent); }
    .landing-entry span { transition:transform .2s ease; }
    .landing-entry:hover span { transform:translate(3px,-3px); }
    .landing-footer { position:relative; z-index:1; align-items:center; margin-top:0; min-height:80px; padding:1rem 0; }
    .landing-footer div { display:flex; gap:2rem; }
    .landing-footer a { min-height:44px; display:inline-flex; align-items:center; text-decoration:none; transition:color .2s ease; }
    .landing-footer a:hover { color:var(--accent); }

    @media (max-width:850px) {
      .shell { width:min(100% - 2.5rem,680px); }
      .world-glow::before { right:-30vw; width:90vw; opacity:.18; }
      .world-ring { translate:15vw 0; }
      .world-shade { background:linear-gradient(180deg,rgba(11,7,20,.58),rgba(11,7,20,.4) 38%,rgba(11,7,20,.52)); }
      .world::after { background:linear-gradient(180deg,rgba(4,4,12,.25),transparent 30%,transparent 72%,rgba(4,4,12,.36)); }
      body[data-stage="music"] .world-ring { translate:-15vw 0; }
      body[data-stage="music"] .world-shade { background:linear-gradient(180deg,rgba(11,7,20,.55),rgba(11,7,20,.62)); }
      .hero { grid-template-columns:1fr; align-content:center; }
      .hero .scene-icon { justify-self:start; margin:1rem 0 0; }
      .music { grid-template-columns:1fr; align-content:center; }
      .music-content { grid-column:1; max-width:600px; }
    }
    @media (max-width:600px) {
      .header-inner { flex-wrap:wrap; gap:.2rem 1rem; padding-block:.75rem; }
      .wordmark { flex:1 0 auto; }
      nav { order:3; width:100%; gap:1.4rem; }
      section { scroll-margin-top:105px; }
      .hero,.music,.connect { min-height:calc(100svh - 104px); }
      .hero { padding-block:4rem 3rem; }
      h1 { font-size:clamp(4.9rem,19vw,8rem); }
      h1 span:last-child { margin-left:.08em; }
      .hero-copy > p { margin-top:2rem; }
      .button { min-width:0; width:100%; }
      .landing-header { min-height:76px; }
      .landing-hero { min-height:calc(100svh - 156px); padding-block:3rem; }
      .landing-hero h1 { font-size:clamp(5.2rem,20vw,8rem); }
      .landing-content p { margin:2rem 0 1.5rem; }
      .landing-footer { font-size:.72rem; }
      .landing-footer div { gap:1.2rem; }
      h2,.connect h2 { font-size:clamp(4.6rem,17vw,8rem); }
      .music { padding-block:5rem; }
      .connect { padding-top:5rem; }
      footer { flex-direction:column; }
    }
    .mailing-main { position:relative; z-index:1; }
    .mailing-hero { display:flex; flex-direction:column; justify-content:center; min-height:calc(100svh - 78px); padding-block:6rem; }
    .mailing-hero h1 { max-width:11ch; font-size:clamp(4.5rem,10vw,10rem); }
    .mailing-hero h1 em { color:var(--accent); font-weight:400; }
    .mailing-hero > p { max-width:36rem; margin:1.8rem 0; color:#f0dfe7; font-size:clamp(1.05rem,1.6vw,1.4rem); }
    .list-status { width:min(100%,34rem); margin-top:1rem; padding:1.2rem 1.4rem; border:1px solid rgba(255,225,235,.4); background:rgba(18,9,31,.7); backdrop-filter:blur(15px); }
    .list-status strong { display:block; margin-bottom:.4rem; color:var(--accent); font-size:.85rem; letter-spacing:.11em; text-transform:uppercase; }
    .list-status p { margin:0; color:#ecdee6; }
    .list-status .formkit-form[data-uid="b49ac4441a"] { max-width:none; color:var(--paper); }
    .list-status .formkit-form[data-uid="b49ac4441a"] .formkit-fields { gap:.8rem; }
    .list-status .formkit-form[data-uid="b49ac4441a"] .formkit-field,
    .list-status .formkit-form[data-uid="b49ac4441a"] .formkit-submit { margin:0; }
    .list-status .formkit-form[data-uid="b49ac4441a"] .formkit-input { width:100%; min-height:52px; border-radius:0 !important; background:var(--paper); color:var(--ink) !important; }
    .list-status .formkit-form[data-uid="b49ac4441a"] .formkit-submit { min-height:52px; background:var(--accent) !important; color:var(--ink) !important; font-weight:700 !important; }
    .list-status .formkit-form[data-uid="b49ac4441a"] .formkit-input:focus-visible,
    .list-status .formkit-form[data-uid="b49ac4441a"] .formkit-submit:focus-visible { outline:2px solid var(--paper); outline-offset:3px; }
    .list-status .formkit-form[data-uid="b49ac4441a"] .formkit-alert { font-size:.9rem; }
    .list-status .formkit-form[data-uid="b49ac4441a"] .formkit-powered-by-convertkit[data-variant="dark"] { background-image:none; color:var(--paper) !important; font-size:.8rem; text-align:center; text-decoration:underline; text-indent:0; }
    .mailing-actions { display:flex; flex-wrap:wrap; gap:1rem 1.5rem; align-items:center; margin-top:2rem; }
    .mailing-page footer { position:relative; z-index:1; }
    @media (max-width:600px) {
      .mailing-hero { min-height:calc(100svh - 104px); padding-block:4rem; }
      .mailing-hero h1 { font-size:clamp(4.4rem,17vw,8rem); }
    }
    @media (prefers-reduced-motion:reduce) {
      html { scroll-behavior:auto; }
      *,*::before,*::after { animation:none !important; transition:none !important; }
      .world-fire .flame-loop { display:none; }
      .world-fire .flame-still { display:block; }
    }
