/* RESET */
*{
  margin:0;
  padding:0;
  box-sizing:border-box;
}

html,
body{
  width:100%;
  height:100%;
}

body{
  font-family:'Inter', sans-serif;
  background:#050505;
  color:#ffffff;
  overflow:hidden;
  position:relative;
}

/* subtle grain */
body::before{
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  opacity:.08;
  background-image:
    radial-gradient(#ffffff 0.6px, transparent 0.6px);
  background-size:4px 4px;
}

/* WRAPPER */
.site-wrapper{
  min-height:100vh;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  padding:42px 48px 24px;
  position:relative;
  z-index:2;
}

/* HERO */
.hero{
  text-align:center;
  margin-bottom:28px;
}

.micro-text{
  display:block;
  font-size:11px;
  letter-spacing:4px;
  text-transform:uppercase;
  color:#7a7a7a;
  margin-bottom:14px;
}

.brand-title{
  font-size:72px;
  line-height:1;
  font-weight:800;
  letter-spacing:-3px;
  margin-bottom:14px;
  display: flex;
  justify-content: center;
  align-items: center;
}

.brand-title span{
    font-size: 0;
}

.brand-title img{
    display: block;
    width: 500px;
}

.tagline{
  font-size:15px;
  font-weight:400;
  color:#bdbdbd;
  letter-spacing:1px;
}

/* CONTENT GRID */
.content-grid{
  width:100%;
  max-width:1320px;
  margin:0 auto;
  display:grid;
  grid-template-columns: 0.42fr 0.58fr;
  gap:24px;
  align-items:stretch;
}

/* BLOCKS */
.media-block{
  display:flex;
  flex-direction:column;
  gap:14px;
}

.block-label{
  font-size:11px;
  letter-spacing:3px;
  text-transform:uppercase;
  color:#7a7a7a;
}

.embed-shell{
  background:#0d0d0d;
  border:1px solid rgba(255,255,255,.06);
  border-radius:18px;
  padding:14px;
  box-shadow:
    0 10px 30px rgba(0,0,0,.45),
    inset 0 0 0 1px rgba(255,255,255,.015);
}

.embed-shell iframe{
  display:block;
  width:100%;
  border-radius:12px;
}

/* LINKS */
.block-link{
  font-size:13px;
  color:#d7d7d7;
  text-decoration:none;
  transition:.25s ease;
}

.block-link:hover{
  color:#ffffff;
}

/* BRAND MARK */
.brand-mark{
  text-align:center;
  margin-top:28px;
  margin-bottom:18px;
}

.brand-mark span{
  font-size:13px;
  letter-spacing:6px;
  color:#333333;
  text-transform:uppercase;
}

/* FOOTER */
.footer{
  text-align:center;
  display:flex;
  flex-direction:column;
  gap:12px;
}

.social-links{
  display:flex;
  justify-content:center;
  gap:26px;
  flex-wrap:wrap;
}

.social-links a{
  color:#8f8f8f;
  text-decoration:none;
  font-size:13px;
  transition:.25s ease;
}

.social-links a:hover{
  color:#ffffff;
}

.footer small{
  color:#5f5f5f;
  font-size:11px;
  letter-spacing:2px;
  text-transform:uppercase;
}

/* HERO */
.hero{
  text-align:center;
  margin-bottom:28px;
}

.micro-text{
  display:block;
  font-size:11px;
  letter-spacing:4px;
  text-transform:uppercase;
  color:#7a7a7a;
  margin-bottom:14px;
}

.brand-title{
  font-size:72px;
  line-height:1;
  font-weight:800;
  letter-spacing:-3px;
  margin-bottom:14px;
  display:flex;
  justify-content:center;
  align-items:center;
}

.brand-title span{
  font-size:0;
}

.brand-title img{
  display:block;
  width:500px;
}

.tagline{
  font-size:15px;
  font-weight:400;
  color:#bdbdbd;
  letter-spacing:1px;
  margin-top:4px;
}

.statement{
  margin-top:18px;
  font-size:13px;
  letter-spacing:4px;
  text-transform:uppercase;
  color:#7d7d7d;
  font-weight:600;
}

/* RESPONSIVE */
@media (max-width: 1100px){

  body{
    overflow:auto;
  }

  .site-wrapper{
    padding:32px 24px 24px;
  }

  .brand-title{
    font-size:56px;
  }

  .content-grid{
    grid-template-columns:1fr;
    gap:22px;
    max-width:760px;
  }
}

@media (max-width: 640px){

  .brand-title{
    font-size:42px;
    letter-spacing:-2px;
  }

  .tagline{
    font-size:13px;
  }

  .embed-shell{
    padding:10px;
    border-radius:14px;
  }

  .social-links{
    gap:16px;
  }

  .social-links a{
    font-size:12px;
  }
}