/* Home page dark blue edition */
body.gg-home-page{
  position: relative;
  color: #e7f0ff;
  background:
    radial-gradient(1100px circle at 12% 8%, rgba(58,130,246,.18), transparent 42%),
    radial-gradient(900px circle at 84% 12%, rgba(14,165,233,.12), transparent 36%),
    radial-gradient(1200px circle at 50% 100%, rgba(15,23,42,.58), transparent 50%),
    linear-gradient(180deg, #030712 0%, #071325 48%, #0b1833 100%);
}

body.gg-home-page::before,
body.gg-home-page::after{
  content: "";
  position: fixed;
  inset: 0;
  pointer-events: none;
  z-index: 0;
}

body.gg-home-page::before{
  background:
    radial-gradient(circle at 20% 24%, rgba(96,165,250,.18), transparent 18%),
    radial-gradient(circle at 80% 18%, rgba(59,130,246,.12), transparent 16%),
    radial-gradient(circle at 68% 76%, rgba(14,165,233,.10), transparent 20%);
  filter: blur(28px);
  animation: ggHomeAurora 16s ease-in-out infinite alternate;
}

body.gg-home-page::after{
  background-image:
    linear-gradient(rgba(255,255,255,.03) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.03) 1px, transparent 1px);
  background-size: 72px 72px;
  mask-image: radial-gradient(circle at center, black 32%, transparent 92%);
  opacity: .28;
  animation: ggHomeGridDrift 22s linear infinite;
}

@keyframes ggHomeAurora{
  0%{ transform: translate3d(-2%, -1%, 0) scale(1); }
  50%{ transform: translate3d(2%, 2%, 0) scale(1.05); }
  100%{ transform: translate3d(-1%, 3%, 0) scale(1.02); }
}

@keyframes ggHomeGridDrift{
  from{ transform: translate3d(0,0,0); }
  to{ transform: translate3d(0,72px,0); }
}

.gg-home-wrap{
  position: relative;
  z-index: 1;
  width: 100%;
}

.gg-home-hero{
  padding: clamp(56px, 8vw, 96px) 0 28px;
}

.gg-home-hero-grid{
  display: grid;
  grid-template-columns: 1.05fr 0.95fr;
  gap: 30px;
  align-items: center;
}

.gg-home-kicker{
  display: inline-flex;
  align-items: center;
  gap: 10px;
  font-size: .78rem;
  letter-spacing: .20em;
  text-transform: uppercase;
  font-weight: 900;
  color: rgba(188,209,255,.72);
}

.gg-home-title{
  margin: 14px 0 14px;
  font-size: clamp(2.5rem, 4.6vw, 4.35rem);
  letter-spacing: -0.055em;
  font-weight: 950;
  color: #f7fbff;
  line-height: 1.02;
  text-shadow: 0 10px 34px rgba(2,6,23,.28);
}

