@font-face {
  font-family:Cormorant;
  src:url('assets/CormorantGaramond-Regular.otf') format('opentype');
  font-style:normal;
  font-weight:400;
  font-display:swap
}
:root {
  color-scheme:dark;
  --bg:#080b12;
  --surface:#111722;
  --surface2:#172131;
  --text:#f3eee5;
  --muted:#b6becc;
  --gold:#cfb477;
  --line:#cfb47735;
  --glow:#b38a3d16;
  --heading:Cormorant,Georgia,serif
}
:root[data-theme=day] {
  color-scheme:light;
  --bg:#f9fbfc;
  --surface:#fdfcf8;
  --surface2:#e9f1f8;
  --text:#202a38;
  --muted:#596779;
  --gold:#806020;
  --line:#80602038;
  --glow:#c7af7816
}
* {
  box-sizing:border-box
}
html {
  scroll-behavior:smooth;
  scroll-padding-top:2rem
}
body {
  margin:0;
  background:radial-gradient(ellipse at 80% 9%,var(--glow),transparent 38%),linear-gradient(155deg,var(--bg) 15%,var(--surface2) 62%,var(--bg));
  color:var(--text);
  font-family:system-ui,-apple-system,'Segoe UI',sans-serif;
  line-height:1.65
}
body:before {
  content:'';
  position:fixed;
  inset:0;
  pointer-events:none;
  background-image:radial-gradient(circle,var(--gold) .7px,transparent 1px),radial-gradient(circle,var(--gold) .5px,transparent .9px);
  background-size:137px 163px,223px 197px;
  background-position:23px 68px,80px 18px;
  opacity:.2;
  z-index:-1
}
a {
  color:inherit;
  text-decoration:none
}
button {
  font:inherit;
  cursor:pointer;
  color:inherit
}
button,a {
  -webkit-tap-highlight-color:transparent
}
button:focus-visible,a:focus-visible {
  outline:3px solid var(--gold);
  outline-offset:6px
}
button:hover,a:hover {
  filter:brightness(1.12)
}
[hidden] {
  display:none!important
}
.wrap {
  width:min(1200px,calc(100% - 96px));
  margin-inline:auto
}
.header {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  padding-block:27px;
  border-bottom:1px solid var(--line)
}
.brand {
  display:inline-flex;
  align-items:center;
  gap:12px;
  font-family:var(--heading);
  font-size:36px;
  line-height:1
}
.brand img {
  border-radius:50%;
  width:48px;
  height:48px
}
.header nav {
  display:flex;
  gap:32px;
  font-size:13px;
  color:var(--muted)
}
.theme-button {
  background:transparent;
  border:1px solid var(--line);
  border-radius:30px;
  padding:10px 17px;
  font-size:12px;
  white-space:nowrap
}
.theme-button>span:first-child {
  font-size:19px;
  color:var(--gold);
  vertical-align:middle;
  margin-right:5px
}
.skip-link {
  position:absolute;
  left:20px;
  top:-100px;
  background:var(--surface);
  padding:12px;
  z-index:5
}
.skip-link:focus {
  top:20px
}
.hero {
  display:grid;
  grid-template-columns:1.1fr 1fr;
  align-items:center;
  gap:40px;
  min-height:720px;
  padding-block:80px
}
.eyebrow {
  font-size:10px;
  line-height:1.8;
  letter-spacing:.22em;
  color:var(--gold);
  font-weight:650
}
.small-star {
  font-size:16px;
  margin-right:8px
}
h1,h2,h3,p {
  margin-top:0
}
h1,h2,h3 {
  font-family:var(--heading);
  font-weight:400;
  line-height:1.05
}
h1 {
  font-size:clamp(48px,5.1vw,76px);
  letter-spacing:-.035em;
  margin-bottom:28px
}
em {
  font-weight:400;
  color:var(--gold)
}
.lead {
  font-size:15px;
  color:var(--muted);
  max-width:455px;
  line-height:1.9
}
.hero-actions {
  display:flex;
  align-items:center;
  gap:27px;
  margin-top:32px;
  flex-wrap:wrap
}
.button {
  display:inline-flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  border-radius:5px;
  border:1px solid var(--line);
  padding:14px 24px;
  font-size:13px;
  font-weight:600;
  min-height:48px
}
.primary {
  background:linear-gradient(110deg,#dec58d,#b99351);
  color:#15110a;
  border-color:#e5cd95;
  box-shadow:0 5px 25px #0002
}
.text-link {
  font-size:12px;
  color:var(--muted);
  padding-block:12px
}
.text-link span {
  color:var(--gold);
  margin-left:12px
}
.hero-note {
  color:var(--muted);
  font-size:10px;
  margin-top:28px;
  letter-spacing:.045em
}
.hero-art {
  position:relative;
  min-width:0;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  isolation:isolate
}
.emblem-frame {
  width:min(87%,370px);
  aspect-ratio:1;
  background:#080808;
  border-radius:50%;
  box-shadow:0 0 80px #cfa75013,0 0 0 1px #cfb47755,0 0 0 15px #cfb47708;
  overflow:hidden
}
.emblem-frame img {
  width:100%;
  height:auto;
  display:block
}
.orbit {
  position:absolute;
  border:1px solid var(--line);
  border-radius:50%;
  pointer-events:none;
  z-index:-1
}
.orbit-one {
  width:90%;
  aspect-ratio:1;
  transform:rotate(-20deg) scaleY(.78)
}
.orbit-two {
  width:85%;
  aspect-ratio:1;
  transform:rotate(42deg) scaleY(.85)
}
.orbit-star {
  position:absolute;
  color:var(--gold);
  background:var(--bg);
  font-size:27px;
  line-height:1
}
.star-one {
  right:3%;
  top:18%
}
.star-two {
  left:2%;
  bottom:30%;
  font-size:20px
}
.art-caption {
  font-family:var(--heading);
  font-size:24px;
  text-align:center;
  margin:48px 0 0
}
.section {
  padding-block:75px
}
.section-heading {
  display:grid;
  grid-template-columns:1fr 1fr;
  align-items:end;
  gap:80px;
  margin-bottom:40px
}
.section-heading h2 {
  font-size:56px;
  letter-spacing:-.02em;
  margin-bottom:0
}
.section-heading>p {
  font-size:14px;
  line-height:1.9;
  color:var(--muted);
  max-width:420px;
  margin-bottom:4px
}
.demo-panel {
  display:grid;
  grid-template-columns:1fr 1.05fr;
  border:1px solid var(--line);
  border-radius:12px;
  overflow:hidden;
  background:var(--surface);
  box-shadow:0 20px 90px #0001
}
.demo-scene {
  position:relative;
  min-height:470px;
  display:flex;
  align-items:center;
  justify-content:center;
  background:radial-gradient(ellipse,#b9954c14,transparent 67%),linear-gradient(130deg,var(--surface2),var(--bg));
  padding:60px 30px
}
.scene-corner,.scene-caption {
  position:absolute;
  font-size:9px;
  color:var(--muted);
  letter-spacing:.2em
}
.scene-corner {
  top:28px;
  left:30px
}
.scene-caption {
  bottom:26px;
  letter-spacing:.08em
}
.cup {
  width:230px;
  height:230px;
  border-radius:50%;
  border:15px solid #eee3cc;
  box-shadow:0 0 0 9px #c7bda5,0 0 0 26px #e6deca,8px 19px 35px #0006;
  position:relative;
  background:radial-gradient(circle,#483328 40%,#24170f 70%);
  transform:rotate(-18deg)
}
.cup:after {
  content:'';
  position:absolute;
  width:43px;
  height:58px;
  border:13px solid #e3d7be;
  border-radius:18px;
  right:-59px;
  top:67px;
  z-index:-1
}
.grounds {
  position:absolute;
  inset:8%;
  border:4px dotted #947052;
  border-bottom:20px solid #947052;
  border-radius:42% 45% 48% 35%;
  transform:rotate(25deg);
  box-shadow:inset -18px 12px 0 #78513988
}
.grounds:after {
  content:'';
  position:absolute;
  left:44%;
  top:-8%;
  width:18px;
  height:82%;
  background:#bf9b7044;
  border-radius:40%;
  transform:rotate(18deg)
}
.demo-content {
  padding:38px 42px
}
.demo-switch {
  display:inline-flex;
  background:var(--bg);
  padding:4px;
  border:1px solid var(--line);
  border-radius:30px;
  margin-bottom:30px;
  max-width:100%
}
.demo-switch button {
  border:0;
  background:transparent;
  padding:10px 19px;
  border-radius:25px;
  font-size:12px;
  color:var(--muted)
}
.demo-switch button[aria-pressed=true] {
  background:var(--surface2);
  color:var(--gold);
  box-shadow:0 1px 6px #0002
}
.sample-label {
  font-size:9px;
  letter-spacing:.16em;
  color:var(--gold);
  margin-bottom:14px
}
h3 {
  font-size:38px;
  margin-bottom:20px
}
.demo-content p {
  font-size:13px;
  line-height:1.9
}
.demo-content .reflection {
  color:var(--gold);
  border-left:2px solid var(--line);
  padding-left:18px;
  margin:22px 0
}
.demo-content .demo-disclosure {
  font-size:10px;
  color:var(--muted);
  line-height:1.8;
  margin:24px 0 0
}
.reveal {
  background:transparent;
  color:var(--gold);
  margin-top:5px
}
.tarot-art {
  width:190px;
  height:310px;
  border:1px solid var(--gold);
  outline:1px solid var(--line);
  outline-offset:7px;
  border-radius:80px 80px 7px 7px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:space-around;
  padding-block:25px;
  color:var(--gold);
  font-family:var(--heading);
  font-size:20px;
  background:linear-gradient(145deg,var(--surface2),var(--bg));
  box-shadow:15px 20px 25px #0003
}
.tarot-art .tarot-star {
  font-size:100px;
  line-height:1
}
.tarot-art.card-back .tarot-star {
  font-size:65px;
  opacity:.5
}
.world-grid {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  border-top:1px solid var(--line);
  border-left:1px solid var(--line)
}
.world-grid article {
  padding:32px;
  border-right:1px solid var(--line);
  border-bottom:1px solid var(--line)
}
.module-number {
  font-family:var(--heading);
  color:var(--gold);
  font-size:18px
}
.world-grid h3 {
  font-size:34px;
  margin:17px 0 14px
}
.world-grid p {
  font-size:12px;
  line-height:1.9;
  color:var(--muted);
  max-width:290px;
  margin-bottom:0
}
.privacy {
  display:grid;
  grid-template-columns:150px 1fr;
  align-items:center;
  gap:50px;
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
  margin-top:55px
}
.privacy-mark {
  font-size:110px;
  color:var(--gold);
  text-align:center;
  line-height:1
}
.privacy h2 {
  font-size:43px;
  margin-bottom:20px
}
.privacy p:not(.eyebrow) {
  max-width:740px;
  font-size:13px;
  line-height:1.9
}
.muted {
  color:var(--muted)
}
.closing {
  text-align:center;
  padding-block:110px
}
.closing h2 {
  font-size:62px;
  letter-spacing:-.02em;
  margin-block:20px 22px
}
.closing>p:not(.eyebrow) {
  font-size:14px;
  color:var(--muted);
  margin-bottom:30px
}
.footer {
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:24px;
  border-top:1px solid var(--line);
  padding-block:30px
}
.footer .brand {
  font-size:31px
}
.footer p,.footer>a:last-child {
  font-size:10px;
  color:var(--muted);
  margin:0
}
.noscript {
  color:var(--muted);
  font-size:13px;
  margin-top:20px
}
@media(min-width:1500px) {
  .hero {
    min-height:800px
  }
}
@media(max-width:950px) {
  .wrap {
    width:calc(100% - 48px)
  }
  .hero {
    gap:24px;
    min-height:650px
  }
  h1 {
    font-size:53px
  }
  .emblem-frame {
    width:85%
  }
  .header nav {
    gap:18px
  }
  .section-heading {
    gap:40px
  }
  .demo-content {
    padding:30px
  }
  .cup {
    width:180px;
    height:180px
  }
  .cup:after {
    top:46px
  }
  .world-grid article {
    padding:25px
  }
  .privacy {
    grid-template-columns:90px 1fr;
    gap:25px
  }
  .privacy-mark {
    font-size:80px
  }
}
@media(max-width:680px) {
  .wrap {
    width:calc(100% - 40px)
  }
  .header {
    gap:14px;
    padding-block:20px;
    flex-wrap:wrap
  }
  .brand {
    font-size:32px;
    gap:9px
  }
  .brand img {
    width:39px;
    height:39px
  }
  .header nav {
    order:3;
    width:100%;
    justify-content:space-between;
    border-top:1px solid var(--line);
    padding-top:15px;
    font-size:11px
  }
  .theme-button {
    font-size:11px;
    padding:8px 12px
  }
  .hero {
    grid-template-columns:1fr;
    padding-top:52px;
    padding-bottom:35px;
    gap:45px;
    min-height:0
  }
  h1 {
    font-size:clamp(44px,10.5vw,62px)
  }
  .hero .eyebrow {
    font-size:8px;
    letter-spacing:.13em
  }
  .lead {
    font-size:14px
  }
  .hero-actions {
    gap:22px
  }
  .button {
    font-size:12px;
    padding:13px 20px
  }
  .hero-note {
    font-size:9px;
    margin-top:23px
  }
  .hero-art {
    max-width:360px;
    width:100%;
    margin:auto
  }
  .emblem-frame {
    width:72%
  }
  .art-caption {
    margin-top:30px;
    font-size:22px
  }
  .section {
    padding-block:48px
  }
  .section-heading {
    grid-template-columns:1fr;
    gap:23px;
    margin-bottom:28px
  }
  .section-heading h2 {
    font-size:47px
  }
  .section-heading>p {
    font-size:13px
  }
  .demo-panel {
    grid-template-columns:1fr
  }
  .demo-scene {
    min-height:340px
  }
  .demo-content {
    padding:28px 24px
  }
  .demo-switch button {
    padding:9px 18px
  }
  .demo-content h3 {
    font-size:35px
  }
  .tarot-art {
    width:160px;
    height:240px;
    padding-block:15px
  }
  .tarot-art .tarot-star {
    font-size:80px
  }
  .world-grid {
    grid-template-columns:1fr 1fr
  }
  .world-grid article {
    padding:23px 18px
  }
  .world-grid h3 {
    font-size:30px
  }
  .world-grid p {
    font-size:12px
  }
  .privacy {
    grid-template-columns:1fr;
    gap:24px;
    margin-top:30px
  }
  .privacy-mark {
    text-align:left;
    font-size:60px
  }
  .privacy h2 {
    font-size:39px
  }
  .closing {
    padding-block:70px
  }
  .closing h2 {
    font-size:48px
  }
  .footer {
    flex-wrap:wrap;
    justify-content:flex-start;
    gap:20px
  }
  .footer p {
    width:calc(100% - 100px)
  }
  .footer>a:last-child {
    width:100%
  }
}
@media(max-width:360px) {
  .world-grid {
    grid-template-columns:1fr
  }
  .hero-actions {
    align-items:flex-start;
    flex-direction:column;
    gap:6px
  }
  .demo-content {
    padding:25px 18px
  }
  .demo-switch button {
    padding:9px 14px
  }
  .hero-note {
    max-width:240px
  }
}
@media(prefers-reduced-motion:reduce) {
  html {
    scroll-behavior:auto
  }
}
@media(forced-colors:active) {
  .primary,.theme-button,.demo-switch button {
    border:1px solid ButtonText
  }
  .orbit,.orbit-star {
    display:none
  }
}

:root[data-text-size=large] {
  font-size:200%;
}
:root[data-text-size=large] .coming-soon {
  overflow-wrap:anywhere;
}
:root[data-text-size=large] .coming-soon .sidebar {
  position:static;
  inset:auto;
  width:calc(100% - 2rem);
  height:auto;
  margin-inline:auto;
  padding:1rem 0;
  flex-direction:row;
  flex-wrap:wrap;
  border-right:0;
  border-bottom:1px solid var(--line);
}
:root[data-text-size=large] .coming-soon .sidebar .brand {
  width:100%;
}
:root[data-text-size=large] .coming-soon .sidebar-caption,
:root[data-text-size=large] .coming-soon .sidebar-bottom {
  display:none;
}
:root[data-text-size=large] .coming-soon .menu-button {
  display:flex;
}
:root[data-text-size=large] .coming-soon .module-nav {
  display:none;
  order:4;
}
:root[data-text-size=large] .coming-soon[data-menu-open=true] .module-nav {
  display:grid;
}
:root[data-text-size=large] .coming-soon main {
  margin-left:0;
}
:root[data-text-size=large] .coming-soon main>.wrap,
:root[data-text-size=large] .coming-soon .footer {
  width:calc(100% - 2rem);
  margin-inline:auto;
}
:root[data-text-size=large] .coming-soon .hero,
:root[data-text-size=large] .coming-soon .section-heading,
:root[data-text-size=large] .coming-soon .privacy,
:root[data-text-size=large] .coming-soon .world-grid {
  grid-template-columns:1fr;
}
:root[data-text-size=large] .coming-soon .hero {
  min-height:0;
}
:root[data-text-size=large] .coming-soon .hero-art {
  width:100%;
  max-width:18rem;
  justify-self:center;
}
:root[data-text-size=large] .coming-soon .gold-wordmark {
  white-space:normal;
}

/* The public introduction has its own layout; the retained private demo stays intact. */
.coming-soon {
  --sidebar-width:16rem;
  background:radial-gradient(ellipse at 85% 8%,var(--glow),transparent 35%),linear-gradient(145deg,var(--bg),var(--surface2) 85%);
}
.coming-soon .sidebar {
  padding-block:1.5rem;
  gap:1rem;
}
.sidebar-caption,.sidebar-bottom {
  display:none;
}
.coming-soon .menu-button {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:1.5rem;
  border:1px solid var(--line);
  border-radius:.6rem;
  padding:.75rem 1rem;
  background:var(--surface);
  font-size:.875rem;
  min-height:3rem;
  width:100%;
}
.coming-soon .module-nav {
  display:none;
  width:100%;
  order:4;
  padding:0;
  border:0;
  gap:.25rem;
}
.coming-soon[data-menu-open=true] .module-nav {
  display:grid;
}
.module-nav a {
  display:flex;
  align-items:center;
  gap:.75rem;
  min-height:3rem;
  padding:.75rem;
  border:1px solid transparent;
  border-radius:.6rem;
  font-size:.875rem;
}
.module-nav a:hover,.module-nav a:focus-visible {
  border-color:var(--line);
  background:var(--glow);
  color:var(--gold);
}
.module-nav a>span {
  width:1.5rem;
  text-align:center;
  color:var(--gold);
  font-family:Georgia,serif;
  font-size:1.125rem;
}
.coming-soon .wrap {
  max-width:76rem;
}
.coming-soon .hero {
  min-height:43rem;
}
.coming-soon h1 {
  font-size:clamp(4.5rem,7.2vw,7.5rem);
  line-height:.98;
  margin-bottom:2rem;
}
.coming-soon .lead {
  font-size:1rem;
  line-height:1.9;
}
.coming-soon .button {
  font-size:.8125rem;
  max-width:100%;
}
.coming-soon .art-caption {
  font-size:1.5rem;
}
.coming-soon .closing>p:not(.eyebrow):not(.brand-slogan) {
  font-size:.875rem;
}
.coming-soon .footer .brand {
  font-size:1.9375rem;
}
.coming-soon .hero-note {
  font-size:.75rem;
  line-height:1.8;
}
.coming-soon .eyebrow {
  font-size:.6875rem;
  letter-spacing:.16em;
}
.coming-soon .world-grid {
  border:0;
  gap:1.25rem;
  grid-template-columns:repeat(2,minmax(0,1fr));
}
.coming-soon .world-grid article {
  position:relative;
  min-width:0;
  display:flex;
  flex-direction:column;
  padding:2rem;
  border:1px solid var(--line);
  border-radius:1rem;
  background:radial-gradient(ellipse at 95% 0,var(--glow),transparent 65%),linear-gradient(135deg,var(--surface),var(--bg));
  box-shadow:0 .8rem 2rem #0001,inset 0 1px 0 #cfb47720;
  scroll-margin-top:2rem;
}
.coming-soon .world-grid article:target {
  outline:2px solid var(--gold);
  outline-offset:.25rem;
}
.coming-soon .module-number {
  font-family:inherit;
  font-size:.6875rem;
  line-height:1.8;
  letter-spacing:.12em;
  max-width:calc(100% - 2.5rem);
}
.module-symbol {
  position:absolute;
  right:1.75rem;
  top:1.6rem;
  color:var(--gold);
  font-family:Georgia,serif;
  font-size:1.75rem;
  line-height:1;
}
.line-icon {
  width:1.5rem;
  height:1.5rem;
  fill:none;
  stroke:currentColor;
  stroke-width:1.4;
  stroke-linecap:round;
  stroke-linejoin:round;
}
svg.module-symbol {
  width:1.75rem;
  height:1.75rem;
}
.coming-soon .world-grid h3 {
  font-size:2.625rem;
  line-height:1.08;
  margin:1.75rem 0 1.25rem;
}
.coming-soon .world-grid p {
  font-size:.875rem;
  line-height:1.9;
  max-width:28rem;
  margin-bottom:1.5rem;
}
.module-state {
  display:block;
  margin-top:auto;
  padding-top:1.25rem;
  border-top:1px solid var(--line);
  color:var(--gold);
  font-size:.75rem;
  line-height:1.8;
}
.coming-soon .section-heading h2 {
  font-size:3.25rem;
}
.coming-soon .section-heading>p,.coming-soon .privacy p:not(.eyebrow) {
  font-size:.875rem;
}
.coming-soon .privacy {
  grid-template-columns:4rem 1fr;
  gap:2rem;
}
.coming-soon .privacy-mark {
  font-size:4rem;
}
.coming-soon .privacy h2 {
  font-size:2.75rem;
}
.coming-soon .footer p,.coming-soon .footer>a:last-child {
  font-size:.75rem;
  line-height:1.8;
}
@media(min-width:68rem) {
  .coming-soon .sidebar {
    position:fixed;
    inset:0 auto 0 0;
    width:var(--sidebar-width);
    max-width:none;
    height:100dvh;
    overflow-y:auto;
    margin:0;
    padding:2rem 1.25rem;
    border-bottom:0;
    border-right:1px solid var(--line);
    background:var(--bg);
    flex-direction:column;
    align-items:stretch;
    justify-content:flex-start;
    z-index:4;
  }
  .coming-soon .sidebar .brand {
    font-size:2.75rem;
    gap:.75rem;
    padding-inline:.5rem;
  }
  .sidebar-caption {
    display:block;
    font-size:.5625rem;
    letter-spacing:.12em;
    color:var(--muted);
    padding-inline:.5rem;
    margin:.25rem 0 1.25rem;
  }
  .coming-soon .module-nav {
    display:grid;
    order:0;
  }
  .coming-soon .menu-button {
    display:none;
  }
  .sidebar-bottom {
    display:block;
    padding:.75rem;
    margin-top:auto;
  }
  .sidebar-bottom p {
    font-family:var(--heading);
    font-size:1.5rem;
    line-height:1.2;
    margin-bottom:1.5rem;
  }
  .sidebar-bottom>a {
    display:inline-block;
    color:var(--muted);
    font-size:.75rem;
    padding-block:.5rem;
  }
  .coming-soon .theme-button {
    font-size:.75rem;
    padding:.7rem;
    min-height:3rem;
  }
  .coming-soon main {
    margin-left:var(--sidebar-width);
  }
  .coming-soon main>.wrap {
    width:calc(100% - 5rem);
  }
  .coming-soon .hero {
    gap:1.5rem;
    grid-template-columns:1fr .9fr;
    min-height:46rem;
  }
  .coming-soon .footer {
    margin-left:calc(var(--sidebar-width) + 2.5rem);
    width:calc(100% - var(--sidebar-width) - 5rem);
  }
  .coming-soon .section-heading {
    gap:2rem;
  }
}
@media(max-width:42rem) {
  .coming-soon .hero {
    min-height:0;
  }
  .coming-soon h1 {
    font-size:clamp(4rem,18vw,6rem);
  }
  .coming-soon .world-grid {
    grid-template-columns:1fr;
  }
  .coming-soon .world-grid article {
    padding:1.5rem;
  }
  .coming-soon .privacy {
    grid-template-columns:1fr;
  }
  .coming-soon .section-heading h2 {
    font-size:2.75rem;
  }
}

.coming-soon .gold-wordmark {
  color:#dfbc73;
  background:linear-gradient(165deg,#fff1b7 6%,#bd8c36 35%,#f7dba0 55%,#b27b28 80%,#f5d99b);
  -webkit-background-clip:text;
  background-clip:text;
  -webkit-text-fill-color:transparent;
  text-shadow:none;
  filter:drop-shadow(0 1px 0 #ffffff80) drop-shadow(0 0 .35rem #ffffff38);
  letter-spacing:.035em;
}
:root[data-theme=day] .coming-soon .gold-wordmark {
  background-image:linear-gradient(165deg,#795316 6%,#a36d1c 35%,#bd882c 55%,#70470e 80%,#9f6c1b);
  -webkit-text-stroke:.2px #79531680;
  text-shadow:none;
  filter:drop-shadow(0 1px 0 #ffffffcc) drop-shadow(0 0 .3rem #ffffff80);
}
.coming-soon .sidebar .brand {
  gap:.5rem;
  padding-inline:0;
}
.coming-soon .sidebar .gold-wordmark {
  font-size:1.5rem;
  white-space:nowrap;
}
.coming-soon h1 {
  margin-bottom:.75rem;
  min-width:0;
}
.coming-soon .hero .gold-wordmark {
  display:block;
  font-size:clamp(2.1rem,4.5vw,5.4rem);
  line-height:1.2;
  white-space:nowrap;
}
.coming-soon .brand-slogan {
  color:#d9b46c;
  background:linear-gradient(110deg,#e64b50 5%,#b61f31 27%,#24120e 43%,#bf8b32 63%,#ffdfa1 80%,#b52a33 100%);
  -webkit-background-clip:text;
  background-clip:text;
  -webkit-text-fill-color:transparent;
  -webkit-text-stroke:.35px #d6b06b;
  font-family:var(--heading);
  font-weight:400;
  letter-spacing:.06em;
  line-height:1.3;
  text-shadow:0 1px 1px #0008,0 0 .65rem #d8b36c35;
}
.coming-soon .hero-slogan {
  display:inline-block;
  font-size:clamp(1.6rem,2.8vw,2.7rem);
  margin:0 0 1.5rem;
}
.coming-soon .launch-status {
  display:table;
  padding:.35rem 1rem;
  border:1px solid var(--line);
  border-radius:2rem;
  color:var(--gold);
  font-size:.75rem;
  letter-spacing:.1em;
  margin-bottom:1.75rem;
}
.coming-soon .module-nav {
  gap:.6rem;
}
.coming-soon .module-nav a {
  color:#fff8e9;
  background:linear-gradient(115deg,#785321,#513817 68%,#725024);
  border:1px solid #cfaa60;
  border-left:3px solid #e4bf76;
  box-shadow:inset 0 1px 0 #fff6,0 .25rem .75rem #0002;
  text-shadow:0 1px 2px #000,0 0 .45rem #ffffff75;
  font-weight:550;
  font-size:.8125rem;
  gap:.55rem;
}
.coming-soon .module-nav a:hover,.coming-soon .module-nav a:focus-visible {
  color:#fff;
  background:linear-gradient(115deg,#8e6228,#5a3a13 68%,#805b2c);
  border-color:#ffe0a0;
  box-shadow:inset 0 1px 0 #fff8,0 0 1rem #d3ac6630;
}
.coming-soon .module-nav a>span {
  color:#ffe2a0;
  flex-shrink:0;
}
.coming-soon .closing h2.gold-wordmark {
  font-size:clamp(2.25rem,5vw,4rem);
}
.coming-soon .closing .brand-slogan {
  font-size:2rem;
  margin-bottom:2rem;
}
@media(forced-colors:active) {
  .coming-soon .gold-wordmark,.coming-soon .brand-slogan {
    background:none;
    -webkit-text-fill-color:CanvasText;
    -webkit-text-stroke:0;
    text-shadow:none;
    filter:none;
  }
  .coming-soon .module-nav a {
    background:Canvas;
    color:LinkText;
    text-shadow:none;
    border-color:LinkText;
  }
}

/* Private visual review: publication and final appearance require human approval. */
.cosmic-review { background:#080b10; }
.cosmic-review:before {
  z-index:0;
  opacity:1;
  background-image:linear-gradient(90deg,#05080db3,#080b1026 70%,#080b1038),url('assets/samanyolu-dunya-mavi-v3.png');
  background-size:cover;
  background-position:center;
}
.cosmic-review main,.cosmic-review .footer { position:relative; z-index:1; }
.cosmic-review .sidebar { background:#080b10e8; backdrop-filter:blur(12px); }
.cosmic-review .module-nav { grid-template-columns:minmax(0,1fr); justify-content:stretch; }
.cosmic-review .module-nav a { width:100%; min-width:0; }
.cosmic-review .tarot-nav { min-width:0; }
.cosmic-review .tarot-nav summary { display:flex; align-items:center; gap:.55rem; min-height:3rem; padding:.75rem; list-style:none; cursor:pointer; border:1px solid #cfaa60; border-left:3px solid #e4bf76; border-radius:.6rem; background:linear-gradient(115deg,#785321,#513817 68%,#725024); color:#fff8e9; box-shadow:inset 0 1px 0 #fff6,0 .25rem .75rem #0002; text-shadow:0 1px 2px #000,0 0 .45rem #ffffff75; font-size:.8125rem; font-weight:550; }
.cosmic-review .tarot-nav summary::-webkit-details-marker { display:none; }
.cosmic-review .tarot-nav summary>span:first-child { width:1.5rem; text-align:center; color:#ffe2a0; font-size:1.125rem; }
.cosmic-review .nav-chevron { margin-left:auto; color:#ffe2a0; }
.cosmic-review .tarot-nav[open] .nav-chevron { transform:rotate(180deg); }
.cosmic-review .tarot-nav summary:hover,.cosmic-review .tarot-nav summary:focus-visible,.cosmic-review:has(:is(#tarot,#tarot-tek,#tarot-uc):target) .tarot-nav summary { border-color:#ffe0a0; background:linear-gradient(115deg,#9c702e,#65441b 70%,#8b632d); box-shadow:inset 0 1px 0 #fff9,0 0 1rem #d3ac663d; }
.cosmic-review .tarot-submenu { display:grid; gap:.4rem; margin:.6rem 0 .2rem .8rem; padding-left:.6rem; border-left:1px solid #d3ad6a80; }
.cosmic-review .tarot-submenu a { min-height:2.75rem; font-size:.75rem; background:linear-gradient(115deg,#332717,#17151a); border-color:#a9894f88; }
.cosmic-review:has(#tarot-tek:target) .tarot-submenu a[href="#tarot-tek"],.cosmic-review:has(#tarot-uc:target) .tarot-submenu a[href="#tarot-uc"] { background:#805c29; border-color:#ffe0a0; }
.tarot-anchor { position:absolute; top:0; left:0; scroll-margin-top:2rem; }
.tarot-visual { display:flex; align-items:center; justify-content:center; padding:1rem; }
/* Keep the approved illustration; frame only the selected one- or three-card area. */
.tarot-single-art { width:min(15rem,60%); aspect-ratio:325/520; max-height:100%; background:url('assets/tarot-uc-ve-tek-kart-v1.png') 50% 92.2%/445.54% 208.85% no-repeat; border-radius:.45rem; box-shadow:0 0 2rem #d3ad6a25; }
.tarot-triple-art { display:none; width:100%; aspect-ratio:1448/515; background:url('assets/tarot-uc-ve-tek-kart-v1.png') center top/100% auto no-repeat; }
.cosmic-review:has(#tarot-uc:target) .tarot-single-art { display:none; }
.cosmic-review:has(#tarot-uc:target) .tarot-triple-art { display:block; }
.cosmic-review:has(#kahve:target) .module-nav a[href="#kahve"],
.cosmic-review:has(#tarot:target) .module-nav a[href="#tarot"],
.cosmic-review:has(#astroloji:target) .module-nav a[href="#astroloji"],
.cosmic-review:has(#ruya:target) .module-nav a[href="#ruya"],
.cosmic-review:has(#gunluk:target) .module-nav a[href="#gunluk"],
.cosmic-review:has(#kucuk-adimlar:target) .module-nav a[href="#kucuk-adimlar"] { border-color:#ffe0a0; background:linear-gradient(115deg,#9c702e,#65441b 70%,#8b632d); box-shadow:inset 0 1px 0 #fff9,0 0 1rem #d3ac663d; }
.cosmic-review .hero { min-height:44rem; }
.cosmic-review .hero-art { min-height:28rem; justify-content:flex-end; padding-bottom:1rem; }
.cosmic-review .hero-art .orbit,.cosmic-review .hero-art .orbit-star { display:none; }
.cosmic-review .hero-art .emblem-frame { width:5.75rem; }
.cosmic-review .hero-art .art-caption { font-size:1.4rem; margin:1.4rem 0 0; max-width:15rem; }
.cosmic-review .section-heading { padding:1.75rem; border-radius:1rem; background:#080b10d9; border:1px solid var(--line); }
.cosmic-review .world-grid article { border-color:#d3ad6a75; background:#101218ed; box-shadow:0 1.25rem 3rem #0005,inset 0 1px 0 #f6dfac26; }
.cosmic-review .world-grid .feature-card { padding:0; overflow:hidden; }
.feature-visual { position:relative; height:23rem; flex-shrink:0; background:#090a0c; }
.feature-visual>img { width:100%; height:100%; display:block; object-fit:cover; }
.coffee-visual>img { object-position:100% center; }
.coffee-visual:after { content:''; position:absolute; inset:0; background:linear-gradient(180deg,#08090920 25%,#08090920 40%,#080909dd 100%); }
.cosmic-review .feature-kicker { position:absolute; top:1.5rem; left:1.75rem; z-index:1; color:#f9e4b5; text-shadow:0 1px 5px #000; }
.cosmic-review .world-grid h3.feature-heading { position:absolute; bottom:1.5rem; left:1.75rem; z-index:1; margin:0; color:#fff6dc; font-size:3.5rem; line-height:1.04; text-shadow:0 2px 12px #000b; }
.cosmic-review .feature-heading em { color:#e9c779; }
.feature-copy { padding:1.75rem; display:flex; flex-direction:column; flex:1; }
.cosmic-review .feature-copy h3 { margin:1.1rem 0 1rem; }
.cosmic-review .world-grid .feature-copy p { max-width:none; }
.tarot-visual>img,.astrology-visual>img { object-fit:contain; }
.dream-visual>img { object-position:center 32%; }
.journal-feature-visual>img,.goal-feature-visual>img { object-fit:contain; }
.cosmic-review .journal-subtitle { display:inline-block; font-size:1.65rem; color:var(--gold); margin-top:.65rem; }
@media(min-width:42.01rem) and (max-width:67.99rem) {
  :root:not([data-text-size=large]) .cosmic-review { --sidebar-width:12.5rem; }
  :root:not([data-text-size=large]) .cosmic-review .sidebar { position:fixed; inset:0 auto 0 0; width:var(--sidebar-width); max-width:none; height:100dvh; overflow-y:auto; margin:0; padding:1.5rem .75rem; border-bottom:0; border-right:1px solid var(--line); flex-direction:column; align-items:stretch; justify-content:flex-start; }
  :root:not([data-text-size=large]) .cosmic-review .module-nav { display:grid; order:0; }
  :root:not([data-text-size=large]) .cosmic-review .sidebar .brand { flex-direction:column; align-items:flex-start; gap:.75rem; }
  :root:not([data-text-size=large]) .cosmic-review .sidebar .brand-slogan { font-size:1.6rem; }
  :root:not([data-text-size=large]) .cosmic-review .module-nav a { font-size:.75rem; padding:.75rem .6rem; }
  :root:not([data-text-size=large]) .cosmic-review .menu-button { display:none; }
  :root:not([data-text-size=large]) .cosmic-review .sidebar-caption { display:block; font-size:.5625rem; letter-spacing:.08em; color:var(--muted); padding:.5rem; }
  :root:not([data-text-size=large]) .cosmic-review .sidebar-bottom { display:block; margin-top:auto; padding:.75rem .5rem; }
  :root:not([data-text-size=large]) .cosmic-review .sidebar-bottom p { font-family:var(--heading); font-size:1.25rem; line-height:1.3; }
  :root:not([data-text-size=large]) .cosmic-review .sidebar-bottom>a { font-size:.75rem; color:var(--muted); }
  :root:not([data-text-size=large]) .cosmic-review main { margin-left:var(--sidebar-width); }
  :root:not([data-text-size=large]) .cosmic-review main>.wrap { width:calc(100% - 2rem); }
  :root:not([data-text-size=large]) .cosmic-review .world-grid,:root:not([data-text-size=large]) .cosmic-review .hero,:root:not([data-text-size=large]) .cosmic-review .section-heading { grid-template-columns:1fr; }
  :root:not([data-text-size=large]) .cosmic-review .hero { min-height:0; gap:1rem; }
  :root:not([data-text-size=large]) .cosmic-review .hero-art { min-height:14rem; }
  :root:not([data-text-size=large]) .cosmic-review .footer { margin-left:calc(var(--sidebar-width) + 1rem); width:calc(100% - var(--sidebar-width) - 2rem); }
}
.cosmic-review .privacy,.cosmic-review .closing { background:#080b10db; border:1px solid var(--line); border-radius:1rem; padding:2rem; margin-block:3rem; }
:root[data-theme=day] .cosmic-review { background:#fbfaf7; }
:root[data-theme=day] .cosmic-review:before { background-image:linear-gradient(#fffdf2de,#fffdf2eb),url('assets/samanyolu-dunya-mavi-v3.png'); }
:root[data-theme=day] .cosmic-review .sidebar { background:#fffdf3ef; }
:root[data-theme=day] .cosmic-review .section-heading,:root[data-theme=day] .cosmic-review .world-grid article,:root[data-theme=day] .cosmic-review .privacy,:root[data-theme=day] .cosmic-review .closing { background:#fffdf5ed; border-color:#94703270; box-shadow:0 1rem 2rem #6f4b0b12; }
:root[data-text-size=large] .cosmic-review .feature-visual { height:15rem; }
:root[data-text-size=large] .cosmic-review .coffee-visual { height:auto; min-height:15rem; }
:root[data-text-size=large] .cosmic-review .coffee-visual>img { position:absolute; inset:0; }
:root[data-text-size=large] .cosmic-review .coffee-visual .feature-kicker { position:relative; inset:auto; display:block; padding:1rem 1rem 0; }
:root[data-text-size=large] .cosmic-review .world-grid h3.feature-heading { position:relative; inset:auto; margin:0; padding:1rem; font-size:2rem; line-height:1.2; }
:root[data-text-size=large] .cosmic-review .hero-art { min-height:12rem; }
@media(max-width:42rem) {
  .cosmic-review .feature-visual { height:20rem; }
  .cosmic-review .feature-copy { padding:1.35rem; }
  .cosmic-review .world-grid h3.feature-heading { font-size:3rem; left:1.35rem; }
  .cosmic-review .feature-kicker { left:1.35rem; }
  .cosmic-review .section-heading { padding:1.25rem; }
  .cosmic-review .hero-art { min-height:16rem; }
  .cosmic-review:before { background-position:66% center; }
  .cosmic-review .privacy,.cosmic-review .closing { padding:1.5rem; }
}
@media(forced-colors:active) {
  .cosmic-review:before { display:none; }
  .cosmic-review .section-heading,.cosmic-review .world-grid article,.cosmic-review .privacy,.cosmic-review .closing { background:Canvas; color:CanvasText; border-color:CanvasText; }
  .cosmic-review .world-grid h3.feature-heading { background:Canvas; color:CanvasText; text-shadow:none; }
}
