.hurghada-page .sharm-opening {
  padding-top: 88px !important;
  padding-bottom: 18px !important;
}

.hurghada-page .sharm-opening-shell {
  gap: 0 !important;
}

.hurghada-page .sharm-intro-panel {
  max-width: 980px !important;
  margin-inline: auto !important;
  padding: 36px 42px 34px !important;
  border-radius: 10px !important;
}

.hurghada-page .sharm-intro-panel h1 {
  max-width: 850px;
  font-size: clamp(42px, 5vw, 70px) !important;
  line-height: 0.97 !important;
}

.hurghada-page .sharm-intro-panel > p {
  max-width: 760px;
  margin-top: 18px !important;
}

.hurghada-page .hero-actions {
  margin-top: 28px !important;
}

.hurghada-page:not(.hurghada-hub) #beach-trips {
  display: none !important;
}

.hurghada-page #hurghada-fixed-trips-grid {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  padding: 42px 20px 76px !important;
}

#hurghada-fixed-trips-grid .hfg-shell {
  max-width: 1220px !important;
}

#hurghada-fixed-trips-grid .hfg-heading {
  max-width: 820px !important;
  margin-bottom: 30px !important;
}

#hurghada-fixed-trips-grid .hfg-heading h2 {
  max-width: 760px !important;
  font-size: clamp(34px, 4vw, 50px) !important;
  line-height: 0.96 !important;
}

#hurghada-fixed-trips-grid .hfg-heading p {
  max-width: 780px !important;
  font-size: 16px !important;
  line-height: 1.65 !important;
}

#hurghada-fixed-trips-grid .hfg-grid {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 22px !important;
  align-items: stretch !important;
}

#hurghada-fixed-trips-grid .service-card {
  position: relative !important;
  display: flex !important;
  flex-direction: column !important;
  min-height: 440px !important;
  height: 100% !important;
  padding: 0 !important;
  overflow: hidden !important;
  border-radius: 18px !important;
  background: #ffffff !important;
  border: 1px solid rgba(8, 43, 63, 0.08) !important;
  box-shadow: 0 18px 44px rgba(8, 43, 63, 0.1) !important;
  cursor: pointer !important;
  transition:
    transform 220ms ease,
    box-shadow 220ms ease,
    border-color 220ms ease !important;
}

#hurghada-fixed-trips-grid .service-card:hover {
  transform: translateY(-5px) !important;
  border-color: rgba(232, 168, 86, 0.52) !important;
  box-shadow: 0 26px 62px rgba(8, 43, 63, 0.16) !important;
}

#hurghada-fixed-trips-grid .service-card-link {
  position: absolute !important;
  inset: 0 !important;
  z-index: 2 !important;
  display: block !important;
  text-decoration: none !important;
  cursor: pointer !important;
}

#hurghada-fixed-trips-grid .service-card-image {
  width: 100% !important;
  height: 176px !important;
  min-height: 176px !important;
  max-height: 176px !important;
  object-fit: cover !important;
  display: block !important;
  margin: 0 !important;
  border-radius: 0 !important;
  transition: transform 260ms ease !important;
}

#hurghada-fixed-trips-grid .service-card:hover .service-card-image {
  transform: scale(1.045) !important;
}

#hurghada-fixed-trips-grid .service-card > div {
  position: relative !important;
  z-index: 10 !important;
  display: flex !important;
  flex: 1 !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  padding: 22px 22px 20px !important;
  min-height: 250px !important;
  gap: 12px !important;
  pointer-events: auto !important;
}

#hurghada-fixed-trips-grid .card-kicker {
  margin: 0 !important;
  color: #607f8e !important;
  font-size: 12px !important;
  font-weight: 900 !important;
  letter-spacing: 0.16em !important;
  text-transform: uppercase !important;
}

#hurghada-fixed-trips-grid .service-card h3 {
  min-height: 48px !important;
  margin: 0 !important;
  color: #07182a !important;
  font-size: 18px !important;
  line-height: 1.2 !important;
  letter-spacing: -0.03em !important;
}

