/* ==========================================================================
   Gully Baba — International Author Excellence Awards
   REVAMP LAYER — visual redesign only. No content is added, removed or edited.
   Everything here is presentation: colour, type, spacing, depth, motion prep.
   Scoped under body.gb-revamp, so the whole layer can be disabled instantly
   by removing that one class (or deleting the mu-plugin).

   WHY THE CLASS IS REPEATED 4x IN EVERY SELECTOR
   ----------------------------------------------
   Elementor's background-image lazy-loading injects this inline rule:

     .e-con.e-parent:nth-of-type(n+4):not(.e-lazyloaded):not(.e-no-lazyload) *
       { background-image: none !important; }

   That is specificity (0,5,0) with !important, and its `*` reaches every
   descendant — so a normal `body.gb-revamp .elementor-button` rule (0,2,1)
   loses, and every gradient in the page silently renders as `none` until
   Elementor marks the container loaded. Repeating the class lifts this layer
   to (0,5,1) so the design paints immediately and consistently.
   Verified against the live page: (0,4,1) still lost, (0,5,1) wins.
   ========================================================================== */

/* --------------------------------------------------------------------------
   1. DESIGN TOKENS
   Brand orange #FF914B is preserved as the anchor and extended into a
   champagne-gold ramp so the page reads "awards gala" rather than "flat CTA".
   -------------------------------------------------------------------------- */
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp {
  --gb-ink:         #14110E;
  --gb-ink-2:       #211B15;
  --gb-body:        #4A423A;

  --gb-cream:       #FCF9F4;
  --gb-cream-2:     #F6EFE4;
  --gb-cream-3:     #EFE5D6;
  --gb-line:        rgba(20, 17, 14, .10);
  --gb-line-soft:   rgba(20, 17, 14, .06);

  --gb-gold:        #FF914B;
  --gb-gold-warm:   #FFA85F;
  --gb-gold-deep:   #E5762F;
  --gb-champagne:   #E8C88A;

  --gb-grad-gold:   linear-gradient(115deg, #FF914B 0%, #FFA85F 45%, #E8C88A 100%);
  --gb-grad-ink:    linear-gradient(165deg, #1B1712 0%, #14110E 55%, #0D0B09 100%);
  --gb-grad-line:   linear-gradient(90deg, transparent, #FF914B, #E8C88A, transparent);

  /* Depth is built from stacked layers rather than one blur: a tight contact
     shadow, a mid diffuse layer, then a wide ambient one. That is what makes a
     card read as *lifted* instead of *outlined in grey*. */
  --gb-shadow-sm:
    0 1px 2px rgba(20,17,14,.045),
    0 2px 6px -1px rgba(20,17,14,.05);
  --gb-shadow-md:
    0 1px 2px rgba(20,17,14,.04),
    0 4px 10px -3px rgba(20,17,14,.065),
    0 14px 28px -12px rgba(20,17,14,.10);
  --gb-shadow-lg:
    0 1px 3px rgba(20,17,14,.05),
    0 8px 18px -6px rgba(20,17,14,.085),
    0 26px 50px -20px rgba(20,17,14,.15),
    0 48px 88px -36px rgba(20,17,14,.17);
  --gb-shadow-gold:
    0 4px 10px -4px rgba(229,118,47,.34),
    0 16px 34px -14px rgba(255,145,75,.46);
  --gb-shadow-gold-hi:
    0 6px 14px -5px rgba(229,118,47,.40),
    0 26px 54px -18px rgba(255,145,75,.58);

  --gb-r-sm: 10px;
  --gb-r-md: 16px;
  --gb-r-lg: 22px;
  --gb-r-xl: 28px;

  /* One rhythm scale. Every band, gutter and stack below derives from these,
     so the page keeps a single vertical beat instead of per-section guesses. */
  --gb-band:    clamp(72px, 7.2vw, 130px);
  --gb-band-sm: clamp(50px, 5.2vw, 88px);
  --gb-gap:     clamp(18px, 1.9vw, 30px);
  --gb-stack:   clamp(13px, 1vw, 20px);
  --gb-measure: 64ch;

  --gb-ease:      cubic-bezier(.22, 1, .36, 1);
  --gb-ease-soft: cubic-bezier(.4, 0, .2, 1);
}

/* --------------------------------------------------------------------------
   2. BASE — warm ivory ground with a whisper of grain instead of flat white
   -------------------------------------------------------------------------- */
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp {
  background-color: var(--gb-cream) !important;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  overflow-x: hidden;
}

body.gb-revamp.gb-revamp.gb-revamp.gb-revamp::before {
  content: "";
  position: fixed;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  opacity: .5;
  background-image:
    radial-gradient(900px 520px at 12% -5%,  rgba(255,145,75,.09), transparent 65%),
    radial-gradient(760px 460px at 92% 8%,   rgba(232,200,138,.14), transparent 62%),
    radial-gradient(820px 620px at 50% 108%, rgba(255,145,75,.07), transparent 60%) !important;
}
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp > * { position: relative; z-index: 1; }

/* fine film grain — adds tactility for the cost of one tiny inline SVG */
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp::after {
  content: "";
  position: fixed;
  inset: 0;
  z-index: 2;
  pointer-events: none;
  opacity: .028;
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.82' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='180' height='180' filter='url(%23n)'/%3E%3C/svg%3E");
}

/* --------------------------------------------------------------------------
   3. TYPOGRAPHY — same words, better voice
   -------------------------------------------------------------------------- */
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp h1,
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp h2 {
  letter-spacing: -.028em;
  text-wrap: balance;
}
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp h3,
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp h4 { letter-spacing: -.014em; }

body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-heading-title {
  font-feature-settings: "kern" 1, "liga" 1;
}

/* fluid headline scale — commanding on desktop, never cramped on mobile */
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp h1,
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp h1.elementor-heading-title {
  font-size: clamp(2.7rem, 1.45rem + 3.75vw, 4.8rem) !important;
  line-height: 1.035 !important;
}
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp h2,
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp h2.elementor-heading-title {
  font-size: clamp(2.02rem, 1.22rem + 2.4vw, 3.2rem) !important;
  line-height: 1.09 !important;
}
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp h3,
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp h3.elementor-heading-title {
  font-size: clamp(1.3rem, 1.04rem + .78vw, 1.74rem) !important;
  line-height: 1.26 !important;
}

body.gb-revamp.gb-revamp.gb-revamp.gb-revamp p {
  line-height: 1.68;
  text-wrap: pretty;               /* avoids orphans without touching the words */
}
/* A comfortable measure. Long lines are the single biggest readability tax on
   a wide landing page, and nothing here changes the copy itself. */
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-widget-text-editor p {
  max-width: var(--gb-measure);
}
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp [style*="text-align: center"] .elementor-widget-text-editor p,
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-widget-text-editor[class*="align-center"] p {
  margin-left: auto;
  margin-right: auto;
}

/* champagne-gold gradient text, applied by JS to emphasis words only */
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .gb-gold-text {
  background: var(--gb-grad-gold) !important;
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  color: transparent;
}

/* --------------------------------------------------------------------------
   4. SECTION RHYTHM
   -------------------------------------------------------------------------- */
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-top-section > .elementor-container,
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .e-con.e-parent > .e-con-inner {
  padding-left: clamp(18px, 4vw, 40px);
  padding-right: clamp(18px, 4vw, 40px);
}

/* hairline gold divider, drawn open by GSAP */
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .gb-divider { position: relative; }
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .gb-divider::before {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%) scaleX(0);
  transform-origin: center;
  width: min(1180px, 88vw);
  height: 1px;
  background: var(--gb-grad-line) !important;
  opacity: .55;
  transition: transform 1.3s var(--gb-ease-soft);
}
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .gb-divider-in::before {
  transform: translateX(-50%) scaleX(1);
}

/* --------------------------------------------------------------------------
   5. BUTTONS — the flat 3px-radius orange block becomes a proper CTA
   -------------------------------------------------------------------------- */
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-button,
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp input[type="submit"] {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  border: 0 !important;
  border-radius: 999px !important;
  padding: 1.05em 2.5em !important;
  font-weight: 600 !important;
  letter-spacing: .055em !important;
  /* NOTE: no text-transform anywhere in this file — letter casing is content,
     and the brief was that copy must render exactly as authored. */
  color: #fff !important;
  /* Solid brand orange first: if the gradient is ever dropped (old engine,
     print, forced-colours) the button falls back to exactly today's design
     rather than to a transparent, unreadable box. */
  background-color: #FF914B !important;
  background-image: var(--gb-grad-gold) !important;
  box-shadow: var(--gb-shadow-gold) !important;
  transition: transform .45s var(--gb-ease),
              box-shadow .45s var(--gb-ease),
              filter .35s var(--gb-ease-soft);
  will-change: transform;
}

/* sheen sweep on hover */
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-button::after,
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp input[type="submit"]::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background: linear-gradient(105deg,
    transparent 35%,
    rgba(255,255,255,.42) 50%,
    transparent 65%);
  transform: translateX(-120%);
  transition: transform .85s var(--gb-ease);
}
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-button:hover::after,
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp input[type="submit"]:hover::after { transform: translateX(120%); }

body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-button:hover,
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-button:focus,
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp input[type="submit"]:hover {
  color: #fff !important;
  background-color: #FF914B !important;
  background-image: var(--gb-grad-gold) !important;
  transform: translateY(-3px);
  box-shadow: var(--gb-shadow-gold-hi) !important;
  filter: saturate(1.08);
}
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-button:active { transform: translateY(-1px) scale(.985); }

body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-button:focus-visible,
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp input[type="submit"]:focus-visible,
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-field:focus-visible {
  outline: 2px solid var(--gb-gold-deep);
  outline-offset: 3px;
}

/* --------------------------------------------------------------------------
   6. HEADER — glass bar that condenses on scroll
   -------------------------------------------------------------------------- */
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-element-71ef58ae {
  background-color: rgba(16,13,11,.34) !important;
  backdrop-filter: blur(14px) saturate(1.3);
  -webkit-backdrop-filter: blur(14px) saturate(1.3);
  border-bottom: 1px solid rgba(255,255,255,.07);
  transition: background-color .5s var(--gb-ease),
              box-shadow .5s var(--gb-ease);
}
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp.gb-scrolled .elementor-element-71ef58ae {
  background-color: rgba(14,11,9,.82) !important;
  box-shadow: 0 12px 34px -18px rgba(0,0,0,.65) !important;
}

body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-element-71ef58ae .elementor-item {
  position: relative;
  letter-spacing: .045em;
  font-weight: 500;
  transition: color .35s var(--gb-ease-soft);
}
/* animated underline on nav links */
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-element-71ef58ae .elementor-item::before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: -2px;
  height: 1.5px;
  background: var(--gb-grad-gold) !important;
  transform: scaleX(0);
  transform-origin: right;
  transition: transform .45s var(--gb-ease);
}
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-element-71ef58ae .elementor-item:hover::before,
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-element-71ef58ae .elementor-item.elementor-item-active::before {
  transform: scaleX(1);
  transform-origin: left;
}

