@media(max-width:1050px){.nav-links{gap:17px}.nav-links a{font-size:12px}.hero-grid{gap:25px}.hero h1{font-size:56px}.hero-art{transform:scale(.9)}}
@media(max-width:850px){.navbar{height:72px}.menu-toggle{display:flex;margin-left:auto;width:42px;height:42px;flex-direction:column;justify-content:center;gap:5px;padding:10px}.menu-toggle span{height:2px;width:22px;background:#222;transition:.2s}.nav-links{position:absolute;top:72px;left:4%;right:4%;display:none;flex-direction:column;align-items:stretch;background:#fff;padding:20px;border-radius:18px;box-shadow:0 20px 45px rgba(40,25,60,.14)}.nav-links.open{display:flex}.nav-links a.active:after{display:none}.nav-actions .icon-button{display:none}.button-small{display:none}.hero{padding-top:125px}.hero-grid{grid-template-columns:1fr;text-align:center}.hero-copy>p{margin-left:auto;margin-right:auto}.hero-actions,.trust-row{justify-content:center}.hero-art{width:min(520px,100%);margin:auto}.stats{grid-template-columns:repeat(2,1fr);gap:20px}.stats div:nth-child(2){border:0}.category-grid{grid-template-columns:repeat(2,1fr)}.festival-grid{grid-template-columns:1fr}}
@media(max-width:560px){.container{width:90%}.brand{font-size:21px}.brand-mark{width:38px;height:38px}.hero{padding:112px 0 45px;min-height:auto}.hero h1{font-size:43px;letter-spacing:-2px}.hero-copy>p{font-size:15px}.hero-actions{flex-direction:column}.button{width:100%}.trust-row{margin-top:27px}.hero-art{height:390px;transform:scale(.78);transform-origin:top center;margin-bottom:-70px}.stats{padding:20px 10px}.stats strong{font-size:19px}.stats span{font-size:10px}.search-section,.section{padding:60px 0}.search-panel{padding:30px 18px}.search-panel h2,.section-heading h2{font-size:29px}.wish-search{padding:6px 6px 6px 13px}.wish-search button{padding:13px 15px}.category-grid{grid-template-columns:1fr 1fr;gap:12px}.category-card{padding:20px;min-height:205px}.category-icon{width:58px;height:58px;margin-bottom:20px}.category-card h3{font-size:17px}.section-heading{align-items:flex-end}.section-heading>a{font-size:12px}.footer-links{flex-wrap:wrap}}

/* Trending Cards Responsive */

@media (max-width: 900px) {

  .trending-grid {
    grid-template-columns: repeat(2, 1fr);
  }

}

/* FINAL TRENDING MOBILE DESIGN */
@media screen and (max-width: 560px) {

  .trending-grid {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 12px !important;
  }

  .trending-card {
    min-height: 260px !important;
    padding: 16px !important;
    border-radius: 22px !important;
    justify-content: flex-end !important;
  }

  .trending-badge {
    top: 14px !important;
    left: 14px !important;
    padding: 6px 10px !important;
    font-size: 10px !important;
  }

  .trending-art {
    position: absolute !important;
    inset: 0 !important;
    height: auto !important;
    margin: 0 !important;
  }

  .big-symbol {
    top: 62px !important;
    font-size: 52px !important;
  }

  .symbol-one {
    top: 55px !important;
    right: 18px !important;
    font-size: 18px !important;
  }

  .symbol-two {
    top: 125px !important;
    left: 18px !important;
    font-size: 12px !important;
  }

  .trending-content h3 {
    font-size: 18px !important;
    line-height: 1.15 !important;
    margin-bottom: 6px !important;
  }

  .trending-content p {
    font-size: 11px !important;
    line-height: 1.4 !important;
    margin-bottom: 12px !important;
  }

  .open-card {
    font-size: 11px !important;
  }
}
/* Upcoming Festivals Responsive */

@media (max-width: 900px) {
  .upcoming-festival-grid {
    grid-template-columns: 1fr;
  }

  .upcoming-heading h2 {
    font-size: 34px;
  }
}

@media (max-width: 560px) {
  .upcoming-festivals-section {
    padding: 60px 0;
  }

  .upcoming-heading {
    align-items: flex-start;
    flex-direction: column;
  }

  .upcoming-festival-card {
    min-height: 310px;
  }
}
/* Why Choose Responsive */

@media (max-width: 900px) {
  .why-choose-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 560px) {
  .why-choose-section {
    padding: 60px 0;
  }

  .why-heading h2 {
    font-size: 32px;
  }

  .why-choose-grid {
    grid-template-columns: 1fr;
  }
}
/* ===== FINAL MOBILE FIXES ===== */

@media (max-width: 560px) {

  /* 1. Hero heading */
  .hero h1 {
    font-size: 38px;
    line-height: 1.08;
    letter-spacing: -1.5px;
  }

  /* 2. Search box placeholder */
  .wish-search input {
    min-width: 0;
    width: 100%;
    font-size: 14px;
  }

  .wish-search button {
    flex-shrink: 0;
    padding: 13px 14px;
  }

  /* 3. Trending heading + View all */
  .trending-section .section-heading {
    align-items: center;
    gap: 15px;
  }

  .trending-section .section-heading h2 {
    font-size: 32px;
    line-height: 1.12;
  }

  .trending-section .section-heading > a {
    white-space: nowrap;
    flex-shrink: 0;
  }

}
@media (max-width: 560px) {
  .hero h1 {
    font-size: 38px;
    line-height: 1.08;
    letter-spacing: -1.5px;
  }
}
@media (max-width: 560px) {
  .wish-search input {
    min-width: 0;
    width: 100%;
    font-size: 14px;
  }

  .wish-search button {
    flex-shrink: 0;
    padding: 13px 14px;
  }
}
@media (max-width: 560px) {
  .wish-search {
    display: grid;
    grid-template-columns: 28px minmax(0, 1fr) auto;
    align-items: center;
    gap: 8px;
    padding: 8px 10px;
  }

  .wish-search svg {
    width: 24px;
    height: 24px;
  }

  .wish-search input {
    width: 100%;
    min-width: 0;
    font-size: 14px;
    padding: 0;
  }

  .wish-search button {
    width: auto;
    min-width: 0;
    padding: 13px 14px;
    font-size: 14px;
    flex-shrink: 0;
  }
}
/* Popular Categories - Mobile Fix */
@media (max-width: 560px) {
  .section-heading {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 15px;
  }

  .section-heading > div {
    flex: 1;
    min-width: 0;
  }

  .section-heading h2 {
    font-size: 34px;
    line-height: 1.1;
    margin: 0;
  }

  .section-heading > a {
    flex-shrink: 0;
    white-space: nowrap;
    font-size: 15px;
    margin-bottom: 5px;
  }
}
@media (max-width: 560px) {
  .section-heading {
    display: block;
  }

  .section-heading > a {
    display: inline-block;
    margin-top: 18px;
    font-size: 15px;
  }
}
@media (max-width: 560px) {
  .section-heading {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
  }

  .section-heading > a {
    margin-top: 15px !important;
    margin-bottom: 0 !important;
  }
}
@media screen and (max-width: 560px) {

  .trending-section .trending-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 12px !important;
  }

  .trending-section .trending-card {
    min-height: 205px !important;
    height: 205px !important;
    padding: 16px !important;
    justify-content: flex-end !important;
  }

  .trending-section .trending-badge {
    top: 12px !important;
    left: 12px !important;
  }

  .trending-section .big-symbol {
    top: 55px !important;
    font-size: 42px !important;
  }

  .trending-section .small-symbol {
    display: none !important;
  }

  .trending-section .trending-content h3 {
    font-size: 17px !important;
    margin: 0 0 5px !important;
  }

  .trending-section .trending-content p {
    display: none !important;
  }

  .trending-section .open-card {
    font-size: 11px !important;
  }
}
@media screen and (max-width: 560px) {

  .trending-section .trending-art {
    display: none !important;
  }

  .trending-section .trending-card {
    height: 205px !important;
    min-height: 205px !important;
  }

  .trending-section .trending-content h3 {
    font-size: 18px !important;
    line-height: 1.15 !important;
  }
}
/* Upcoming Festivals - Compact Mobile */
@media screen and (max-width: 560px) {

  .upcoming-festival-grid {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 12px !important;
  }

  .upcoming-festival-card {
    min-height: 260px !important;
    padding: 18px !important;
    border-radius: 22px !important;
  }
}
/* Upcoming Festivals - Final Mobile */
@media screen and (max-width: 560px) {

  .upcoming-festival-card {
    min-height: 300px !important;
    padding: 16px !important;
  }

  .festival-icon-box {
    width: 58px !important;
    height: 58px !important;
    font-size: 22px !important;
  }

  .festival-arrow {
    top: 18px !important;
    right: 16px !important;
  }

  .festival-status {
    font-size: 9px !important;
    letter-spacing: 1.5px !important;
  }

  .festival-card-content h3 {
    font-size: 21px !important;
    line-height: 1.15 !important;
    margin: 8px 0 !important;
  }

  .festival-card-content > p {
    font-size: 12px !important;
    line-height: 1.4 !important;
  }

  .festival-date {
    padding: 12px !important;
    gap: 8px !important;
  }

  .festival-date > span {
    font-size: 18px !important;
  }

  .festival-date strong {
    font-size: 12px !important;
  }

  .festival-date small {
    font-size: 10px !important;
    line-height: 1.3 !important;
  }
}
@media (max-width: 850px) {
  .nav-links.open {
    display: flex !important;
    gap: 0 !important;
    padding: 6px !important;
  }

  .nav-links a {
    padding: 8px 12px !important;
    margin: 0 !important;
    font-size: 14px !important;
    line-height: 1.2 !important;
  }
}
/* ===== PREMIUM MOBILE MENU ===== */
@media (max-width: 850px) {

  .nav-links {
    position: absolute !important;
    top: 82px !important;
    left: 5% !important;
    right: 5% !important;
    width: auto !important;

    padding: 14px !important;
    gap: 5px !important;

    background: rgba(255, 255, 255, 0.97) !important;
    border: 1px solid rgba(120, 80, 180, 0.10) !important;
    border-radius: 24px !important;

    box-shadow:
      0 25px 60px rgba(40, 25, 70, 0.15),
      0 5px 20px rgba(255, 60, 150, 0.06) !important;

    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);

    z-index: 9999 !important;
  }

  .nav-links a {
    display: flex !important;
    align-items: center !important;

    padding: 14px 18px !important;
    min-height: 50px !important;

    border-radius: 15px !important;
    font-size: 16px !important;
    font-weight: 600 !important;
    color: #55586b !important;

    transition: all 0.25s ease !important;
  }

  .nav-links a.active {
    color: #f54291 !important;
    background: linear-gradient(
      135deg,
      rgba(255, 65, 145, 0.10),
      rgba(145, 80, 255, 0.06)
    ) !important;
  }

  .nav-links a:active {
    transform: scale(0.98);
    background: #fff0f7 !important;
  }

  /* Hamburger animation */
  .menu-toggle span {
    transition:
      transform 0.3s ease,
      opacity 0.2s ease !important;
  }

  .menu-toggle.active span:nth-child(1) {
    transform: translateY(7px) rotate(45deg);
  }

  .menu-toggle.active span:nth-child(2) {
    opacity: 0;
  }

  .menu-toggle.active span:nth-child(3) {
    transform: translateY(-7px) rotate(-45deg);
  }
}
@media (max-width: 850px) {

  #menuToggle span {
    transition: transform .3s ease, opacity .2s ease !important;
  }

  #menuToggle.active span:nth-child(1) {
    transform: translateY(7px) rotate(45deg) !important;
  }

  #menuToggle.active span:nth-child(2) {
    opacity: 0 !important;
  }

  #menuToggle.active span:nth-child(3) {
    transform: translateY(-7px) rotate(-45deg) !important;
  }
}
/* FINAL COMPACT PREMIUM MOBILE MENU */
@media (max-width: 850px) {

  #navLinks {
    padding: 10px !important;
    gap: 2px !important;
  }

  #navLinks a {
    min-height: 0 !important;
    padding: 12px 18px !important;
    margin: 0 !important;
    line-height: 1.3 !important;
  }
}
/* ===== FORCE COMPACT MOBILE MENU ===== */
@media screen and (max-width: 850px) {

  #navLinks.nav-links {
    padding: 12px !important;
    gap: 0 !important;
    height: auto !important;
    min-height: 0 !important;
  }

  #navLinks.nav-links a {
    display: block !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 13px 18px !important;
    line-height: 1.2 !important;
  }
}
/* ===== FINAL PREMIUM MOBILE MENU ===== */
@media screen and (max-width: 850px) {

  #navLinks.nav-links {
    position: absolute !important;
    top: 72px !important;
    left: 5% !important;
    right: 5% !important;

    display: none !important;
    flex-direction: column !important;
    align-items: stretch !important;
    justify-content: flex-start !important;

    width: auto !important;
    height: auto !important;
    min-height: 0 !important;

    padding: 10px !important;
    gap: 2px !important;

    background: rgba(255,255,255,.98) !important;
    border: 1px solid rgba(120,80,180,.10) !important;
    border-radius: 22px !important;
    box-shadow: 0 18px 45px rgba(30,20,60,.12) !important;

    z-index: 9999 !important;
  }

  #navLinks.nav-links.open {
    display: flex !important;
  }

  #navLinks.nav-links a {
    display: block !important;
    flex: 0 0 auto !important;

    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;

    margin: 0 !important;
    padding: 13px 16px !important;

    font-size: 16px !important;
    line-height: 1.2 !important;
    border-radius: 12px !important;
  }

  #navLinks.nav-links a.active {
    background: #fff1f7 !important;
    color: #f04491 !important;
  }
}