/*
 * BHAVYA AI™ — Greetings Spotlight
 * Completely namespaced. No existing homepage selector modified.
 */

#bhGreetingsSpotlight {
  position: relative;
  width: min(1180px, calc(100% - 32px));
  margin: 28px auto 34px;
  isolation: isolate;
}

#bhGreetingsSpotlight[hidden] {
  display: none !important;
}

.bh-greeting-shell {
  position: relative;
  overflow: hidden;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 24px;
  align-items: center;
  padding: 24px 26px;
  border: 1px solid rgba(255, 196, 86, .28);
  border-radius: 24px;
  background:
    radial-gradient(
      circle at 10% 20%,
      rgba(255, 177, 60, .18),
      transparent 34%
    ),
    radial-gradient(
      circle at 90% 10%,
      rgba(168, 85, 247, .16),
      transparent 34%
    ),
    rgba(12, 17, 31, .88);
  box-shadow:
    0 18px 55px rgba(0, 0, 0, .22),
    inset 0 1px rgba(255, 255, 255, .06);
  backdrop-filter: blur(16px);
}

.bh-greeting-shell::before {
  content: "";
  position: absolute;
  inset: -80% -40%;
  z-index: -1;
  background:
    linear-gradient(
      110deg,
      transparent 42%,
      rgba(255,255,255,.07) 50%,
      transparent 58%
    );
  transform: translateX(-35%);
  animation: bhGreetingGlow 8s ease-in-out infinite;
  pointer-events: none;
}

@keyframes bhGreetingGlow {
  0%, 70%, 100% {
    transform: translateX(-35%);
  }

  85% {
    transform: translateX(35%);
  }
}

.bh-greeting-copy {
  min-width: 0;
}

.bh-greeting-kicker {
  margin-bottom: 7px;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: #f7c967;
}

.bh-greeting-heading {
  margin: 0;
  font-size: clamp(22px, 3vw, 34px);
  line-height: 1.14;
  color: #fff;
}

.bh-greeting-subtitle {
  margin: 8px 0 0;
  max-width: 760px;
  color: rgba(238, 242, 255, .82);
  font-size: 15px;
  line-height: 1.65;
}

.bh-greeting-actions {
  display: flex;
  align-items: center;
  gap: 13px;
}

.bh-greeting-symbol {
  display: grid;
  place-items: center;
  flex: 0 0 auto;
  width: 66px;
  height: 66px;
  border: 1px solid rgba(255,255,255,.16);
  border-radius: 20px;
  background: rgba(255,255,255,.07);
  box-shadow: inset 0 1px rgba(255,255,255,.08);
  font-size: 34px;
}

.bh-greeting-open {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 46px;
  padding: 0 19px;
  border-radius: 14px;
  text-decoration: none;
  white-space: nowrap;
  font-size: 14px;
  font-weight: 850;
  color: #17120a;
  background:
    linear-gradient(
      135deg,
      #ffe48b,
      #f8b74d
    );
  box-shadow: 0 10px 28px rgba(246, 181, 68, .18);
  transition:
    transform .18s ease,
    box-shadow .18s ease;
}

.bh-greeting-open:hover {
  transform: translateY(-2px);
  box-shadow: 0 14px 34px rgba(246, 181, 68, .24);
}

.bh-greeting-dots {
  display: flex;
  gap: 6px;
  margin-top: 13px;
}

.bh-greeting-dot {
  width: 7px;
  height: 7px;
  padding: 0;
  border: 0;
  border-radius: 999px;
  background: rgba(255,255,255,.26);
  cursor: pointer;
}

.bh-greeting-dot.is-active {
  width: 23px;
  background: #f7c967;
}

body.light .bh-greeting-shell {
  border-color: rgba(180, 116, 10, .22);
  background:
    radial-gradient(
      circle at 10% 20%,
      rgba(255, 188, 76, .20),
      transparent 34%
    ),
    radial-gradient(
      circle at 90% 10%,
      rgba(139, 92, 246, .10),
      transparent 34%
    ),
    rgba(255,255,255,.90);
  box-shadow: 0 18px 55px rgba(20,30,60,.09);
}