body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-element-71ef58ae img { transition: transform .5s var(--gb-ease); }
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-element-71ef58ae img:hover { transform: scale(1.06) rotate(-2deg); }

/* scroll progress rail */
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .gb-progress {
  position: fixed;
  top: 0;
  left: 0;
  height: 2px;
  width: 100%;
  transform: scaleX(0);
  transform-origin: left;
  background: var(--gb-grad-gold) !important;
  z-index: 9999;
  pointer-events: none;
}

/* --------------------------------------------------------------------------
   7. HERO — cinematic vignette + slow parallax drift
   -------------------------------------------------------------------------- */
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-element-848268a {
  position: relative;
  background-position: center 28% !important;
  isolation: isolate;
}
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-element-848268a::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  background:
    linear-gradient(180deg, rgba(10,8,6,.62) 0%, rgba(10,8,6,.30) 42%, rgba(10,8,6,.80) 100%),
    radial-gradient(120% 85% at 50% 42%, transparent 38%, rgba(8,6,5,.72) 100%) !important;
}
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-element-848268a > .e-con-inner {
  position: relative;
  z-index: 1;
}

/* hero sub-copy — kept at full sentence case and readable size */
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-element-848268a .elementor-widget-text-editor p {
  letter-spacing: .01em;
  text-shadow: 0 1px 12px rgba(0,0,0,.45);
}

