:root {
  --gc-shell-bg-deep: #090b0f;
  --gc-shell-bg-warm: #20170e;
  --gc-shell-gold: #d8a45f;
  --gc-shell-border: rgba(154, 103, 50, .48);
}

html {
  min-height: 100%;
  background: var(--gc-shell-bg-deep);
}

body {
  min-height: 100vh;
  background:
    radial-gradient(circle at 20% 0, var(--gc-shell-bg-warm) 0, #120e0b 23%, var(--gc-shell-bg-deep) 52%),
    var(--gc-shell-bg-deep) !important;
  background-attachment: fixed !important;
  color: #edf1f7;
}

body::before {
  content: "";
  position: fixed;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  background:
    radial-gradient(700px 460px at 0 38%, rgba(116, 67, 29, .16), transparent 72%),
    radial-gradient(600px 420px at 100% 0, rgba(182, 122, 53, .05), transparent 70%);
}

.wrap,
body > main,
body > .box {
  position: relative;
  z-index: 1;
}

.hero,
.card,
.panel,
.section,
.form-card,
.summary,
.order,
.box {
  background-color: rgba(16, 18, 21, .94) !important;
  border-color: var(--gc-shell-border) !important;
  box-shadow: 0 18px 48px rgba(0, 0, 0, .16);
}

.nav a,
body > main > p > a {
  color: var(--gc-shell-gold);
}

h1,
h2 {
  color: #efbb73 !important;
}

.stat,
.item,
.package,
.payment,
.ticket,
.reply,
.details > div,
.field input,
.field select,
input,
select,
textarea {
  background-color: rgba(9, 13, 18, .93) !important;
  border-color: rgba(124, 88, 49, .48) !important;
}

.btn:not(.ghost),
button[type="submit"] {
  background: linear-gradient(180deg, #dfa14e, #b8732e) !important;
  border-color: #e0a755 !important;
  color: #171009 !important;
  box-shadow: inset 0 1px rgba(255, 235, 188, .28), 0 8px 20px rgba(0, 0, 0, .2);
}

.btn.ghost,
.filter.active,
.switch a.active,
.tabs a.active {
  border-color: #b67a35 !important;
  color: #f0c27f !important;
  background-color: rgba(78, 50, 25, .34) !important;
}

.muted,
.meta,
.item small,
.stat span {
  color: #aeb3bc !important;
}

@media (max-width: 700px) {
  body {
    background:
      radial-gradient(circle at 0 0, #20170e 0, #100d0b 30%, #090b0f 67%),
      #090b0f !important;
  }
}
