:root{
  --gp-ink:#0a0a0f;
  --gp-plum:#3b0764;
  --gp-emerald:#065f46;
  --gp-amber:#f59e0b;
  --gp-cream:#fbf7ef;
  --gp-slate:#475569;
}

html, body{ font-size:16px; }
body{
  font-family: ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
  color: var(--gp-ink);
  background: #ffffff;
  line-height: 1.65;
}

.gp-section{ padding: 92px 0; }

.gp-card{
  border: 1px solid rgba(2,6,23,.10);
  box-shadow: 0 18px 55px rgba(2,6,23,.08);
}

.gp-soft{
  background: var(--gp-cream);
}

.gp-hero{
  background:
    radial-gradient(900px 360px at 22% 18%, rgba(245,158,11,.22), transparent 60%),
    radial-gradient(900px 420px at 72% 14%, rgba(6,95,70,.20), transparent 60%),
    linear-gradient(125deg, rgba(59,7,100,.96), rgba(6,95,70,.85)),
    url("../images/hero-coast.jpg");
  background-size: cover;
  background-position: center;
}

.gp-pill{
  border: 1px solid rgba(255,255,255,.22);
  background: rgba(255,255,255,.12);
}

.gp-link:hover{ opacity:.9; }

.gp-footer{
  background:#07060c;
}

.gp-cookie{
  box-shadow: 0 22px 60px rgba(2,6,23,.18);
}

.gp-modal-backdrop{ background: rgba(2,6,23,.60); }

summary::-webkit-details-marker{ display:none; }
details > summary{ list-style:none; }