body.light .bh-greeting-heading {
  color: #172033;
}

body.light .bh-greeting-subtitle {
  color: #586174;
}

@media (max-width: 760px) {
  #bhGreetingsSpotlight {
    width: min(100% - 22px, 1180px);
    margin: 20px auto 26px;
  }

  .bh-greeting-shell {
    grid-template-columns: 1fr;
    padding: 20px;
  }

  .bh-greeting-actions {
    justify-content: space-between;
  }

  .bh-greeting-open {
    flex: 1;
  }
}

@media (prefers-reduced-motion: reduce) {
  .bh-greeting-shell::before {
    animation: none;
  }
}

/* ==========================================================
   BHAVYA_GREETINGS_SPOTLIGHT_PREMIUM_V2
   Actual festival image + premium top-of-home presentation
   ========================================================== */

#bhGreetingsSpotlight{
  width:min(1240px,calc(100% - 32px));
  margin:18px auto 28px;
}

#bhGreetingsSpotlight .bh-greeting-shell{
  grid-template-columns:
    128px
    minmax(0,1fr)
    auto;

  gap:24px;

  min-height:184px;

  padding:20px 24px;

  align-items:center;

  border-radius:26px;

  background:
    radial-gradient(
      circle at 8% 30%,
      rgba(255,163,55,.18),
      transparent 30%
    ),
    radial-gradient(
      circle at 88% 15%,
      rgba(111,75,246,.18),
      transparent 34%
    ),
    linear-gradient(
      120deg,
      rgba(13,22,35,.96),
      rgba(9,16,31,.95) 55%,
      rgba(23,22,53,.94)
    );

  box-shadow:
    0 22px 65px rgba(0,0,0,.27),
    inset 0 1px rgba(255,255,255,.06);
}


/*
 * display:contents allows the existing action wrapper's
 * image and CTA to become first-class grid items without
 * changing the permanent HTML structure.
 */

#bhGreetingsSpotlight .bh-greeting-actions{
  display:contents;
}


#bhGreetingsSpotlight .bh-greeting-symbol{
  grid-column:1;
  grid-row:1;

  width:128px;
  height:160px;

  padding:0;

  overflow:hidden;

  border-radius:21px;

  border:
    1px solid rgba(255,210,128,.22);

  background:
    radial-gradient(
      circle,
      rgba(255,192,72,.15),
      rgba(255,255,255,.04)
    );

  box-shadow:
    0 18px 38px rgba(0,0,0,.30),
    0 0 30px rgba(255,174,64,.07);

  font-size:40px;
}


#bhGreetingsSpotlight
.bh-greeting-symbol.has-image{
  background:#0b1220;
}


#bhGreetingsSpotlight
.bh-greeting-symbol img{
  display:block;

  width:100%;
  height:100%;

  object-fit:cover;
  object-position:center;

  border-radius:20px;
}


#bhGreetingsSpotlight
.bh-greeting-copy{
  grid-column:2;
  grid-row:1;

  min-width:0;

  align-self:center;
}


#bhGreetingsSpotlight
.bh-greeting-kicker{
  margin-bottom:7px;

  color:#f5c867;

  font-size:10px;
  font-weight:900;

  letter-spacing:.17em;
}


#bhGreetingsSpotlight
.bh-greeting-heading{
  max-width:800px;

  padding-top:.08em;
  padding-bottom:.10em;

  font-family:
    "Noto Sans Devanagari",
    "Nirmala UI",
    "Mangal",
    system-ui,
    sans-serif;

  font-size:
    clamp(
      27px,
      2.7vw,
      39px
    );

  line-height:1.26;

  overflow:visible;

  text-rendering:optimizeLegibility;
}


#bhGreetingsSpotlight
.bh-greeting-subtitle{
  max-width:800px;

  margin-top:7px;

  font-family:
    "Noto Sans Devanagari",
    "Nirmala UI",
    "Mangal",
    system-ui,
    sans-serif;

  font-size:14px;

  line-height:1.75;

  color:
    rgba(232,239,252,.82);
}


