
:root {
  --gme-white: #FFFFFF;
  --gme-blue: #0EA5E9;
  --gme-blue-dark: #0284C7;
  --gme-gold: #FACC15;
  --gme-olive: #3F6212;
  --gme-ink: #17324D;
  --gme-muted: #4B5563;
  --gme-soft: #F8FCFF;
}

body {
  background: var(--gme-white);
  color: var(--gme-muted);
}

.header_absolute {
  background: linear-gradient(90deg, var(--gme-blue) 0%, var(--gme-gold) 72%, var(--gme-olive) 100%);
  box-shadow: 0 10px 30px rgba(14, 165, 233, 0.18);
}

.logo {
  max-width: 310px;
}

.logo h3 {
  color: var(--gme-white);
  font-size: 22px;
  line-height: 1.15;
  letter-spacing: .2px;
  text-shadow: 0 2px 12px rgba(23, 50, 77, .24);
}

.main_menu ul li a {
  color: var(--gme-white);
  font-weight: 700;
}

.main_menu ul li a:hover {
  color: var(--gme-olive);
}

.welcome_area {
  min-height: 760px;
  background:
    radial-gradient(circle at 80% 22%, rgba(250, 204, 21, 0.36), transparent 28%),
    linear-gradient(135deg, #FFFFFF 0%, #0EA5E9 45%, #FACC15 76%, #3F6212 100%);
  overflow: hidden;
}

.welcome_area::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, rgba(255,255,255,.82) 0%, rgba(255,255,255,.52) 42%, rgba(255,255,255,.18) 100%);
  z-index: -1;
}

.welcome_area h1,
.welcome_area h6 {
  color: var(--gme-ink);
}

.title h1 {
  color: var(--gme-ink);
  text-shadow: 0 4px 22px rgba(255,255,255,.34);
}

.title h6 {
  color: #21455F;
}

.apps img,
.feature_tab_img_right img,
.feature_tab_img_left img,
.mobile_feature_img img,
.mobile_feature_img2 img,
.apps_app img,
.single_screen img {
  border-radius: 28px;
  box-shadow: 0 24px 60px rgba(23, 50, 77, 0.18);
}

.primary_bg {
  background:
    linear-gradient(180deg, rgba(255,255,255,.92), rgba(248,252,255,.96)),
    radial-gradient(circle at 18% 10%, rgba(14,165,233,.12), transparent 24%),
    radial-gradient(circle at 82% 18%, rgba(250,204,21,.18), transparent 22%);
}

.single_core_feature,
.single_more_feature,
.single_about,
.card,
.contact_info {
  border-radius: 18px;
}

.single_core_feature:hover,
.single_more_feature:hover,
.single_about:hover,
.card:hover {
  box-shadow: 0 20px 50px rgba(14, 165, 233, 0.14);
}

.content_box h6,
.heading h1,
.heading.hbm h1,
.contact_info h3,
.single_footer h3 {
  color: var(--gme-ink);
}

.heading p,
.content_box p,
.card-body,
.contact_info p {
  color: var(--gme-muted);
}

.btn-primary,
.contact_form .btn-primary,
.cookie-btn.accept {
  background: linear-gradient(90deg, var(--gme-blue), var(--gme-gold));
  color: var(--gme-ink);
  border: 0;
}

.btn-primary:hover,
.contact_form .btn-primary:hover {
  background: linear-gradient(90deg, var(--gme-blue-dark), var(--gme-olive));
  color: var(--gme-white);
}

.contact_area {
  background:
    linear-gradient(135deg, rgba(255,255,255,0.96), rgba(248,252,255,0.92)),
    radial-gradient(circle at 12% 35%, rgba(14,165,233,.14), transparent 26%),
    radial-gradient(circle at 86% 10%, rgba(250,204,21,.20), transparent 24%);
}

.contact_form .form-control:focus {
  border-color: var(--gme-blue);
  box-shadow: 0 0 0 0.18rem rgba(14, 165, 233, .18);
}

.footer,
.copyright {
  background: linear-gradient(135deg, var(--gme-ink) 0%, #0B4C75 54%, var(--gme-olive) 100%);
}

.footer p,
.footer a,
.footer h3,
.copyright p,
.copyright a,
.single_footer ul li a {
  color: var(--gme-white);
}

.footer a:hover,
.copyright a:hover {
  color: var(--gme-gold);
}

.accordion .btn-link {
  color: var(--gme-ink);
  font-weight: 700;
}

.accordion .btn-link:hover {
  color: var(--gme-blue-dark);
}

.cookie-banner-center {
  background: #FFFFFF;
  color: var(--gme-ink);
  border: 2px solid rgba(14,165,233,.22);
  border-radius: 18px;
  box-shadow: 0 22px 60px rgba(23, 50, 77, .22);
  font-family: Roboto, Arial, sans-serif;
}

.cookie-title {
  background: linear-gradient(90deg, var(--gme-blue), var(--gme-gold));
  color: var(--gme-ink);
  border-radius: 999px;
}

.cookie-text {
  color: var(--gme-muted);
  border: 1px solid rgba(14,165,233,.18);
  border-radius: 14px;
}

.cookie-icon {
  background: linear-gradient(135deg, var(--gme-blue), var(--gme-gold), var(--gme-olive));
  border-radius: 50%;
  border: 0;
  box-shadow: 0 10px 30px rgba(14, 165, 233, .25);
}

@media screen and (max-width: 767px) {
  .logo h3 { font-size: 18px; }
  .welcome_area { min-height: auto; }
}


/* FAQ indicators: self-contained dots instead of unavailable icon-font glyphs. */
.faq_area button.btn.btn-link {
  padding-right: 58px;
  white-space: normal;
}

.faq_area button.btn.btn-link::after {
  content: "" !important;
  font-family: inherit !important;
  position: absolute;
  right: 24px;
  top: 50%;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: var(--gme-blue);
  box-shadow: 0 0 0 6px rgba(14, 165, 233, .12);
  transform: translateY(-50%) !important;
  transition: background-color .25s ease, box-shadow .25s ease;
}

.faq_area button.btn.btn-link[aria-expanded="true"]::after {
  background: var(--gme-gold);
  box-shadow: 0 0 0 6px rgba(250, 204, 21, .18);
}