#hurghada-fixed-trips-grid .service-card p:not(.card-kicker):not(.service-card-price):not(.service-card-meta) {
  display: -webkit-box !important;
  min-height: 64px !important;
  max-height: 64px !important;
  margin: 6px 0 0 !important;
  overflow: hidden !important;
  color: #60798a !important;
  font-size: 14px !important;
  line-height: 1.55 !important;
  -webkit-line-clamp: 3 !important;
  -webkit-box-orient: vertical !important;
}

#hurghada-fixed-trips-grid .service-card-price,
#hurghada-fixed-trips-grid .service-card-meta {
  display: none !important;
}

#hurghada-fixed-trips-grid [data-trip-service-toggle] {
  position: relative !important;
  z-index: 80 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 152px !important;
  min-height: 42px !important;
  margin: auto auto 0 !important;
  padding: 10px 18px !important;
  border-radius: 999px !important;
  border: 1px solid #e8a856 !important;
  background: #ffffff !important;
  color: #07182a !important;
  font-size: 13px !important;
  font-weight: 900 !important;
  cursor: pointer !important;
  pointer-events: auto !important;
  box-shadow: 0 8px 18px rgba(232, 168, 86, 0.14) !important;
}

#hurghada-fixed-trips-grid [data-trip-service-toggle]:hover {
  background: #fff7eb !important;
}

@media (max-width: 1180px) {
  #hurghada-fixed-trips-grid .hfg-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 860px) {
  .hurghada-page .sharm-opening {
    padding-top: 82px !important;
    padding-bottom: 14px !important;
  }

  .hurghada-page .sharm-intro-panel {
    padding: 28px 24px !important;
  }

  #hurghada-fixed-trips-grid .hfg-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 560px) {
  .hurghada-page .sharm-intro-panel {
    padding: 24px 18px !important;
  }

  #hurghada-fixed-trips-grid {
    padding: 32px 14px 52px !important;
  }

  #hurghada-fixed-trips-grid .hfg-grid {
    grid-template-columns: 1fr !important;
  }

  #hurghada-fixed-trips-grid .service-card {
    min-height: auto !important;
  }

  #hurghada-fixed-trips-grid .service-card-image {
    height: 205px !important;
    min-height: 205px !important;
    max-height: 205px !important;
  }

  #hurghada-fixed-trips-grid .service-card > div {
    min-height: 220px !important;
  }
}


/* Fix Best fit by trip style cards on Hurghada Beach page */
.hurghada-page .sharm-start {
  padding: 72px 20px !important;
  background:
    radial-gradient(circle at top right, rgba(232, 168, 86, 0.16), transparent 28%),
    linear-gradient(180deg, #f4fbff 0%, #eef8fc 100%) !important;
}

.hurghada-page .sharm-start-shell {
  max-width: 1180px !important;
  margin-inline: auto !important;
}

.hurghada-page .sharm-start-heading {
  max-width: 760px !important;
  margin-bottom: 34px !important;
}

.hurghada-page .sharm-start-heading h2 {
  max-width: 560px !important;
  color: #07182a !important;
  font-size: clamp(38px, 5vw, 64px) !important;
  line-height: 0.95 !important;
  letter-spacing: -0.055em !important;
}

.hurghada-page .sharm-start-heading p {
  max-width: 620px !important;
  color: #587384 !important;
  font-size: 16px !important;
  line-height: 1.65 !important;
}

.hurghada-page .sharm-start-grid {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 22px !important;
  align-items: stretch !important;
}

.hurghada-page .sharm-start-card {
  display: flex !important;
  flex-direction: column !important;
  min-height: 420px !important;
  overflow: hidden !important;
  border-radius: 20px !important;
  background: #ffffff !important;
  border: 1px solid rgba(8, 43, 63, 0.08) !important;
  box-shadow: 0 18px 44px rgba(8, 43, 63, 0.1) !important;
  color: #07182a !important;
  text-decoration: none !important;
}

.hurghada-page .sharm-start-media {
  display: block !important;
  width: 100% !important;
  height: 180px !important;
  min-height: 180px !important;
  overflow: hidden !important;
  border-radius: 0 !important;
  margin: 0 !important;
}

.hurghada-page .sharm-start-media img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}

