*{
  box-sizing:border-box;
}

html{
  scroll-behavior:smooth;
}

body{
  margin:0;
  background:var(--rf-bg);
  color:var(--rf-text);
  font-family:var(--rf-font-body);
  overflow-x:hidden;
}

body:before{
  content:"";
  position:fixed;
  inset:0;
  z-index:-5;
  background:
    radial-gradient(circle at 78% 10%,rgba(242,103,34,.22),transparent 28%),
    linear-gradient(180deg,#050708 0%,#080b0d 48%,#040506 100%);
}

a{
  color:inherit;
  text-decoration:none;
}

img{
  max-width:100%;
  display:block;
}

.rf-wrap{
  width:min(var(--rf-page-width),calc(100% - 56px));
  margin-inline:auto;
}

.rf-section{
  padding:var(--rf-space-7) 0;
}

.rf-section-tight{
  padding:var(--rf-space-6) 0;
}

.rf-split{
  display:grid;
  grid-template-columns:.9fr 1.1fr;
  gap:var(--rf-space-6);
  align-items:start;
}

.rf-grid-3{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:var(--rf-space-3);
}

.rf-grid-2{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:var(--rf-space-3);
}

.rf-display{
  font-size:var(--rf-text-display);
  line-height:.84;
  letter-spacing:-.08em;
  text-transform:uppercase;
  margin:0;
}

.rf-title{
  font-size:clamp(46px,5vw,82px);
  line-height:.92;
  letter-spacing:-.07em;
  text-transform:uppercase;
  margin:0;
}

.rf-lede{
  font-size:var(--rf-text-xl);
  line-height:1.42;
  letter-spacing:-.025em;
  color:var(--rf-text-soft);
}

.rf-body-large{
  font-size:22px;
  line-height:1.48;
  color:var(--rf-text-soft);
}

.rf-eyebrow{
  display:flex;
  align-items:center;
  gap:14px;
  color:var(--rf-accent-strong);
  font-size:14px;
  font-weight:950;
  letter-spacing:.18em;
  text-transform:uppercase;
}

.rf-eyebrow:before{
  content:"";
  width:46px;
  height:1px;
  background:var(--rf-accent);
}