/* Bast Tarot — night-sky site theme matching the app (AppColors). */
:root{
  --midnight:#0B0A1A;
  --deep-indigo:#141230;
  --twilight:#1E1B45;
  --nebula:#2C2460;
  --gold:#D9A94B;
  --gold-bright:#F0C978;
  --gold-deep:#A97C2B;
  --lavender:#9D8CFF;
  --text:#F2EEFF;
  --text-dim:#B8B0D9;
  --text-faint:#7E76A3;
  --line:rgba(217,169,75,0.25);
  --glass:rgba(36,31,88,0.35);
}
*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
  margin:0;
  font-family:'Inter',-apple-system,'Segoe UI',Roboto,Helvetica,Arial,sans-serif;
  background:
    radial-gradient(1000px 600px at 12% -10%, rgba(157,140,255,0.14), transparent 60%),
    radial-gradient(900px 700px at 105% 15%, rgba(217,169,75,0.08), transparent 55%),
    radial-gradient(700px 500px at 50% 110%, rgba(44,36,96,0.55), transparent 70%),
    linear-gradient(180deg,#0B0A1A 0%,#141230 45%,#0B0A1A 100%);
  background-attachment:fixed;
  color:var(--text);
  line-height:1.7;
  min-height:100vh;
  position:relative;
}
/* Starfield */
body::before{
  content:"";position:fixed;inset:0;pointer-events:none;z-index:0;
  background-image:
    radial-gradient(1.4px 1.4px at 8% 12%, rgba(255,255,255,.8), transparent 60%),
    radial-gradient(1px 1px at 22% 38%, rgba(255,255,255,.5), transparent 60%),
    radial-gradient(1.7px 1.7px at 31% 8%, rgba(240,201,120,.9), transparent 60%),
    radial-gradient(1px 1px at 44% 27%, rgba(255,255,255,.45), transparent 60%),
    radial-gradient(1.5px 1.5px at 58% 14%, rgba(255,255,255,.7), transparent 60%),
    radial-gradient(1px 1px at 66% 41%, rgba(157,140,255,.6), transparent 60%),
    radial-gradient(1.8px 1.8px at 78% 6%, rgba(255,255,255,.85), transparent 60%),
    radial-gradient(1px 1px at 87% 30%, rgba(255,255,255,.5), transparent 60%),
    radial-gradient(1.3px 1.3px at 93% 55%, rgba(240,201,120,.7), transparent 60%),
    radial-gradient(1px 1px at 15% 64%, rgba(255,255,255,.4), transparent 60%),
    radial-gradient(1.5px 1.5px at 37% 76%, rgba(255,255,255,.6), transparent 60%),
    radial-gradient(1px 1px at 55% 88%, rgba(157,140,255,.5), transparent 60%),
    radial-gradient(1.6px 1.6px at 71% 68%, rgba(255,255,255,.7), transparent 60%),
    radial-gradient(1px 1px at 83% 82%, rgba(255,255,255,.4), transparent 60%),
    radial-gradient(1.2px 1.2px at 5% 92%, rgba(240,201,120,.6), transparent 60%);
}
.wrap{max-width:780px;margin:0 auto;padding:56px 22px 80px;position:relative;z-index:1;}

/* Brand mark */
.brand{display:flex;align-items:center;gap:14px;margin-bottom:30px;text-decoration:none;border:none;}
.brand img{width:52px;height:52px;border-radius:14px;
  border:1px solid var(--line);
  box-shadow:0 0 18px rgba(217,169,75,0.25), 0 6px 18px rgba(0,0,0,0.45);}
.brand span{font-family:'Cinzel',serif;font-size:1.05rem;letter-spacing:.14em;
  color:var(--gold-bright);text-transform:uppercase;}

h1{font-family:'Cinzel',serif;font-weight:600;font-size:2rem;line-height:1.25;
  margin:0 0 8px;color:var(--text);letter-spacing:.02em;}
.updated{color:var(--text-faint);font-size:.88rem;margin:0 0 34px;}
.updated strong{color:var(--gold-bright);font-weight:600;}

/* Section headings echo the app's gold caps + star hairlines */
h2{font-family:'Cinzel',serif;font-weight:600;font-size:1rem;letter-spacing:.16em;
  text-transform:uppercase;color:var(--gold);margin:42px 0 10px;
  display:flex;align-items:center;gap:12px;}
h2::before{content:"✦";font-size:.7rem;color:var(--gold-deep);}
h2::after{content:"";flex:1;height:1px;
  background:linear-gradient(90deg,var(--line),transparent);}

p{margin:10px 0;color:var(--text-dim);}
p strong,li strong{color:var(--text);font-weight:600;}
ul{padding-left:20px;margin:10px 0;}
li{margin-bottom:8px;color:var(--text-dim);}
a{color:var(--gold-bright);text-decoration:none;border-bottom:1px solid var(--line);}
a:hover{color:var(--gold);border-bottom-color:var(--gold);}

.card{background:var(--glass);border:1px solid var(--line);border-radius:16px;
  padding:20px 24px;margin-top:14px;
  box-shadow:inset 0 1px 0 rgba(255,255,255,0.04), 0 10px 30px rgba(0,0,0,0.35);}
.card ul{margin:0;}

.contact{margin-top:14px;font-size:1.05rem;}
.contact strong{color:var(--gold-bright);}

.btn{display:inline-block;margin-top:20px;padding:13px 30px;border-radius:999px;
  background:linear-gradient(135deg,var(--gold-deep),var(--gold) 45%,var(--gold-bright));
  color:#241B08;font-weight:700;letter-spacing:.06em;text-decoration:none;border:none;
  box-shadow:0 0 22px rgba(217,169,75,0.35), 0 6px 16px rgba(0,0,0,0.4);}
.btn:hover{filter:brightness(1.07);color:#241B08;}

.nav{margin-top:34px;font-size:.9rem;color:var(--text-faint);}
.nav a{margin-right:18px;border-bottom:none;color:var(--text-dim);}
.nav a:hover{color:var(--gold-bright);}

hr{border:none;height:1px;margin:40px 0 0;
  background:linear-gradient(90deg,transparent,var(--line),transparent);}
.foot{color:var(--text-faint);font-size:.8rem;margin-top:26px;text-align:center;}

/* Home hero */
.hero{text-align:center;padding-top:12px;}
.hero img.mascot{width:190px;max-width:55%;height:auto;margin:6px auto 4px;display:block;
  filter:drop-shadow(0 0 28px rgba(157,140,255,0.35)) drop-shadow(0 10px 24px rgba(0,0,0,0.5));}
.hero h1{font-size:2.5rem;}
.hero .tagline{font-style:italic;color:var(--lavender);font-size:1.05rem;margin:4px 0 0;}
.hero .sub{color:var(--text-dim);max-width:560px;margin:16px auto 0;}
.feature-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));
  gap:14px;margin-top:16px;text-align:left;}
.feature{background:var(--glass);border:1px solid var(--line);border-radius:16px;padding:18px 20px;}
.feature h3{font-family:'Cinzel',serif;font-size:.92rem;letter-spacing:.08em;margin:0 0 6px;
  color:var(--gold-bright);text-transform:uppercase;}
.feature p{margin:0;font-size:.92rem;color:var(--text-dim);}
.langs{color:var(--text-faint);font-size:.85rem;margin-top:22px;letter-spacing:.04em;}

@media (max-width:520px){
  h1{font-size:1.6rem;}
  .hero h1{font-size:1.9rem;}
  .wrap{padding:40px 18px 64px;}
}
