.skip-link { position: fixed; top: -80px; left: 24px; z-index: 2000; padding: 12px 16px; background: #e6d0a0; color: #100c20; border-radius: 8px; opacity:0; pointer-events:none; }
/* A departing 3D scene must not become a full-screen filtered offscreen surface.
   Keep the fade; the foreground passage owns the motion during navigation. */
body.home-transitioning .hero-section,body.home-transitioning header{filter:none!important;transform:none!important;transition:opacity .7s!important}
body.home-transitioning .hero-section *,body.home-transitioning header *,body.home-transitioning .nebula,body.home-transitioning .noise{animation-play-state:paused!important}
body.home-handoff .main-scene .card{backdrop-filter:none!important;-webkit-backdrop-filter:none!important;will-change:auto}
body.home-handoff .noise{visibility:hidden}
@media(min-width:901px){.main-scene>.home-moon{top:0;z-index:50}}
.skip-link:focus { top: 16px; opacity:1; pointer-events:auto; }
.card:focus-visible { outline: 3px solid #f1d998; outline-offset: 8px; }
.card[data-index="2"] .price-tag { color: #f8e5b1; }
.home-cta { position: absolute; bottom: 32px; left: 50%; transform: translateX(-50%); z-index: 120; padding: 12px 24px; border: 1px solid #bca064; border-radius: 999px; color: #f1dcaa; background: #110c21; text-decoration: none; font-size: 14px; transition: box-shadow .7s cubic-bezier(.32,.72,0,1); }
.home-cta:hover { box-shadow: 0 0 32px #bca06440; }
.home-notice { position: fixed; top: 88px; right: 24px; z-index: 2000; padding: 16px 24px; border: 1px solid #bca06460; border-radius: 16px; color: #f1dcaa; background: #110c21; max-width: 320px; line-height: 1.5; }
.star-passage{position:fixed;inset:0;width:100%;height:100%;z-index:3000;pointer-events:auto}
.leaving-for-stars .hero-section,.leaving-for-stars header{opacity:0;transform:scale(1.06);filter:blur(8px);transition:opacity .7s,transform 1.2s,filter 1s}
.leaving-for-matrix .hero-section,.leaving-for-matrix header{opacity:0;filter:blur(5px);transition:opacity .95s cubic-bezier(.65,0,.35,1),filter 1.1s}
@media (max-width: 900px) {
  body { min-height: 100vh; }
  header { padding: 16px; }
  .btn-luna { padding: 8px 12px; font-size: 12px; }
  .hero-section { height: auto; min-height: 100vh; padding: 128px 16px 80px; }
  #scale-wrapper { position: relative; transform: none; }
  .logo-container { position: relative; top: auto; left: auto; transform: none; margin-bottom: 48px; }
  .logo-container h1 { font-size: 36px; letter-spacing: 8px; }
  .logo-container p { font-size: 18px; letter-spacing: 2px; }
  .background-orbits, .main-path-ring { display: none; }
  .main-scene { position: static; width: auto; height: auto; display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 16px; }
  .main-scene .card { position: relative; top: auto; left: auto; width: auto; height: auto; min-height: 240px; padding: 24px 12px; transform: none !important; filter: none !important; }
  .card::before { display: none; }
  .card h3 { font-size: 24px; }
  .card p { display: none; }
  .card-icon { font-size: 36px; margin-bottom: 16px; }
  .price-tag { font-size: 12px; padding: 8px; }
  .home-cta { bottom: 16px; white-space: nowrap; }
}
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation: none !important; transition-duration: .01ms !important; }
}


body{--gold:#d9bc70;--gold-light:#f5edcd;min-height:100vh}.hero-section{height:max(800px,100svh)}#scale-wrapper{transform:scale(.9)}.logo-container{top:11%;}.logo-container h1{font-size:46px;letter-spacing:13px;text-shadow:0 0 40px #d9bc7026}.logo-container p{font-size:20px;color:#c1a36b;letter-spacing:3px}.main-scene,.background-orbits{top:58%}.home-moon{position:absolute;left:50%;top:49%;width:460px;max-width:45vw;transform:translate(-50%,-50%);z-index:20;pointer-events:none;filter:drop-shadow(0 0 40px #ebc45b26);opacity:.85}.bg-orbit-ring{border-color:#d9bc7012}.main-path-ring{border-color:#d9bc7029;box-shadow:none}
header{position:absolute;justify-content:space-between;align-items:center;padding:28px 40px;gap:24px}.home-navigation{display:flex;gap:26px;pointer-events:auto}.home-navigation a{font:300 11px/24px 'Montserrat',sans-serif;color:#b4a7c3;text-decoration:none;position:relative;transition:color .35s}.home-navigation a:after{content:'';position:absolute;bottom:-4px;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,#d9bc7080,transparent);transform:scaleX(0);transition:transform .5s}.home-navigation a:hover{color:var(--gold-light)}.home-navigation a:hover:after{transform:scaleX(1)}
.btn-luna{border:0;border-radius:0;background:none;backdrop-filter:none;color:#d6c6e0;padding:8px 0 8px 20px;font-size:10px;letter-spacing:1.5px;text-transform:none;position:relative}.btn-luna:before{content:'☽';font:24px Georgia,serif;color:var(--gold);margin-right:12px;vertical-align:-3px}.btn-luna:after{content:'';position:absolute;bottom:0;left:20px;right:0;height:1px;background:linear-gradient(90deg,transparent,#d9bc7050,transparent)}.btn-luna:hover{background:none;color:#ffe9b0;box-shadow:none}
.main-scene .card{width:380px;height:470px;padding:38px 34px;background:linear-gradient(155deg,#30223f33,#0d091a66 48%,#21162c33);backdrop-filter:blur(7px);-webkit-backdrop-filter:blur(7px);border:1px solid #d9bc7038;border-radius:5px;box-shadow:0 16px 50px #03020c38;overflow:hidden}.main-scene .card::before{background:linear-gradient(140deg,#08061322,#06041066);border-radius:5px;z-index:1}.main-scene .card::after{content:'';position:absolute;inset:9px;border:1px solid #d9bc7017;pointer-events:none;border-radius:2px}.main-scene .card.active{border-color:#e4c57688;box-shadow:0 20px 70px #03020c60,0 0 45px #d9bc700d}.card-number{position:absolute;top:24px;left:26px;font:10px 'Cinzel',serif;letter-spacing:2px;color:#d9bc7077}.card-ornament{position:absolute;top:24px;right:26px;width:5px;height:5px;border:1px solid #d9bc7088;transform:rotate(45deg)}.card-icon{color:#e9d59b;font-size:0;margin-bottom:24px;filter:drop-shadow(0 0 14px #d9bc7033)}.card-icon svg{width:56px;height:56px}.card h3{font-size:34px;line-height:1.1;color:var(--gold-light);margin-bottom:18px}.card p{font:300 13px/1.85 'Golos Text',sans-serif;color:#b6a9c5;margin-bottom:24px}.card .price-tag{display:flex;align-items:center;gap:7px;border:0;padding:0;color:#d9bc70;letter-spacing:.7px;font:12px 'Montserrat',sans-serif}.moon-coin{display:inline-flex;align-items:center;justify-content:center;border:1px solid #d9bc7050;border-radius:50%;width:25px;height:25px;font:19px Georgia,serif;box-shadow:inset 0 0 10px #d9bc7012}.price-from{font-size:9px;color:#ab9ab8}.price-tag strong{font:22px 'Cormorant Garamond',serif;font-weight:400}.price-unit{font-size:10px}.card-invitation{font:300 10px 'Montserrat',sans-serif;letter-spacing:.6px;color:#c0a989;margin-top:22px;padding-top:16px;position:relative}.card-invitation:before{content:'';position:absolute;top:0;left:20%;right:20%;height:1px;background:linear-gradient(90deg,transparent,#d9bc7050,transparent)}.home-whisper{position:absolute;bottom:22px;left:0;right:0;text-align:center;font:italic 18px 'Cormorant Garamond',serif;color:#b4a0be;letter-spacing:.5px;pointer-events:none}
.site-footer{background:transparent;backdrop-filter:none;border:0;box-shadow:none;padding:52px 60px 22px}.site-footer:before{content:'';position:absolute;top:0;left:10%;right:10%;height:1px;background:linear-gradient(90deg,transparent,#d9bc7040,transparent)}.footer-inner{max-width:1200px;gap:40px}.footer-brand{max-width:470px;gap:16px}.footer-logo{font-size:20px;letter-spacing:6px;text-shadow:none}.footer-logo span{font-size:27px}.footer-desc{font:300 13px/1.85 'Golos Text',sans-serif;color:#a99bb9}.tg-link{background:none;border:0;border-radius:0;padding:12px 0;gap:16px}.tg-link:hover{background:none;box-shadow:none}.tg-icon-wrap{background:none;box-shadow:none;border-color:#d9bc7040;width:40px;height:40px}.tg-label{font-size:8px;letter-spacing:1px;color:#a28eaf;margin-bottom:8px}.tg-title{font:300 18px 'Cormorant Garamond',serif;letter-spacing:1px;color:#e9ddc4}.footer-note{max-width:1200px;margin:40px auto 0;display:flex;align-items:center;justify-content:space-between;font:8px/20px 'Montserrat',sans-serif;color:#8c7e9a;text-transform:uppercase;letter-spacing:1.5px}.footer-note>span:nth-child(2){color:var(--gold);font-size:16px}
@media(min-width:1700px){.main-scene .card{width:440px;height:540px;padding:46px}.card h3{font-size:40px}.card p{font-size:14px}.card-icon svg{width:64px;height:64px}.home-moon{width:540px}}
@media(max-width:900px){header{padding:20px 22px;flex-wrap:wrap;justify-content:center;gap:14px}.home-navigation{order:2;justify-content:center;gap:18px;flex-wrap:wrap;width:100%}.home-navigation a{font-size:9px}.btn-luna{margin-left:auto;font-size:10px}.hero-section{min-height:100svh;height:auto;padding-top:150px}.logo-container{top:auto;margin-bottom:56px}.home-moon{position:fixed;top:48%;width:360px;max-width:90vw;opacity:.45;z-index:0}.main-scene{position:relative;top:auto;left:auto;gap:16px;z-index:50}.main-scene .card{width:auto;height:auto;min-height:340px;padding:38px 22px 28px;background:linear-gradient(150deg,#35234333,#0d091a88);backdrop-filter:blur(4px)}.main-scene .card p{display:block;font-size:11px;line-height:1.7;margin-bottom:18px}.card h3{font-size:28px}.card-icon svg{width:44px;height:44px}.card-icon{margin-bottom:20px}.card-number{top:16px;left:16px;font-size:8px}.card-ornament{top:17px;right:18px}.card-invitation{font-size:9px;line-height:1.6;margin-top:14px}.home-whisper{bottom:20px;font-size:16px}.site-footer{padding:36px 28px 20px}.footer-note{font-size:7px;letter-spacing:.7px;gap:12px}.footer-inner{gap:24px}.footer-desc{font-size:12px}}
@media(max-width:480px){.main-scene{gap:12px}.main-scene .card{padding:34px 14px 24px;min-height:360px}.card h3{font-size:25px}.card p{font-size:10px}.card-invitation{font-size:8px}.home-navigation{gap:10px 16px}.logo-container h1{font-size:32px;letter-spacing:8px}.logo-container p{font-size:17px}.footer-note>span:first-child{max-width:100px}.footer-note>span:last-child{max-width:100px;text-align:right}}

@media(min-width:901px) and (max-height:800px){.hero-section{height:100svh;min-height:700px}.main-scene,.background-orbits{top:56%}.main-scene .card{width:340px;height:420px;padding:32px}.card h3{font-size:30px}.card p{font-size:12px;line-height:1.75;margin-bottom:18px}.card-icon svg{width:48px;height:48px}.card-icon{margin-bottom:18px}.home-moon{top:46%;width:420px}.logo-container{top:10%}}
.main-scene .card{backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px)}

@media(max-width:900px){#scale-wrapper{transform:none}.logo-container{position:relative}.main-scene .card{backdrop-filter:blur(2px)}}

.main-scene .card:focus-visible{outline:1px solid #e4c576;outline-offset:4px}@media(min-width:901px) and (max-height:800px){.home-whisper{bottom:5px;font-size:16px}}

/* Quiet engraved edges; the surface stays translucent. */
.main-scene .card{background:radial-gradient(ellipse at 15% 0,#b394ce0d,transparent 55%),linear-gradient(155deg,#30223f40,#0d091a73 52%,#21162c40);border-color:#cbb17b45;box-shadow:0 18px 48px #03020c40,inset 0 1px 0 #f1dbad13,inset 0 -1px 0 #b394ce0a;transition:border-color 900ms ease,box-shadow 900ms ease}
.main-scene .card::after{inset:10px;border-color:#d9bc701a;border-radius:2px;background:linear-gradient(110deg,#ebd5ab05,transparent 35%,transparent 75%,#aa8dcc04)}
.main-scene .card.active{border-color:#d9bc707d;box-shadow:0 24px 64px #03020c55,0 0 36px #d9bc700a,inset 0 1px 0 #f1dbad1a}
.main-scene .card.warming-up{border-color:#d9bc7088;box-shadow:0 18px 54px #03020c50,0 0 32px #d9bc7010}
.card-edging{position:absolute;inset:17px;z-index:3;pointer-events:none;opacity:.5;transition:opacity 900ms ease}
.card-edging i{position:absolute;width:19px;height:19px;border-color:#dfc78e70;border-style:solid;border-width:0}
.card-edging i:nth-child(1){top:0;left:0;border-left-width:1px;border-top-width:1px;border-top-left-radius:7px}
.card-edging i:nth-child(2){top:0;right:0;border-right-width:1px;border-top-width:1px;border-top-right-radius:7px}
.card-edging i:nth-child(3){bottom:0;left:0;border-left-width:1px;border-bottom-width:1px;border-bottom-left-radius:7px}
.card-edging i:nth-child(4){bottom:0;right:0;border-right-width:1px;border-bottom-width:1px;border-bottom-right-radius:7px}
.card-edging:before,.card-edging:after{content:'';position:absolute;left:-1px;top:36%;height:28%;width:1px;background:linear-gradient(transparent,#dbc58b66,transparent)}
.card-edging:after{left:auto;right:-1px}.card-edging b{position:absolute;bottom:-5px;left:50%;transform:translateX(-50%);color:#d9bc7099;font:12px Georgia,serif;font-weight:400}
.card-edging b:before,.card-edging b:after{content:'';position:absolute;top:50%;height:1px;width:28px;background:linear-gradient(90deg,transparent,#d9bc7040);right:22px}.card-edging b:after{right:auto;left:22px;transform:rotate(180deg)}
.card.active .card-edging,.card.warming-up .card-edging{opacity:.85}
.card-number,.card-ornament{z-index:4}.main-scene .card-inner{pointer-events:none}
@media(max-width:900px){.card-edging{inset:12px}.card-edging i{width:13px;height:13px}}

/* A quiet reading plane, independent of the orbit's approach. */
.main-scene .card p{font:400 16px/1.6 'Golos Text',sans-serif;color:#ddd4e6;letter-spacing:.1px;max-width:32ch;margin-bottom:24px;text-wrap:pretty;transition:color .8s cubic-bezier(.33,1,.68,1)}
.main-scene .card.reading p{color:#f2eaf5}
.main-scene .card.reading{border-color:#e2c887a3;box-shadow:0 28px 72px #03020c66,0 0 48px #d9bc7014,inset 0 1px 0 #f1dbad24}
.main-scene .card.reading::before{opacity:1;background:#0d091ac4;transition:opacity 1s cubic-bezier(.33,1,.68,1)}
.main-scene .card.reading .card-edging{opacity:1}
.main-scene .card h3{margin-bottom:16px}
.main-scene .card-icon{margin-bottom:16px}
.main-scene .card-invitation{margin-top:16px;padding-top:16px;color:#d4bf9b}

/* Small celestial symbols tie navigation to the engraved cards. */
header{padding:24px 32px;gap:24px}
.home-navigation{gap:4px;padding:4px;border:1px solid #d9bc702b;border-radius:999px;background:#16102340;box-shadow:inset 0 1px 0 #f0d9a510,0 8px 32px #05030d18;backdrop-filter:blur(12px)}
.home-navigation a{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 16px;border-radius:999px;min-height:44px;font:400 14px/20px 'Golos Text',sans-serif;color:#d3c5dc;letter-spacing:.1px;transition:color .7s cubic-bezier(.16,1,.3,1),background-color .7s cubic-bezier(.16,1,.3,1),box-shadow .7s cubic-bezier(.16,1,.3,1)}
.nav-symbol{width:20px;height:20px;flex:none;color:#cfb979;opacity:.75;transition:opacity .7s cubic-bezier(.33,1,.68,1)}
.home-navigation a:after{bottom:6px;left:32px;right:32px;background:linear-gradient(90deg,transparent,#e7d3a977,transparent);transition:transform .7s cubic-bezier(.16,1,.3,1)}
.home-navigation a:hover,.home-navigation a:focus-visible{color:#f5edcd;background:#d9bc700c;box-shadow:inset 0 0 16px #d9bc7007}
.home-navigation a:hover .nav-symbol,.home-navigation a:focus-visible .nav-symbol{opacity:1}
.home-navigation a:active{background:#d9bc701a}
.home-navigation a:focus-visible,.btn-luna:focus-visible{outline:1px solid #e2c887aa;outline-offset:4px}
.btn-luna{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:8px 24px;gap:12px;border:1px solid #d9bc7052;border-radius:999px;background:#19102252;color:#e8dcc5;font:400 14px/24px 'Golos Text',sans-serif;letter-spacing:.6px;box-shadow:inset 0 1px 0 #f0d9a510;transition:color .7s cubic-bezier(.16,1,.3,1),background-color .7s cubic-bezier(.16,1,.3,1),border-color .7s cubic-bezier(.16,1,.3,1),box-shadow .7s cubic-bezier(.16,1,.3,1)}
.btn-luna:before{font-size:32px;margin:0;vertical-align:0;line-height:32px}
.btn-luna:after{left:32px;right:32px;bottom:4px;opacity:.5}
.btn-luna:hover{border-color:#e2c88799;background:#d9bc700b;color:#fff1c7;box-shadow:0 0 24px #d9bc7010,inset 0 1px 0 #f0d9a518}
.btn-luna:active{background:#d9bc7018}
@media(min-width:901px) and (max-height:800px){.main-scene .card p{font-size:14px;line-height:1.6;margin-bottom:16px}.main-scene .card-invitation{margin-top:12px;padding-top:12px}.main-scene .card-icon{margin-bottom:12px}.main-scene .card h3{margin-bottom:16px}}
@media(min-width:1700px){.main-scene .card p{font-size:18px;line-height:1.6}}
@media(min-width:901px) and (max-width:1150px){header{padding:24px;gap:16px}.home-navigation a{font-size:12px;padding:12px;gap:8px}.nav-symbol{width:16px;height:16px}.btn-luna{font-size:12px;padding:8px 16px;gap:8px}}
@media(max-width:900px){header{padding:16px;gap:16px}.home-navigation{width:auto;max-width:100%;padding:4px;gap:0}.home-navigation a{padding:8px 12px;font-size:12px;gap:8px;min-height:40px}.nav-symbol{width:16px;height:16px}.btn-luna{margin-left:auto;font-size:14px;padding:8px 24px}.main-scene .card{min-height:400px}.main-scene .card p{font-size:14px;line-height:1.6;margin-bottom:16px}.main-scene .card-invitation{margin-top:16px}}
@media(max-width:600px){.home-navigation{display:grid;grid-template-columns:1fr 1fr;border-radius:16px;width:100%}.home-navigation a{font-size:12px;justify-content:flex-start;padding:8px 12px}.hero-section{padding-top:200px}.main-scene{grid-template-columns:1fr}.main-scene .card{min-height:360px;padding:32px}.main-scene .card p{font-size:16px;max-width:34ch}.main-scene .card h3{font-size:32px}.btn-luna{min-height:48px}.home-notice{left:16px;right:16px;max-width:none}}