/* glow so the headline lifts off the photograph */
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-element-848268a .elementor-heading-title {
  text-shadow: 0 2px 40px rgba(0,0,0,.55), 0 1px 3px rgba(0,0,0,.4);
}

/* scroll cue */
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .gb-scroll-cue {
  position: absolute;
  left: 50%;
  bottom: 26px;
  transform: translateX(-50%);
  width: 24px;
  height: 40px;
  border: 1.5px solid rgba(255,255,255,.5);
  border-radius: 999px;
  z-index: 3;
  pointer-events: none;
}
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .gb-scroll-cue::after {
  content: "";
  position: absolute;
  top: 7px;
  left: 50%;
  width: 3px;
  height: 7px;
  margin-left: -1.5px;
  border-radius: 2px;
  background: var(--gb-gold-warm) !important;
}

/* --------------------------------------------------------------------------
   8. QUOTE BAND — from flat black to layered ink
   -------------------------------------------------------------------------- */
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-element-4ae949b {
  background-color: #14110E !important;
  background-image: var(--gb-grad-ink) !important;
  position: relative;
  overflow: hidden;
}
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-element-4ae949b::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    radial-gradient(70% 140% at 8% 50%,  rgba(255,145,75,.16), transparent 60%),
    radial-gradient(60% 130% at 95% 30%, rgba(232,200,138,.12), transparent 62%) !important;
  pointer-events: none;
}
/* oversized decorative quote mark */
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-element-4ae949b::after {
  content: "\201C";
  position: absolute;
  top: -.24em;
  left: 3%;
  font-family: "Playfair Display", Georgia, serif;
  font-size: clamp(9rem, 22vw, 20rem);
  line-height: 1;
  color: rgba(255,145,75,.10);
  pointer-events: none;
  user-select: none;
}
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-element-4ae949b > .e-con-inner {
  position: relative;
  z-index: 1;
}

/* --------------------------------------------------------------------------
   9. CARD SYSTEM — icon boxes become elevated, gradient-edged cards
   Covers "What You Get" (6), "Steps" (3), "Testimonials" (6), magazine (2)
   -------------------------------------------------------------------------- */
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-widget-icon-box {
  position: relative;
  border-radius: var(--gb-r-lg);
  background-color: #FFFFFF !important;
  background-image: linear-gradient(168deg, #FFFFFF 0%, #FCF9F4 100%) !important;
  border: 1px solid var(--gb-line-soft);
  box-shadow: var(--gb-shadow-sm) !important;
  padding: clamp(22px, 2.2vw, 34px) !important;
  overflow: hidden;
  transition: transform .55s var(--gb-ease),
              box-shadow .55s var(--gb-ease),
              border-color .55s var(--gb-ease);
  will-change: transform;
}

/* gradient hairline that lights up on hover */
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-widget-icon-box::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 2px;
  background: var(--gb-grad-gold) !important;
  transform: scaleX(0);
  transform-origin: left;
  transition: transform .6s var(--gb-ease);
}
/* warm wash blooming from the corner */
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-widget-icon-box::after {
  content: "";
  position: absolute;
  top: -40%;
  right: -25%;
  width: 260px;
  height: 260px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(255,145,75,.16), transparent 68%) !important;
  opacity: 0;
  transition: opacity .6s var(--gb-ease);
  pointer-events: none;
}
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-widget-icon-box:hover {
  transform: translateY(-6px);
  box-shadow: var(--gb-shadow-lg) !important;
  border-color: rgba(255,145,75,.26);
}
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-widget-icon-box:hover::before { transform: scaleX(1); }
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-widget-icon-box:hover::after  { opacity: 1; }

body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-icon-box-icon {
  position: relative;
  transition: transform .6s var(--gb-ease);
}
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-widget-icon-box:hover .elementor-icon-box-icon {
  transform: translateY(-3px) scale(1.08);
}