#bhGreetingsSpotlight
.bh-greeting-open{
  grid-column:3;
  grid-row:1;

  align-self:center;

  min-height:50px;

  padding:
    0 22px;

  border-radius:15px;

  box-shadow:
    0 13px 32px rgba(246,181,68,.18);
}


/* Light mode */

body.light
#bhGreetingsSpotlight
.bh-greeting-shell{
  background:
    radial-gradient(
      circle at 8% 30%,
      rgba(255,188,76,.20),
      transparent 30%
    ),
    radial-gradient(
      circle at 88% 15%,
      rgba(139,92,246,.10),
      transparent 34%
    ),
    rgba(255,255,255,.94);
}


/* Tablet / mobile */

@media(max-width:760px){

  #bhGreetingsSpotlight{
    width:min(
      calc(100% - 22px),
      1240px
    );

    margin:
      14px auto 22px;
  }

  #bhGreetingsSpotlight
  .bh-greeting-shell{
    grid-template-columns:
      92px
      minmax(0,1fr);

    gap:15px;

    min-height:0;

    padding:
      17px;

    border-radius:22px;
  }

  #bhGreetingsSpotlight
  .bh-greeting-symbol{
    grid-column:1;
    grid-row:1;

    width:92px;
    height:115px;

    border-radius:17px;
  }

  #bhGreetingsSpotlight
  .bh-greeting-symbol img{
    border-radius:16px;
  }

  #bhGreetingsSpotlight
  .bh-greeting-copy{
    grid-column:2;
    grid-row:1;
  }

  #bhGreetingsSpotlight
  .bh-greeting-heading{
    font-size:
      clamp(
        22px,
        6vw,
        30px
      );

    line-height:1.28;
  }

  #bhGreetingsSpotlight
  .bh-greeting-subtitle{
    font-size:13px;
    line-height:1.65;
  }

  #bhGreetingsSpotlight
  .bh-greeting-open{
    grid-column:1 / 3;
    grid-row:2;

    width:100%;

    min-height:45px;

    margin-top:2px;
  }
}


@media(max-width:420px){

  #bhGreetingsSpotlight
  .bh-greeting-shell{
    grid-template-columns:
      78px
      minmax(0,1fr);

    gap:12px;

    padding:14px;
  }

  #bhGreetingsSpotlight
  .bh-greeting-symbol{
    width:78px;
    height:98px;
  }

  #bhGreetingsSpotlight
  .bh-greeting-heading{
    font-size:21px;
  }

  #bhGreetingsSpotlight
  .bh-greeting-kicker{
    font-size:8px;
  }
}

/* ==========================================================
   BHAVYA_G3G_SPOTLIGHT_TOP_CLEARANCE
   Keep permanent greeting below fixed navbar + ticker.
   ========================================================== */

/*
 * Navbar occupies the top area and the scrolling announcement
 * strip is fixed immediately below it. Because Greetings now
 * appears before the old hero, it needs its own top clearance.
 */

#bhGreetingsSpotlight{
  margin-top:164px !important;
  margin-bottom:28px !important;
  position:relative;
  z-index:2;
}


/*
 * Ensure the greeting remains visually below the fixed
 * announcement strip instead of competing with its z-index.
 */
#bhGreetingsSpotlight .bh-greeting-shell{
  position:relative;
  z-index:1;
}


/* Tablet */
@media(max-width:1024px) and (min-width:769px){
  #bhGreetingsSpotlight{
    margin-top:158px !important;
  }
}


/*
 * Existing mobile navbar/ticker stack is shorter.
 */
@media(max-width:768px){
  #bhGreetingsSpotlight{
    margin-top:122px !important;
    margin-bottom:20px !important;
  }
}


/* Very small phones */
@media(max-width:480px){
  #bhGreetingsSpotlight{
    margin-top:118px !important;
  }
}
