@import url('https://fonts.googleapis.com/css2?family=Cinzel+Decorative:wght@700;900&family=Inter:wght@400;600;700;800;900&display=swap');

body{
  color:var(--text);
  font-family:var(--ui);
  background:
    radial-gradient(1200px 800px at 50% -10%, var(--violet) 0%, transparent 60%),
    radial-gradient(900px 600px at 100% 10%, #1e1540 0%, transparent 60%),
    linear-gradient(180deg,var(--bg1),var(--bg2));
  background-attachment:fixed;
}

main{display:block}

a{text-decoration:none}
a:hover{color:var(--text)}

p{
  color:var(--text);
  line-height:1.7;
  font-size:var(--fs-body);
}

h1,h2,h3,
.page-title,
.section-kicker,
.hero-title,
.brand-title{
  color:var(--gold-txt);
}

.page-title,
.hero-title,
.brand-title{
  font-family:var(--brand);
  font-weight:900;
  letter-spacing:.05em;
  text-transform:uppercase;
  text-shadow:0 0 18px var(--gold-shadow);
}

.section-title,
.card-title,
.subtitle,
.section-kicker,
.kicker,
.big-title,
.astro-label,
.footer-title{
  color:var(--gold-txt);
}

.section-title,
.card-title,
.subtitle,
.section-kicker,
.kicker,
.big-title,
.astro-label{
  font-family:var(--ui);
  font-weight:900;
  letter-spacing:.04em;
  text-transform:uppercase;
}

.page-title{font-size:var(--fs-h1);line-height:1.08}
.hero-title{font-size:clamp(40px,6vw,82px);line-height:1}
.subtitle{font-size:var(--fs-secondary)}

::selection{
  background:rgba(255,216,107,.25);
  color:#fff6d3;
}

.no-copy,
.no-copy *{
  -webkit-user-select:none;
  -moz-user-select:none;
  -ms-user-select:none;
  user-select:none;
}

.no-copy input,
.no-copy textarea,
.no-copy button,
.no-copy select{
  -webkit-user-select:auto;
  -moz-user-select:auto;
  -ms-user-select:auto;
  user-select:auto;
}

@media (max-width:720px){
  p{font-size:var(--fs-body-mobile)}
  .page-title{font-size:var(--fs-h1-mobile)}
}