/* --------------------------------------------------------------------------
   10. STEPS — connector rail drawn by GSAP
   -------------------------------------------------------------------------- */
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-element-76ecc45 { position: relative; }
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .gb-step-rail {
  position: absolute;
  height: 2px;
  background: linear-gradient(90deg, var(--gb-gold), var(--gb-champagne)) !important;
  opacity: .35;
  transform-origin: left;
  transform: scaleX(0);
  pointer-events: none;
  z-index: 0;
}

/* --------------------------------------------------------------------------
   11. JURY + PRICING — premium carousel cards
   -------------------------------------------------------------------------- */
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .e-n-carousel .swiper-slide { height: auto; }
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .e-n-carousel .swiper-slide > .e-con {
  border-radius: var(--gb-r-lg);
  transition: transform .55s var(--gb-ease), box-shadow .55s var(--gb-ease);
}

/* pricing cards */
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-element-8c22270 .swiper-slide > .e-con {
  background-color: #FFFFFF !important;
  background-image: linear-gradient(170deg, #FFFFFF 0%, #FCF9F4 62%, #F6EFE4 100%) !important;
  border: 1px solid var(--gb-line-soft);
  box-shadow: var(--gb-shadow-md) !important;
  overflow: hidden;
  position: relative;
}
/* gradient border that reveals on hover */
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-element-8c22270 .swiper-slide > .e-con::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;
  padding: 1px;
  background: var(--gb-grad-gold) !important;
  -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
  -webkit-mask-composite: xor;
  mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
  mask-composite: exclude;
  opacity: 0;
  transition: opacity .55s var(--gb-ease);
  pointer-events: none;
}
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-element-8c22270 .swiper-slide > .e-con:hover {
  transform: translateY(-10px);
  box-shadow: var(--gb-shadow-lg) !important;
}
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-element-8c22270 .swiper-slide > .e-con:hover::before { opacity: 1; }

/* feature ticks */
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-icon-list-item {
  transition: transform .4s var(--gb-ease);
}
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-icon-list-item:hover { transform: translateX(4px); }
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-icon-list-icon svg,
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-icon-list-icon i { transition: transform .4s var(--gb-ease); }
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-icon-list-item:hover .elementor-icon-list-icon svg,
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-icon-list-item:hover .elementor-icon-list-icon i { transform: scale(1.18); }

/* jury social icons */
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-social-icon {
  transition: transform .45s var(--gb-ease), box-shadow .45s var(--gb-ease);
}
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-social-icon:hover {
  transform: translateY(-4px) scale(1.1);
  box-shadow: 0 12px 24px -10px rgba(255,145,75,.6) !important;
}

/* --------------------------------------------------------------------------
   12. GALLERY / CAROUSEL polish
   -------------------------------------------------------------------------- */
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-element-797cca9 {
  background: linear-gradient(180deg, var(--gb-cream-2) 0%, var(--gb-cream-3) 100%) !important;
}

body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .swiper-slide img,
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-widget-image img {
  border-radius: var(--gb-r-md);
  transition: transform .8s var(--gb-ease), filter .6s var(--gb-ease);
}
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-widget-image-carousel .swiper-slide {
  overflow: hidden;
  border-radius: var(--gb-r-md);
}
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-widget-image-carousel .swiper-slide:hover img {
  transform: scale(1.06);
  filter: saturate(1.1);
}

body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .swiper-pagination-bullet {
  transition: width .45s var(--gb-ease), background-color .45s var(--gb-ease);
}
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .swiper-pagination-bullet-active {
  width: 26px !important;
  border-radius: 999px !important;
  background: var(--gb-grad-gold) !important;
}

/* brand-winner logos: quiet until hovered */
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-element-80de870 .swiper-slide img {
  filter: grayscale(1) contrast(.95) opacity(.62);
  transition: filter .5s var(--gb-ease), transform .5s var(--gb-ease);
}
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-element-80de870 .swiper-slide:hover img {
  filter: none;
  transform: scale(1.05);
}

/* --------------------------------------------------------------------------
   13. MAGAZINE BAND
   -------------------------------------------------------------------------- */
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-element-85c5560 {
  background: linear-gradient(135deg, rgba(255,145,75,.14) 0%, rgba(232,200,138,.20) 100%) !important;
  position: relative;
  overflow: hidden;
}
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-element-85c5560 .elementor-widget-image img {
  box-shadow: var(--gb-shadow-lg) !important;
  border-radius: var(--gb-r-md);
}

/* --------------------------------------------------------------------------
   14. FORM — soft, tactile inputs
   -------------------------------------------------------------------------- */
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-field-group .elementor-field {
  border-radius: var(--gb-r-sm) !important;
  border: 1px solid var(--gb-line) !important;
  background: rgba(255,255,255,.94) !important;
  padding: .95em 1.15em !important;
  transition: border-color .4s var(--gb-ease),
              box-shadow .4s var(--gb-ease),
              background-color .4s var(--gb-ease);
}
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-field-group .elementor-field:focus {
  border-color: var(--gb-gold) !important;
  background: #fff !important;
  box-shadow: 0 0 0 4px rgba(255,145,75,.16) !important;
  outline: none;
}

/* --------------------------------------------------------------------------
   15. FOOTER
   -------------------------------------------------------------------------- */
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-element-bd6e8fb {
  background-color: #14110E !important;
  background-image: var(--gb-grad-ink) !important;
  position: relative;
}
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-element-bd6e8fb::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 1px;
  background: var(--gb-grad-line) !important;
  opacity: .6;
}
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-element-bd6e8fb .elementor-icon-list-item a {
  display: inline-block;
  transition: color .35s var(--gb-ease-soft), transform .35s var(--gb-ease);
}
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-element-bd6e8fb .elementor-icon-list-item a:hover {
  color: var(--gb-gold-warm) !important;
  transform: translateX(3px);
}
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-element-4143618 {
  background-color: #FF914B !important;
  background-image: var(--gb-grad-gold) !important;
}

