:root {
  color-scheme: dark;
  --background: #090909;
  --foreground: #f1eee9;
  --orange: #ff761a;
  --muted: #a4a09a;
}

* { box-sizing: border-box; }

html { background: var(--background); }

body {
  margin: 0;
  color: var(--foreground);
  font-family: Arial, Helvetica, sans-serif;
  -webkit-font-smoothing: antialiased;
}

::selection { background: var(--orange); color: var(--background); }

.page {
  position: relative;
  display: flex;
  flex-direction: column;
  min-height: 100svh;
  padding: 36px clamp(24px, 5.6vw, 88px) 28px;
  overflow: hidden;
  isolation: isolate;
  background: radial-gradient(ellipse at 95% 85%, #ff761a0c, transparent 46%);
}

.page::before {
  position: absolute;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  content: "";
  background-image: linear-gradient(#ffffff03 1px, transparent 1px), linear-gradient(90deg, #ffffff03 1px, transparent 1px);
  background-size: 88px 88px;
  mask-image: linear-gradient(90deg, transparent 15%, #000 100%);
}

.header, .footer {
  position: relative;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
}

.brand { display: flex; align-items: center; gap: 17px; }

.brand-mark {
  position: relative;
  font-size: 38px;
  font-weight: 900;
  letter-spacing: -4px;
  line-height: 1;
  padding-right: 9px;
}

.brand-mark > span {
  position: absolute;
  right: 0;
  bottom: 2px;
  width: 6px;
  height: 6px;
  background: var(--orange);
}

.brand-name { font-size: 12px; font-weight: 700; letter-spacing: .2em; }

.header-note, .eyebrow, .footer {
  font-size: 11px;
  font-weight: 600;
  letter-spacing: .16em;
  line-height: 1.5;
}

.header-note { display: flex; align-items: center; gap: 10px; color: var(--muted); }
.status-dot { width: 5px; height: 5px; border-radius: 50%; background: var(--orange); }

.main {
  position: relative;
  display: flex;
  align-items: center;
  flex: 1;
  padding: 84px 0 92px;
}

.announcement { position: relative; z-index: 1; }
.eyebrow { display: flex; align-items: center; gap: 12px; margin: 0 0 26px; color: var(--muted); }
.eyebrow > span { width: 24px; height: 2px; background: var(--orange); }

h1 {
  margin: 0 0 32px -6px;
  font-family: "Arial Black", Arial, Helvetica, sans-serif;
  font-size: clamp(80px, 12.6vw, 190px);
  font-weight: 900;
  letter-spacing: -.075em;
  line-height: .91;
}

h1 > span { color: var(--orange); }
.description { margin: 0; font-size: clamp(19px, 2vw, 25px); line-height: 1.5; letter-spacing: -.025em; color: var(--muted); }
.accent-line { display: flex; gap: 7px; margin-top: 36px; }
.accent-line > span { width: 25px; height: 4px; background: var(--orange); transform: skewX(-35deg); }
.accent-line > span:nth-child(2) { opacity: .5; }
.accent-line > span:nth-child(3) { opacity: .2; }

.art { position: absolute; inset: 0 -14vw 0 39%; pointer-events: none; }
.art-number {
  position: absolute;
  top: 48%;
  left: 50%;
  color: transparent;
  -webkit-text-stroke: 1px #ff761a20;
  font-size: clamp(460px, 57vw, 860px);
  font-weight: 900;
  line-height: 1;
  transform: translate(-50%, -50%) rotate(-10deg);
}

.orbit { position: absolute; top: 47%; left: 50%; width: 78%; aspect-ratio: 1; border: 1px solid #ff761a13; border-radius: 50%; }
.orbit-one { transform: translate(-50%, -50%); }
.orbit-two { transform: translate(-50%, -50%) scale(.78); }
.art-cross { position: absolute; top: 18%; right: 25%; font-size: 28px; font-weight: 300; color: #ff761a75; }

.footer { padding-top: 22px; border-top: 1px solid #ffffff17; color: var(--muted); font-size: 10px; }
.footer-note { display: flex; align-items: center; gap: 24px; }
.footer-note > span { font-size: 18px; line-height: 1; color: var(--orange); }

@media (min-width: 1600px) {
  .page { padding-right: max(88px, calc((100vw - 1440px) / 2)); padding-left: max(88px, calc((100vw - 1440px) / 2)); }
}

@media (max-width: 767px) {
  .page { padding-top: 25px; padding-bottom: 22px; }
  .header-note { font-size: 9px; letter-spacing: .08em; }
  .brand { gap: 12px; }
  .brand-mark { font-size: 32px; }
  .brand-name { font-size: 10px; letter-spacing: .14em; }
  .main { padding: 80px 0; }
  h1 { font-size: clamp(60px, 13.6vw, 102px); margin-left: -3px; margin-bottom: 28px; }
  .eyebrow { margin-bottom: 24px; font-size: 10px; }
  .art { inset: 0 -50vw 0 15%; opacity: .65; }
  .art-number { font-size: 590px; }
  .art-cross { display: none; }
  .description { font-size: 20px; }
  .footer { font-size: 9px; letter-spacing: .08em; }
  .footer-note { gap: 10px; }
}

@media (max-width: 420px) {
  .header-note { display: none; }
  .footer-note { letter-spacing: .02em; }
  .footer-note > span { display: none; }
}