.gg-home-title span{
  background: linear-gradient(90deg, #7cc7ff, #60a5fa, #2f6fff);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
}

.gg-home-sub{
  margin: 0;
  max-width: 62ch;
  color: rgba(214,228,255,.76);
  font-weight: 600;
  line-height: 1.8;
  font-size: 1.06rem;
}

.gg-home-cta{
  display: flex;
  gap: 12px;
  flex-wrap: wrap;
  margin-top: 24px;
  align-items: center;
}

.gg-home-page .btn.btn-primary{
  background: linear-gradient(135deg, #1d4ed8 0%, #2563eb 46%, #60a5fa 100%);
  border: 1px solid rgba(125, 176, 255, .46);
  color: #fff;
  box-shadow: 0 18px 36px rgba(37,99,235,.28);
}

.gg-home-page .btn.btn-primary:hover{
  background: linear-gradient(135deg, #1b46c4 0%, #2257d5 46%, #4f96f5 100%);
  color: #fff;
}

.gg-home-page .btn.btn-outline-primary{
  background: rgba(255,255,255,.06);
  border: 1px solid rgba(148, 190, 255, .34);
  color: #dce9ff;
  backdrop-filter: blur(16px);
}

.gg-home-page .btn.btn-outline-primary:hover{
  background: rgba(255,255,255,.12);
  border-color: rgba(148,190,255,.48);
  color: #f3f8ff;
}

.gg-home-note{
  margin-top: 16px;
  color: rgba(180,203,244,.58);
  font-size: .96rem;
  font-weight: 600;
}

.gg-home-hero-card{
  border-radius: 30px;
  border: 1px solid rgba(126, 160, 223, .18);
  background:
    radial-gradient(circle at top, rgba(96,165,250,.16), transparent 34%),
    linear-gradient(180deg, rgba(9,18,38,.94), rgba(5,10,22,.96));
  backdrop-filter: blur(20px);
  box-shadow: 0 34px 90px rgba(2,6,23,.34);
  overflow: hidden;
  transform: translateZ(0);
  animation: ggHomeFloat 7.5s ease-in-out infinite;
}

@keyframes ggHomeFloat{
  0%,100%{ transform: translateY(0); }
  50%{ transform: translateY(-10px); }
}

.gg-home-hero-visual{
  padding: 18px 18px 0;
}

.gg-home-video-shell{
  position: relative;
  overflow: hidden;
  border-radius: 18px;
  border: 1px solid rgba(102,132,191,.22);
  background:
    radial-gradient(circle at 50% 14%, rgba(147,51,234,.28), transparent 34%),
    radial-gradient(circle at 50% 120%, rgba(0,0,0,.64), transparent 38%),
    linear-gradient(180deg, #5c058e 0%, #27003a 58%, #03050c 100%);
  min-height: 320px;
}

.gg-home-video-shell::after{
  content: "";
  position: absolute;
  inset: -12%;
  background:
    radial-gradient(circle at 50% 18%, rgba(255,255,255,.10), transparent 22%),
    radial-gradient(circle at 76% 30%, rgba(96,165,250,.10), transparent 18%);
  filter: blur(20px);
  animation: ggHomePanelAura 9s ease-in-out infinite alternate;
  pointer-events: none;
}

@keyframes ggHomePanelAura{
  0%{ transform: translate3d(-2%, 0, 0) scale(1); opacity: .65; }
  100%{ transform: translate3d(2%, 2%, 0) scale(1.06); opacity: .95; }
}

.gg-home-hero-video{
  width: 100%;
  height: 100%;
  min-height: 320px;
  display: block;
  object-fit: cover;
  opacity: .88;
  mix-blend-mode: screen;
}

.gg-home-hero-metrics{
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  padding: 16px 18px 18px;
}

.gg-home-metric{
  padding: 14px 12px 12px;
  border-radius: 18px;
  border: 1px solid rgba(116,149,212,.18);
  background: rgba(255,255,255,.06);
  backdrop-filter: blur(18px);
}

.gg-home-metric .k{
  font-size: .78rem;
  color: rgba(185,204,240,.66);
  font-weight: 800;
}

.gg-home-metric .v{
  margin-top: 4px;
  font-size: 1.35rem;
  font-weight: 950;
  letter-spacing: -0.03em;
  color: #f4f8ff;
}

.gg-home-section{
  padding: 34px 0;
}

.gg-home-section-head{
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: 14px;
  margin-bottom: 16px;
}

.gg-home-h2{
  font-size: 1.45rem;
  font-weight: 950;
  letter-spacing: -0.03em;
  margin: 0;
  color: #f7fbff;
}

.gg-home-muted{
  color: rgba(181,202,241,.68);
  font-weight: 650;
}

.gg-feature-grid,
.gg-pricing-grid{
  display: grid;
  gap: 14px;
}

.gg-feature-grid{
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
}

.gg-pricing-grid{
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.gg-home-story{
  display: grid;
  grid-template-columns: .95fr 1.05fr;
  gap: 24px;
  align-items: center;
  margin-bottom: 30px;
}

.gg-home-story-kicker,
.gg-show-kicker{
  display: inline-flex;
  align-items: center;
  font-size: .76rem;
  letter-spacing: .18em;
  text-transform: uppercase;
  font-weight: 900;
  color: rgba(166,192,236,.64);
  margin-bottom: 10px;
}

.gg-home-story-point,
.gg-home-showcard,
.gg-home-quote,
.gg-show,
.gg-faq-item,
.gg-feature,
.gg-home-split,
.gg-price,
.gg-home-story-visual{
  border: 1px solid rgba(126,160,223,.16);
  background:
    linear-gradient(180deg, rgba(10,20,42,.92), rgba(7,14,30,.92));
  box-shadow: 0 24px 60px rgba(2,6,23,.26);
  backdrop-filter: blur(18px);
}

.gg-home-story-point{
  padding: 16px 18px;
  border-radius: 22px;
}

.gg-home-story-point strong,
.gg-show-title,
.gg-feature-title,
.gg-price-name,
.gg-home-showcard-title{
  color: #f5f9ff;
}

.gg-home-story-point span,
.gg-home-showcard-text,
.gg-show-text,
.gg-show-list,
.gg-feature-desc,
.gg-price-sub,
.gg-price-list,
.gg-faq-a{
  color: rgba(204,220,247,.72);
}

.gg-home-story-point strong{
  display: block;
  font-size: .98rem;
  font-weight: 950;
  letter-spacing: -0.02em;
}

.gg-home-story-point span{
  display: block;
  margin-top: 6px;
  font-weight: 650;
  line-height: 1.65;
}

.gg-home-story-visual{
  padding: 16px;
  border-radius: 28px;
  animation: ggHomeFloat 8.5s ease-in-out infinite;
}

.gg-home-story-visual img,
.gg-home-showcard-media img,
.gg-show-visual img,
.gg-home-split-visual img{
  width: 100%;
  display: block;
  border-radius: 18px;
}

.gg-home-showband{
  display: grid;
  grid-template-columns: 1.1fr .9fr;
  gap: 16px;
  margin-bottom: 28px;
}

.gg-home-showcard{
  display: grid;
  grid-template-columns: .95fr 1.05fr;
  gap: 16px;
  align-items: center;
  padding: 18px;
  border-radius: 28px;
}

.gg-home-showcard-media,
.gg-show-visual,
.gg-home-split-visual{
  padding: 10px;
  border-radius: 22px;
  background: rgba(255,255,255,.04);
  border: 1px solid rgba(120,153,216,.14);
}

.gg-home-showcard-title{
  margin: 0;
  font-size: clamp(1.2rem, 2vw, 1.7rem);
  font-weight: 950;
  letter-spacing: -0.03em;
}

.gg-home-showcard-text{
  margin: 10px 0 0;
  font-weight: 650;
  line-height: 1.72;
}

.gg-home-quote{
  display: flex;
  align-items: center;
  padding: 22px;
  border-radius: 28px;
  position: relative;
  overflow: hidden;
}

.gg-home-quote::after,
.gg-feature::after,
.gg-show::after,
.gg-price.featured::after{
  content: "";
  position: absolute;
  inset: -35%;
  background: radial-gradient(circle at center, rgba(59,130,246,.14), transparent 54%);
  opacity: .85;
  animation: ggHomePulseAura 9s ease-in-out infinite alternate;
  pointer-events: none;
}

@keyframes ggHomePulseAura{
  0%{ transform: translate3d(-3%, 0, 0) scale(1); }
  100%{ transform: translate3d(3%, 4%, 0) scale(1.08); }
}

.gg-home-quote p{
  position: relative;
  z-index: 1;
  margin: 0;
  font-size: clamp(1.12rem, 2vw, 1.58rem);
  font-weight: 900;
  letter-spacing: -0.03em;
  line-height: 1.35;
  color: #f7fbff;
}

.gg-showcase{
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: 14px;
  margin-top: 12px;
}

.gg-show{
  grid-column: span 6;
  border-radius: 26px;
  padding: 18px;
  overflow: hidden;
  position: relative;
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}

.gg-show:hover,
.gg-feature:hover,
.gg-price:hover{
  transform: translateY(-2px);
  box-shadow: 0 30px 74px rgba(2,6,23,.34);
  border-color: rgba(124,177,255,.28);
}

.gg-show-head,
.gg-show-body,
.gg-feature-top{
  position: relative;
  z-index: 1;
}

.gg-show-head{
  display: flex;
  justify-content: space-between;
  gap: 12px;
  align-items: flex-start;
}

.gg-show-title{
  margin: 6px 0 0;
  font-weight: 950;
  letter-spacing: -0.03em;
  font-size: 1.15rem;
}

.gg-show-body{
  margin-top: 10px;
  display: grid;
  gap: 10px;
}

.gg-show-text,
.gg-show-list{
  margin: 0;
  font-weight: 650;
  line-height: 1.75;
}

.gg-show-list{
  padding-left: 18px;
}

.gg-faq{
  display: grid;
  gap: 10px;
  margin-top: 12px;
}

.gg-faq-item{
  border-radius: 22px;
  padding: 14px 16px;
}

.gg-faq-q{
  color: #f5f9ff;
  font-weight: 950;
  letter-spacing: -0.02em;
}

.gg-feature{
  border-radius: 22px;
  padding: 16px;
  min-height: 152px;
  position: relative;
  overflow: hidden;
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}

.gg-feature-top{
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.gg-feature-ico{
  width: 44px;
  height: 44px;
  border-radius: 16px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(124,159,222,.20);
  background: rgba(255,255,255,.06);
  box-shadow: 0 14px 22px rgba(2,6,23,.18);
  color: #8cc7ff;
}

.gg-feature .badge{
  background: rgba(255,255,255,.08) !important;
  color: #d9e8ff !important;
  border-color: rgba(124,159,222,.20) !important;
}

.gg-feature-title{
  margin: 12px 0 6px;
  font-weight: 950;
  letter-spacing: -0.02em;
  font-size: 1.02rem;
  position: relative;
  z-index: 1;
}

.gg-feature-desc{
  margin: 0;
  font-weight: 600;
  line-height: 1.6;
  position: relative;
  z-index: 1;
}

.gg-home-split{
  margin: 34px 0;
  padding: 24px;
  border-radius: 34px;
  display: grid;
  grid-template-columns: .9fr 1.1fr;
  gap: 26px;
  align-items: center;
}

.gg-home-split--reverse{
  grid-template-columns: 1.1fr .9fr;
}

.gg-home-split--reverse .gg-home-split-copy{
  order: 2;
}

.gg-home-split--reverse .gg-home-split-visual{
  order: 1;
}

.gg-home-split-copy{
  display: grid;
  gap: 16px;
  max-width: 520px;
}

.gg-home-split-visual{
  min-height: 360px;
  display: flex;
  align-items: center;
  justify-content: center;
  animation: ggHomeFloat 6s ease-in-out infinite;
}

.gg-price{
  border-radius: 24px;
  padding: 18px;
  position: relative;
  overflow: hidden;
}

.gg-price.featured{
  border-color: rgba(124,177,255,.28);
  background:
    linear-gradient(180deg, rgba(13,31,67,.96), rgba(8,15,31,.96));
}

.gg-price-name{
  font-weight: 950;
  letter-spacing: -0.02em;
  margin-bottom: 6px;
}

.gg-price-val{
  font-size: 2rem;
  font-weight: 950;
  letter-spacing: -0.04em;
  margin: 6px 0 0;
  color: #f8fbff;
}

.gg-price-sub{
  font-weight: 650;
  margin: 4px 0 12px;
}

.gg-price-list{
  margin: 0;
  padding-left: 18px;
  font-weight: 600;
  line-height: 1.7;
}

.nova52-launch-card{
  background: linear-gradient(135deg, rgba(10,20,42,.94) 0%, rgba(9,18,38,.96) 100%) !important;
  border: 1px solid rgba(126,160,223,.16) !important;
  box-shadow: 0 28px 70px rgba(2,6,23,.30) !important;
}

.nova52-headline,
.nova52-bullets li{
  color: #f5f9ff !important;
}

.nova52-desc{
  color: rgba(204,220,247,.72) !important;
}

.nova52-chat-preview{
  background: rgba(11,20,39,.92) !important;
  border: 1px solid rgba(126,160,223,.16) !important;
  box-shadow: 0 18px 44px rgba(2,6,23,.24) !important;
}

.nova52-user-line{
  background: rgba(37,99,235,.12) !important;
  color: #dce9ff !important;
}

.nova52-ai-line{
  background: linear-gradient(135deg, rgba(37,99,235,.12), rgba(14,165,233,.08)) !important;
  color: #dce9ff !important;
  border: 1px solid rgba(126,160,223,.16) !important;
}

@media (max-width: 991.98px){
  .gg-home-hero-grid{ grid-template-columns: 1fr; }
  .gg-home-story{ grid-template-columns: 1fr; }
  .gg-home-showband{ grid-template-columns: 1fr; }
  .gg-home-showcard{ grid-template-columns: 1fr; }
  .gg-home-split,
  .gg-home-split--reverse{ grid-template-columns: 1fr; }
  .gg-home-split--reverse .gg-home-split-copy,
  .gg-home-split--reverse .gg-home-split-visual{ order: initial; }
  .gg-pricing-grid{ grid-template-columns: 1fr; }
  .gg-show{ grid-column: span 12; }
}

@media (max-width: 575.98px){
  .gg-feature-grid{ grid-template-columns: 1fr; }
  .gg-home-title{
    font-size: clamp(2.3rem, 12vw, 3.25rem);
  }
}