/* --------------------------------------------------------------------------
   16. ANIMATION PREP
   Initial states apply ONLY once JS confirms it is running (html.gb-anim),
   so the page degrades to fully-visible content if the script ever fails.
   -------------------------------------------------------------------------- */
html.gb-anim body.gb-revamp.gb-revamp.gb-revamp.gb-revamp [data-gb-reveal] {
  opacity: 0;
  will-change: transform, opacity;
}
html.gb-anim body.gb-revamp.gb-revamp.gb-revamp.gb-revamp [data-gb-reveal="up"]    { transform: translate3d(0, 34px, 0); }
html.gb-anim body.gb-revamp.gb-revamp.gb-revamp.gb-revamp [data-gb-reveal="fade"]  { transform: none; }
html.gb-anim body.gb-revamp.gb-revamp.gb-revamp.gb-revamp [data-gb-reveal="left"]  { transform: translate3d(-38px, 0, 0); }
html.gb-anim body.gb-revamp.gb-revamp.gb-revamp.gb-revamp [data-gb-reveal="right"] { transform: translate3d(38px, 0, 0); }
html.gb-anim body.gb-revamp.gb-revamp.gb-revamp.gb-revamp [data-gb-reveal="zoom"]  { transform: scale(.94); }

html.gb-anim body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .gb-line-mask  { overflow: hidden; display: block; }
html.gb-anim body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .gb-line-inner { display: block; transform: translate3d(0, 110%, 0); }

/* Elementor's own entrance classes must not fight ours */
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-invisible { visibility: visible !important; }

/* --------------------------------------------------------------------------
   17. RESPONSIVE
   -------------------------------------------------------------------------- */
@media (max-width: 1024px) {
  body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-widget-icon-box { padding: 24px !important; }
  body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-element-4ae949b::after { font-size: 12rem; left: 1%; }
}
@media (max-width: 767px) {
  body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-button,
  body.gb-revamp.gb-revamp.gb-revamp.gb-revamp input[type="submit"] {
    padding: 1em 1.9em !important;
    letter-spacing: .04em !important;
  }
  body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-widget-icon-box { padding: 20px !important; }
  body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-widget-icon-box:hover { transform: none; }
  body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .gb-scroll-cue { display: none; }
  body.gb-revamp.gb-revamp.gb-revamp.gb-revamp::after { opacity: .02; }
}

/* --------------------------------------------------------------------------
   18. ACCESSIBILITY — honour reduced-motion completely
   -------------------------------------------------------------------------- */
@media (prefers-reduced-motion: reduce) {
  html.gb-anim body.gb-revamp.gb-revamp.gb-revamp.gb-revamp [data-gb-reveal],
  html.gb-anim body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .gb-line-inner {
    opacity: 1 !important;
    transform: none !important;
  }
  body.gb-revamp.gb-revamp.gb-revamp.gb-revamp *,
  body.gb-revamp.gb-revamp.gb-revamp.gb-revamp *::before,
  body.gb-revamp.gb-revamp.gb-revamp.gb-revamp *::after {
    animation-duration: .001ms !important;
    transition-duration: .001ms !important;
  }
  body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .gb-scroll-cue { display: none; }
}


/* ==========================================================================
   Gully Baba — SECTION LAYOUT PASS (v2)
   Loads after revamp.css. This file reworks the *structure* of each section:
   rhythm, grids, card composition, emphasis and decorative furniture.

   Still zero content change — no text is added, removed or re-cased. Anything
   that looks like a new label (step badges, country chips, price emphasis) is
   existing copy being styled differently.

   Selectors repeat .gb-revamp 4x for the same reason as revamp.css: Elementor's
   lazy-load rule is (0,5,0) !important and would otherwise kill backgrounds.
   ========================================================================== */

/* --------------------------------------------------------------------------
   1. VERTICAL RHYTHM
   The original page runs every band at a different, mostly cramped height.
   One consistent scale makes the whole page feel designed rather than stacked.
   -------------------------------------------------------------------------- */
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-element-4ff821f,
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-element-3035f8c,
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-element-797cca9,
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-element-76ecc45,
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-element-51ded35,
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-element-8c22270,
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-element-80de870,
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-element-a1b17c0,
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-element-85c5560,
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-element-f62f607 {
  padding-top:    var(--gb-band) !important;
  padding-bottom: var(--gb-band) !important;
}

/* Alternating grounds so adjacent bands separate without hard lines */
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-element-3035f8c,
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-element-a1b17c0 {
  background-color: #FFFFFF !important;
}
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-element-76ecc45 {
  background-color: #FAF6EF !important;
}

/* --------------------------------------------------------------------------
   2. SECTION HEADINGS
   A short gold rule above each section title, and a measured max-width on the
   sub-line, so every band opens the same way.
   -------------------------------------------------------------------------- */
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .gb-sec-head {
  position: relative;
  padding-top: 26px !important;
}
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .gb-sec-head::before {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%) scaleX(0);
  transform-origin: center;
  width: 62px;
  height: 3px;
  border-radius: 3px;
  background-image: linear-gradient(90deg, #FF914B, #E8C88A) !important;
  transition: transform .8s cubic-bezier(.22,1,.36,1);
}
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .gb-sec-head.gb-in::before {
  transform: translateX(-50%) scaleX(1);
}
/* left-aligned variant, when the section's heading is not centred */
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .gb-sec-head.gb-left::before {
  left: 0;
  transform: translateX(0) scaleX(0);
  transform-origin: left;
}
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .gb-sec-head.gb-left.gb-in::before {
  transform: translateX(0) scaleX(1);
}