.hurghada-page .sharm-start-card-body {
  display: flex !important;
  flex: 1 !important;
  flex-direction: column !important;
  padding: 20px !important;
  gap: 12px !important;
}

.hurghada-page .sharm-start-card-kicker {
  color: #607f8e !important;
  font-size: 12px !important;
  font-weight: 900 !important;
  letter-spacing: 0.16em !important;
  text-transform: uppercase !important;
}

.hurghada-page .sharm-start-card h3 {
  margin: 0 !important;
  color: #07182a !important;
  font-size: 19px !important;
  line-height: 1.2 !important;
  letter-spacing: -0.03em !important;
}

.hurghada-page .sharm-start-card p {
  margin: 0 !important;
  color: #60798a !important;
  font-size: 14px !important;
  line-height: 1.55 !important;
}

.hurghada-page .sharm-start-link {
  margin-top: auto !important;
  color: #0a789f !important;
  font-size: 13px !important;
  font-weight: 900 !important;
}

@media (max-width: 980px) {
  .hurghada-page .sharm-start-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 560px) {
  .hurghada-page .sharm-start {
    padding: 48px 14px !important;
  }

  .hurghada-page .sharm-start-grid {
    grid-template-columns: 1fr !important;
  }

  .hurghada-page .sharm-start-card {
    min-height: auto !important;
  }

  .hurghada-page .sharm-start-media {
    height: 205px !important;
    min-height: 205px !important;
  }
}

#hurghada-fixed-trips-grid [data-trip-service-toggle],
.trip-detail-page [data-trip-service-toggle] {
  position: relative !important;
  z-index: 50 !important;
  pointer-events: auto !important;
}

#hurghada-fixed-trips-grid .service-card,
#hurghada-fixed-trips-grid [data-trip-service-toggle] {
  transition:
    transform 220ms ease,
    box-shadow 220ms ease,
    background-color 220ms ease,
    border-color 220ms ease,
    color 220ms ease !important;
}

#hurghada-fixed-trips-grid .service-card:hover {
  transform: translateY(-2px) !important;
}

#hurghada-fixed-trips-grid [data-trip-service-toggle]:hover {
  transform: translateY(-1px) !important;
}

/* Fix Best fit by trip style section */
.hurghada-page .sharm-start {
  padding: 72px 20px !important;
  background:
    radial-gradient(circle at top right, rgba(232, 168, 86, 0.14), transparent 30%),
    linear-gradient(180deg, #f4fbff 0%, #eef8fc 100%) !important;
}

.hurghada-page .sharm-start-shell {
  max-width: 1180px !important;
  margin-inline: auto !important;
}

.hurghada-page .sharm-start-grid {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 22px !important;
  align-items: stretch !important;
}

.hurghada-page .sharm-start-card {
  display: flex !important;
  flex-direction: column !important;
  overflow: hidden !important;
  min-height: 430px !important;
  border-radius: 22px !important;
  background: #ffffff !important;
  border: 1px solid rgba(8, 43, 63, 0.1) !important;
  box-shadow: 0 18px 44px rgba(8, 43, 63, 0.1) !important;
  color: #07182a !important;
  text-decoration: none !important;
  transition:
    transform 220ms ease,
    box-shadow 220ms ease,
    border-color 220ms ease !important;
}

.hurghada-page .sharm-start-card:hover {
  transform: translateY(-3px) !important;
  border-color: rgba(232, 168, 86, 0.5) !important;
  box-shadow: 0 26px 58px rgba(8, 43, 63, 0.15) !important;
}

.hurghada-page .sharm-start-media {
  display: block !important;
  width: 100% !important;
  height: 180px !important;
  min-height: 180px !important;
  margin: 0 !important;
  overflow: hidden !important;
  border-radius: 0 !important;
}

.hurghada-page .sharm-start-media img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}

.hurghada-page .sharm-start-card-body {
  display: flex !important;
  flex: 1 !important;
  flex-direction: column !important;
  padding: 22px !important;
  gap: 12px !important;
}

.hurghada-page .sharm-start-card-kicker {
  display: block !important;
  color: #607f8e !important;
  font-size: 11px !important;
  font-weight: 900 !important;
  letter-spacing: 0.14em !important;
  text-transform: uppercase !important;
}