/* the descriptive line under a section title gets a comfortable measure */
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .gb-sec-sub {
  max-width: 62ch;
  margin-left: auto !important;
  margin-right: auto !important;
}

/* --------------------------------------------------------------------------
   3. "WHAT YOU GET" — six benefits become a real, even grid
   Elementor stacks these as separate containers; this forces a proper
   3-up / 2-up / 1-up grid with equal heights and shared gutters.
   -------------------------------------------------------------------------- */
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .gb-grid-3 {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: clamp(16px, 1.8vw, 28px);
  align-items: stretch;
  width: 100%;
}
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .gb-grid-3 > * {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  display: flex;
  flex-direction: column;
}
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .gb-grid-3 .elementor-widget-icon-box {
  height: 100%;
}

@media (max-width: 1024px) {
  body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .gb-grid-3 { grid-template-columns: repeat(2, minmax(0,1fr)); }
}
@media (max-width: 640px) {
  body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .gb-grid-3 { grid-template-columns: 1fr; }
}

/* icon sits in a soft gold chip rather than floating loose */
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-element-3035f8c .elementor-icon-box-icon,
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-element-a1b17c0 .elementor-icon-box-icon {
  width: 62px;
  height: 62px;
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  border-radius: 18px;
  margin-bottom: 18px !important;
  background-color: rgba(255,145,75,.10) !important;
  background-image: linear-gradient(150deg, rgba(255,145,75,.18), rgba(232,200,138,.14)) !important;
  box-shadow: inset 0 0 0 1px rgba(255,145,75,.16) !important;
  transition: transform .55s cubic-bezier(.22,1,.36,1), box-shadow .55s cubic-bezier(.22,1,.36,1);
}
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-widget-icon-box:hover .elementor-icon-box-icon {
  transform: translateY(-4px) rotate(-6deg) scale(1.06);
  box-shadow: inset 0 0 0 1px rgba(255,145,75,.34),
              0 14px 28px -14px rgba(255,145,75,.55) !important;
}

/* --------------------------------------------------------------------------
   4. STEPS — the existing "Step 1 / 2 / 3" copy becomes a numbered badge
   -------------------------------------------------------------------------- */
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .gb-step-badge {
  display: inline-block !important;
  padding: .48em 1.15em !important;
  border-radius: 999px !important;
  font-size: .72rem !important;
  font-weight: 700 !important;
  letter-spacing: .13em !important;
  color: #8A4A18 !important;
  background-color: rgba(255,145,75,.13) !important;
  background-image: none !important;
  box-shadow: inset 0 0 0 1px rgba(255,145,75,.26) !important;
  margin-bottom: 16px !important;
}

body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-element-76ecc45 .elementor-widget-icon-box {
  position: relative;
  z-index: 1;
  text-align: left;
  background-color: #FFFFFF !important;
}

/* In this section the description holds the actual step name, so it carries
   the weight and the "Step n" label above it recedes into a badge. */
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-element-76ecc45 .elementor-icon-box-description {
  font-family: "Playfair Display", Georgia, serif !important;
  font-size: clamp(1.15rem, .95rem + .6vw, 1.5rem) !important;
  line-height: 1.28 !important;
  font-weight: 600 !important;
  color: #14110E !important;
  margin-top: 2px !important;
}

/* --------------------------------------------------------------------------
   5. JURY — country reads as a chip above the name; card gets real structure
   -------------------------------------------------------------------------- */
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-element-51ded35 .swiper-slide > .e-con {
  background-color: #FFFFFF !important;
  background-image: linear-gradient(172deg, #FFFFFF 0%, #FCF9F4 100%) !important;
  box-shadow: 0 12px 34px -18px rgba(20,17,14,.20) !important;
  border: 1px solid rgba(20,17,14,.06);
  padding: clamp(20px, 2vw, 30px) !important;
  height: 100%;
}
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-element-51ded35 .swiper-slide > .e-con:hover {
  transform: translateY(-8px);
  box-shadow: 0 30px 60px -26px rgba(20,17,14,.30) !important;
}
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .gb-country-chip {
  display: inline-block !important;
  padding: .34em .9em !important;
  border-radius: 999px !important;
  font-size: .68rem !important;
  font-weight: 600 !important;
  letter-spacing: .1em !important;
  color: #6B5A44 !important;
  background-color: rgba(232,200,138,.24) !important;
  background-image: none !important;
  margin-bottom: 10px !important;
}
/* jury portraits: circular, gold ring */
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-element-51ded35 .elementor-widget-image img {
  border-radius: 50% !important;
  aspect-ratio: 1 / 1;
  object-fit: cover;
  box-shadow: 0 0 0 3px rgba(255,145,75,.22), 0 14px 30px -16px rgba(20,17,14,.4) !important;
}

/* --------------------------------------------------------------------------
   6. PRICING — the middle package is lifted as the hero card
   -------------------------------------------------------------------------- */
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-element-8c22270 .swiper-slide > .e-con {
  padding: clamp(24px, 2.4vw, 38px) !important;
  height: 100%;
}
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .gb-price-featured > .e-con,
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .swiper-slide.gb-price-featured > .e-con {
  background-color: #FFFDF9 !important;
  background-image: linear-gradient(168deg, #FFFFFF 0%, #FFF6EA 100%) !important;
  box-shadow: 0 34px 70px -30px rgba(255,145,75,.55),
              0 12px 26px -14px rgba(20,17,14,.16) !important;
}
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .gb-price-featured > .e-con::before {
  opacity: 1 !important;
}

/* price figure sits on its own line with air around it */
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .gb-gold-text {
  display: block;
  font-size: clamp(2.1rem, 1.4rem + 2.1vw, 3rem) !important;
  line-height: 1.1 !important;
  margin: 6px 0 4px !important;
}

/* feature list: tidy ticks, comfortable leading */
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-element-8c22270 .elementor-icon-list-item {
  align-items: flex-start;
  margin-bottom: 9px !important;
  line-height: 1.55;
}

/* --------------------------------------------------------------------------
   7. BRAND WINNERS — a continuous marquee instead of a static logo row
   -------------------------------------------------------------------------- */
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-element-80de870 {
  background-color: #FFFFFF !important;
  overflow: hidden;
}
/* soft fade at both edges so logos enter and leave gracefully */
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-element-80de870 .elementor-widget-image-carousel {
  -webkit-mask-image: linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent);
  mask-image: linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent);
}

/* --------------------------------------------------------------------------
   8. MAGAZINE BAND — proper two-column split with an offset image
   -------------------------------------------------------------------------- */
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-element-85c5560 .elementor-widget-image img {
  border-radius: 20px !important;
  transform: rotate(-2deg);
  transition: transform .9s cubic-bezier(.22,1,.36,1);
}
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-element-85c5560:hover .elementor-widget-image img {
  transform: rotate(0deg) scale(1.02);
}

/* --------------------------------------------------------------------------
   9. FORM BAND — the form becomes a card floating on the section
   -------------------------------------------------------------------------- */
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-element-f62f607 .elementor-widget-form {
  background-color: #FFFFFF !important;
  background-image: linear-gradient(172deg, #FFFFFF 0%, #FCF9F4 100%) !important;
  border: 1px solid rgba(20,17,14,.07);
  border-radius: 26px !important;
  padding: clamp(24px, 3vw, 44px) !important;
  box-shadow: 0 30px 64px -30px rgba(20,17,14,.26) !important;
}
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-field-group { margin-bottom: 4px; }

/* --------------------------------------------------------------------------
   10. FOOTER — columns line up, links get room to breathe
   -------------------------------------------------------------------------- */
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-element-bd6e8fb {
  padding-top: clamp(48px, 5vw, 74px) !important;
  padding-bottom: clamp(32px, 3.5vw, 52px) !important;
}
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-element-bd6e8fb .elementor-icon-list-item {
  margin-bottom: 8px !important;
}

/* --------------------------------------------------------------------------
   11. CARD TILT — driven by JS, needs the 3D context declared here
   -------------------------------------------------------------------------- */
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .gb-tilt {
  transform-style: preserve-3d;
  perspective: 900px;
}

/* --------------------------------------------------------------------------
   12. SMOOTH ANCHOR OFFSET — stop the fixed header covering section tops
   -------------------------------------------------------------------------- */
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp [id^="section-"],
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .e-con.e-parent {
  scroll-margin-top: 96px;
}

/* --------------------------------------------------------------------------
   13. RESPONSIVE TRIMS
   -------------------------------------------------------------------------- */
@media (max-width: 767px) {
  body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-element-4ff821f,
  body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-element-3035f8c,
  body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-element-797cca9,
  body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-element-76ecc45,
  body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-element-51ded35,
  body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-element-8c22270,
  body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-element-a1b17c0,
  body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-element-85c5560,
  body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-element-f62f607 {
    padding-top:    var(--gb-band-sm) !important;
    padding-bottom: var(--gb-band-sm) !important;
  }
  body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-element-51ded35 .elementor-widget-image img {
    max-width: 148px;
    margin: 0 auto;
  }
  body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .gb-tilt { transform: none !important; }
}

@media (prefers-reduced-motion: reduce) {
  body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .gb-sec-head::before { transform: translateX(-50%) scaleX(1) !important; }
  body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .gb-sec-head.gb-left::before { transform: scaleX(1) !important; }
  body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .gb-tilt { transform: none !important; }
}


/* ==========================================================================
   Gully Baba — REFINEMENT PASS (v3)
   Same design language as v1/v2 — warm ivory, champagne gold, Playfair.
   This pass is about execution, not direction: one vertical beat, a
   deliberate light/dark band order, consistent card depth, and headings that
   open every section the same way.

   Still zero content change. Nothing here adds, removes or re-cases a word.

   NOTE ON content-visibility
   --------------------------
   An obvious perf win here would be `content-visibility: auto` on the deep
   bands. It is deliberately NOT used: it skips layout for off-screen subtrees,
   and ScrollTrigger measures real element positions to build its start/end
   points. The two together produce triggers that fire at the wrong scroll
   offset once a section is finally laid out. Page weight is solved in the
   asset pass instead, where it costs nothing structurally.
   ========================================================================== */

/* --------------------------------------------------------------------------
   v3.0  UNSTICK THE BAND TRANSITION   ← fixes a pre-existing bug
   Elementor puts `transition: background .3s, border .3s, box-shadow .3s` on
   every .e-con. On these band containers that transition fires (transparent →
   our colour) but sits permanently at currentTime 0, so the *start* value —
   transparent — is what paints. Running transitions outrank !important in the
   cascade, so no author rule can beat it: verified by setting
   `background-color: rgb(1,2,3) !important` inline, which also failed, and
   which resolved correctly the instant the transition was removed.

   This is why the v2 white grounds never actually appeared on the live page.

   These bands are static — nothing about them changes on hover or state — so
   the transition buys nothing and is removed. Interactive elements (buttons,
   cards, header, form fields) keep theirs; only the band shells are covered.
   -------------------------------------------------------------------------- */
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-element-4ff821f,
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-element-3035f8c,
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-element-797cca9,
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-element-76ecc45,
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-element-51ded35,
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-element-8c22270,
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-element-80de870,
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-element-a1b17c0,
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-element-85c5560,
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-element-f62f607 {
  transition: none !important;
}

/* --------------------------------------------------------------------------
   v3.1  BAND ORDER
   The original page let bands land on whatever ground they happened to have,
   so two white sections often sat adjacent and the seam disappeared. These
   alternate deliberately: cream → white → cream → white, with the two ink
   bands (quote, footer) and the tinted magazine band as punctuation.
   -------------------------------------------------------------------------- */
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-element-4ff821f,   /* story        */
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-element-51ded35,   /* jury         */
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-element-80de870,   /* brand winners*/
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-element-f62f607 {  /* contact      */
  background-color: var(--gb-cream) !important;
}
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-element-3035f8c,   /* benefits     */
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-element-76ecc45,   /* steps        */
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-element-8c22270,   /* pricing      */
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-element-a1b17c0 {  /* testimonials */
  background-color: #FFFFFF !important;
}

/* A hairline seam where two light bands meet — enough to register the change
   of ground, far short of a visible rule. */
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-element-3035f8c,
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-element-76ecc45,
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-element-8c22270,
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-element-a1b17c0,
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-element-51ded35,
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-element-80de870,
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-element-f62f607 {
  box-shadow: inset 0 1px 0 var(--gb-line-soft);
}

/* --------------------------------------------------------------------------
   v3.2  SECTION OPENING RHYTHM
   Gold rule → title → sub-line, with the same spacing every time. Previously
   each band inherited whatever margin Elementor had on that widget.
   -------------------------------------------------------------------------- */
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .gb-sec-head {
  padding-top: 24px !important;
  margin-bottom: var(--gb-stack) !important;
}
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .gb-sec-head .elementor-heading-title {
  margin-bottom: 0 !important;
}
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .gb-sec-sub {
  max-width: var(--gb-measure);
  margin-bottom: calc(var(--gb-stack) * 1.6) !important;
}
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .gb-sec-sub p {
  max-width: none;                 /* the wrapper already holds the measure */
  margin-bottom: 0;
}

/* The gold rule reads better slightly shorter and thinner at this weight. */
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .gb-sec-head::before {
  width: 54px;
  height: 2px;
}

/* --------------------------------------------------------------------------
   v3.3  CARD SYSTEM — one depth language for every card on the page
   Benefit cards, step cards, jury cards and pricing cards previously each had
   their own shadow, radius and hover distance. They now share the token scale
   and differ only where they should: the featured package still sits proudest.
   -------------------------------------------------------------------------- */
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-widget-icon-box,
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-element-51ded35 .swiper-slide > .e-con,
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-element-8c22270 .swiper-slide > .e-con {
  border-radius: var(--gb-r-lg) !important;
  box-shadow: var(--gb-shadow-md) !important;
  /* Transform and shadow share one curve and one duration, so a card lifts and
     its shadow spreads as a single gesture rather than two overlapping ones. */
  transition: transform .5s var(--gb-ease),
              box-shadow .5s var(--gb-ease),
              border-color .5s var(--gb-ease) !important;
}
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-element-51ded35 .swiper-slide > .e-con:hover,
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-element-8c22270 .swiper-slide > .e-con:hover {
  transform: translateY(-6px);
  box-shadow: var(--gb-shadow-lg) !important;
}

/* --------------------------------------------------------------------------
   v3.4  GRID GUTTERS — pull card groups onto the shared gap token
   -------------------------------------------------------------------------- */
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .gb-grid-3 { gap: var(--gb-gap); }
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .e-n-carousel .swiper-slide > .e-con,
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-element-8c22270 .swiper-slide > .e-con {
  border-radius: var(--gb-r-lg);
}

/* --------------------------------------------------------------------------
   v3.5  ASSET SIZING
   The stage gallery is a uniform 3:2 set (360×240). Pinning the ratio here is
   what lets the asset pass lazy-load those slides without the carousel
   collapsing to zero height before the first image decodes.
   -------------------------------------------------------------------------- */
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-element-d7d066f .swiper-slide img {
  aspect-ratio: 3 / 2;
  width: 100%;
  height: auto;
  object-fit: cover;
  background-color: var(--gb-cream-2);   /* placeholder ground while decoding */
}

/* Never let an image reflow the page as it arrives. */
body.gb-revamp.gb-revamp.gb-revamp.gb-revamp img[loading="lazy"] {
  background-color: var(--gb-cream-2);
}

/* --------------------------------------------------------------------------
   v3.6  RESPONSIVE — the beat holds down to phones
   -------------------------------------------------------------------------- */
@media (max-width: 767px) {
  body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .gb-sec-head { padding-top: 18px !important; }
  body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .gb-sec-head::before { width: 44px; }
  body.gb-revamp.gb-revamp.gb-revamp.gb-revamp .elementor-widget-text-editor p { max-width: none; }
}