.hurghada-page .sharm-start-card h3 {
  margin: 0 !important;
  color: #07182a !important;
  font-size: 20px !important;
  line-height: 1.18 !important;
  letter-spacing: -0.035em !important;
}

.hurghada-page .sharm-start-card p {
  margin: 0 !important;
  color: #60798a !important;
  font-size: 14px !important;
  line-height: 1.55 !important;
}

.hurghada-page .sharm-start-link {
  display: inline-flex !important;
  width: fit-content !important;
  margin-top: auto !important;
  color: #0a789f !important;
  font-size: 13px !important;
  font-weight: 900 !important;
}

@media (max-width: 980px) {
  .hurghada-page .sharm-start-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 560px) {
  .hurghada-page .sharm-start {
    padding: 48px 14px !important;
  }

  .hurghada-page .sharm-start-grid {
    grid-template-columns: 1fr !important;
  }

  .hurghada-page .sharm-start-card {
    min-height: auto !important;
  }

  .hurghada-page .sharm-start-media {
    height: 210px !important;
    min-height: 210px !important;
  }
}

/* Clean FAQ section on Hurghada Beach page */
.hurghada-page .faq {
  padding: 64px 20px 76px !important;
  background:
    radial-gradient(circle at bottom right, rgba(232, 168, 86, 0.12), transparent 30%),
    #ffffff !important;
}

.hurghada-page .faq-shell {
  max-width: 860px !important;
  margin-inline: auto !important;
}

.hurghada-page .faq-heading {
  margin-bottom: 28px !important;
}

.hurghada-page .faq-heading h2 {
  max-width: 680px !important;
  margin: 0 !important;
  color: #07182a !important;
  font-size: clamp(36px, 4.6vw, 58px) !important;
  line-height: 0.98 !important;
  letter-spacing: -0.055em !important;
}

.hurghada-page .faq-list {
  display: grid !important;
  gap: 14px !important;
}

.hurghada-page .faq-list details {
  border-radius: 18px !important;
  background: #ffffff !important;
  border: 1px solid rgba(8, 43, 63, 0.12) !important;
  box-shadow: 0 14px 34px rgba(8, 43, 63, 0.07) !important;
}

.hurghada-page .faq-list summary {
  padding: 18px 20px !important;
  color: #07182a !important;
  font-weight: 900 !important;
  cursor: pointer !important;
}

.hurghada-page .faq-list details p {
  padding: 0 20px 20px !important;
  margin: 0 !important;
  color: #587384 !important;
  line-height: 1.65 !important;
}

@media (max-width: 560px) {
  .hurghada-page .faq {
    padding: 48px 14px 60px !important;
  }
}

/* Clean final CTA and footer spacing on Hurghada Beach page */
.hurghada-page .final-cta {
  padding: 56px 20px 64px !important;
  background:
    radial-gradient(circle at bottom right, rgba(0, 166, 207, 0.1), transparent 32%),
    linear-gradient(180deg, #ffffff 0%, #eef8fc 100%) !important;
}

.hurghada-page .cta-shell {
  max-width: 820px !important;
  margin-inline: auto !important;
}

.hurghada-page .cta-card {
  padding: 42px 46px !important;
  border-radius: 28px !important;
  text-align: center !important;
  background: rgba(255, 255, 255, 0.92) !important;
  border: 1px solid rgba(8, 43, 63, 0.1) !important;
  box-shadow: 0 20px 54px rgba(8, 43, 63, 0.12) !important;
}

.hurghada-page .cta-copy h2 {
  max-width: 660px !important;
  margin: 0 auto !important;
  font-size: clamp(34px, 4.2vw, 56px) !important;
  line-height: 0.98 !important;
  letter-spacing: -0.055em !important;
}

.hurghada-page .final-actions {
  justify-content: center !important;
  margin-top: 24px !important;
}

.hurghada-page .site-footer {
  margin-top: 0 !important;
}

@media (max-width: 560px) {
  .hurghada-page .final-cta {
    padding: 44px 14px 52px !important;
  }

  .hurghada-page .cta-card {
    padding: 32px 22px !important;
  }

  .hurghada-page .final-actions {
    flex-direction: column !important;
  }
}