<!DOCTYPE html>

<html lang="en">

<head>

<meta charset="UTF-8"/>

<meta name="viewport" content="width=device-width, initial-scale=1.0"/>

<title>IHRAMHUB — Sacred Journeys, Perfected</title>

<link rel="preconnect" href="https://fonts.googleapis.com"/>

<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin/>

<link href="https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300;0,400;0,500;0,600;1,300;1,400&family=DM+Sans:ital,opsz,wght@0,9..40,300;0,9..40,400;0,9..40,500;1,9..40,300&family=Noto+Naskh+Arabic:wght@400;500&display=swap" rel="stylesheet"/>

<style>

/* ===== CSS VARIABLES ===== */

:root {

  --white: #FFFFFF;

  --black: #111111;

  --gold: #C8A96B;

  --gold-light: #E8D5A3;

  --gold-dark: #A8893B;

  --base: #F0EDE8;

  --base-dark: #E4E0D8;

  --base-deeper: #D8D2C8;

  --shadow-light: rgba(255,255,255,0.85);

  --shadow-dark: rgba(180,168,148,0.45);

  --text-primary: #1A1714;

  --text-secondary: #6B6358;

  --text-muted: #9B9188;

  --neu-shadow: 6px 6px 14px rgba(180,168,148,0.4), -4px -4px 10px rgba(255,255,255,0.9);

  --neu-shadow-sm: 3px 3px 8px rgba(180,168,148,0.35), -2px -2px 6px rgba(255,255,255,0.9);

  --neu-inset: inset 4px 4px 10px rgba(180,168,148,0.4), inset -4px -4px 10px rgba(255,255,255,0.9);

  --neu-inset-sm: inset 2px 2px 6px rgba(180,168,148,0.35), inset -2px -2px 6px rgba(255,255,255,0.9);

  --radius: 20px;

  --radius-sm: 12px;

  --radius-xs: 8px;

  --transition: all 0.35s cubic-bezier(0.4, 0, 0.2, 1);

  --font-display: 'Cormorant Garamond', serif;

  --font-body: 'DM Sans', sans-serif;

  --font-arabic: 'Noto Naskh Arabic', serif;

}


/* ===== RESET & BASE ===== */

*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }

html { scroll-behavior: smooth; font-size: 16px; }

body {

  font-family: var(--font-body);

  background: var(--base);

  color: var(--text-primary);

  min-height: 100vh;

  overflow-x: hidden;

}

img { max-width: 100%; display: block; }

button { cursor: pointer; border: none; outline: none; font-family: var(--font-body); }

input, select, textarea { font-family: var(--font-body); outline: none; border: none; }

a { text-decoration: none; color: inherit; }

ul { list-style: none; }


/* ===== SCROLLBAR ===== */

::-webkit-scrollbar { width: 6px; }

::-webkit-scrollbar-track { background: var(--base); }

::-webkit-scrollbar-thumb { background: var(--gold); border-radius: 3px; }


/* ===== PAGE SYSTEM ===== */

.page { display: none; min-height: 100vh; }

.page.active { display: block; animation: pageIn 0.5s cubic-bezier(0.4,0,0.2,1); }

@keyframes pageIn { from { opacity:0; transform: translateY(12px); } to { opacity:1; transform: translateY(0); } }


/* ===== NAVBAR ===== */

.navbar {

  position: fixed; top: 0; left: 0; right: 0; z-index: 1000;

  background: rgba(240,237,232,0.92);

  backdrop-filter: blur(20px);

  border-bottom: 1px solid rgba(200,169,107,0.15);

  padding: 0 clamp(16px,4vw,60px);

  height: 70px;

  display: flex; align-items: center; justify-content: space-between;

  box-shadow: 0 2px 30px rgba(180,168,148,0.2);

}

.nav-logo {

  display: flex; align-items: center; gap: 10px; cursor: pointer;

}

.nav-logo-mark {

  width: 38px; height: 38px;

  background: linear-gradient(135deg, var(--gold), var(--gold-dark));

  border-radius: 10px;

  display: flex; align-items: center; justify-content: center;

  font-family: var(--font-arabic); color: #fff; font-size: 18px;

  box-shadow: 2px 2px 8px rgba(168,137,59,0.4);

}

.nav-logo-text { font-family: var(--font-display); font-size: 1.4rem; font-weight: 600; letter-spacing: 0.03em; }

.nav-logo-text span { color: var(--gold); }

.nav-links { display: flex; align-items: center; gap: 28px; }

.nav-link {

  font-size: 0.875rem; font-weight: 400; color: var(--text-secondary);

  transition: var(--transition); cursor: pointer; letter-spacing: 0.02em;

}

.nav-link:hover { color: var(--text-primary); }

.nav-actions { display: flex; align-items: center; gap: 12px; }

.btn-nav-login {

  padding: 8px 20px; border-radius: 50px;

  background: transparent;

  box-shadow: var(--neu-shadow-sm);

  font-size: 0.875rem; font-weight: 500; color: var(--text-primary);

  transition: var(--transition);

}

.btn-nav-login:hover { box-shadow: var(--neu-inset-sm); }

.btn-nav-cta {

  padding: 8px 22px; border-radius: 50px;

  background: linear-gradient(135deg, var(--gold), var(--gold-dark));

  color: white; font-size: 0.875rem; font-weight: 500;

  box-shadow: 3px 3px 10px rgba(168,137,59,0.4);

  transition: var(--transition); letter-spacing: 0.03em;

}

.btn-nav-cta:hover { transform: translateY(-1px); box-shadow: 4px 5px 14px rgba(168,137,59,0.5); }

.nav-avatar {

  width: 38px; height: 38px; border-radius: 50%;

  background: linear-gradient(135deg, var(--gold-light), var(--gold));

  display: flex; align-items: center; justify-content: center;

  font-size: 0.8rem; font-weight: 600; color: var(--black);

  box-shadow: var(--neu-shadow-sm); cursor: pointer; display:none;

}

.hamburger { display: none; flex-direction: column; gap: 5px; cursor: pointer; padding: 4px; }

.hamburger span { width: 22px; height: 2px; background: var(--text-primary); border-radius: 2px; transition: var(--transition); }


/* ===== NEUMORPHIC COMPONENTS ===== */

.neu-card {

  background: var(--base);

  border-radius: var(--radius);

  box-shadow: var(--neu-shadow);

  padding: 28px;

  transition: var(--transition);

}

.neu-card:hover { box-shadow: 8px 8px 20px rgba(180,168,148,0.45), -4px -4px 12px rgba(255,255,255,0.95); }

.neu-card-sm {

  background: var(--base);

  border-radius: var(--radius-sm);

  box-shadow: var(--neu-shadow-sm);

  padding: 20px;

  transition: var(--transition);

}

.neu-input {

  background: var(--base);

  box-shadow: var(--neu-inset);

  border-radius: var(--radius-sm);

  padding: 14px 18px;

  font-size: 0.9rem; color: var(--text-primary);

  width: 100%; transition: var(--transition);

}

.neu-input::placeholder { color: var(--text-muted); }

.neu-input:focus { box-shadow: var(--neu-inset-sm), 0 0 0 2px rgba(200,169,107,0.25); }

.neu-select {

  background: var(--base);

  box-shadow: var(--neu-inset);

  border-radius: var(--radius-sm);

  padding: 14px 18px;

  font-size: 0.9rem; color: var(--text-primary);

  width: 100%; appearance: none;

  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%23C8A96B' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");

  background-repeat: no-repeat;

  background-position: right 16px center;

  cursor: pointer;

}

.btn-primary {

  background: linear-gradient(135deg, var(--gold), var(--gold-dark));

  color: white; border-radius: 50px;

  padding: 14px 32px; font-size: 0.95rem; font-weight: 500;

  box-shadow: 4px 4px 14px rgba(168,137,59,0.45);

  transition: var(--transition); letter-spacing: 0.04em;

  display: inline-flex; align-items: center; gap: 8px;

}

.btn-primary:hover { transform: translateY(-2px); box-shadow: 5px 6px 18px rgba(168,137,59,0.55); }

.btn-secondary {

  background: var(--base);

  color: var(--text-primary); border-radius: 50px;

  padding: 13px 28px; font-size: 0.9rem; font-weight: 500;

  box-shadow: var(--neu-shadow-sm);

  transition: var(--transition);

  display: inline-flex; align-items: center; gap: 8px;

}

.btn-secondary:hover { box-shadow: var(--neu-inset-sm); }

.btn-ghost {

  background: transparent; color: var(--gold);

  font-size: 0.875rem; font-weight: 500;

  padding: 8px 16px; border-radius: 50px;

  transition: var(--transition);

  display: inline-flex; align-items: center; gap: 6px;

}

.btn-ghost:hover { background: rgba(200,169,107,0.1); }


/* ===== GOLD BADGE ===== */

.gold-badge {

  display: inline-flex; align-items: center; gap: 5px;

  background: linear-gradient(135deg, rgba(200,169,107,0.15), rgba(200,169,107,0.08));

  border: 1px solid rgba(200,169,107,0.3);

  border-radius: 50px; padding: 5px 14px;

  font-size: 0.78rem; font-weight: 500; color: var(--gold-dark);

  letter-spacing: 0.06em; text-transform: uppercase;

}


/* ===== STAR RATING ===== */

.stars { color: var(--gold); letter-spacing: 2px; font-size: 0.85rem; }


/* ===== SECTION LAYOUT ===== */

.section { padding: 80px clamp(16px,5vw,80px); }

.section-header { text-align: center; margin-bottom: 56px; }

.section-title { font-family: var(--font-display); font-size: clamp(2rem, 4vw, 3.2rem); font-weight: 500; line-height: 1.2; margin-bottom: 14px; }

.section-sub { color: var(--text-secondary); font-size: 1rem; max-width: 520px; margin: 0 auto; line-height: 1.7; }


/* ===== MODAL ===== */

.modal-overlay {

  position: fixed; inset: 0; z-index: 2000;

  background: rgba(26,23,20,0.6);

  backdrop-filter: blur(8px);

  display: none; align-items: center; justify-content: center;

  padding: 20px;

}

.modal-overlay.open { display: flex; animation: fadeIn 0.3s ease; }

@keyframes fadeIn { from { opacity:0; } to { opacity:1; } }

.modal-box {

  background: var(--base);

  border-radius: 28px;

  box-shadow: 20px 20px 50px rgba(100,90,75,0.3), -8px -8px 20px rgba(255,255,255,0.8);

  width: 100%; max-width: 460px;

  padding: 40px;

  animation: slideUp 0.4s cubic-bezier(0.4,0,0.2,1);

  position: relative;

}

@keyframes slideUp { from { opacity:0; transform: translateY(20px); } to { opacity:1; transform: translateY(0); } }

.modal-close {

  position: absolute; top: 18px; right: 20px;

  width: 32px; height: 32px; border-radius: 50%;

  background: var(--base); box-shadow: var(--neu-shadow-sm);

  display: flex; align-items: center; justify-content: center;

  cursor: pointer; font-size: 1rem; color: var(--text-secondary);

  transition: var(--transition);

}

.modal-close:hover { box-shadow: var(--neu-inset-sm); }


/* ===== TOAST ===== */

.toast {

  position: fixed; bottom: 30px; right: 30px; z-index: 3000;

  background: var(--black); color: white;

  padding: 14px 22px; border-radius: var(--radius-sm);

  font-size: 0.875rem; font-weight: 400;

  box-shadow: 0 8px 30px rgba(0,0,0,0.25);

  display: flex; align-items: center; gap: 10px;

  transform: translateX(120%); transition: transform 0.4s cubic-bezier(0.4,0,0.2,1);

}

.toast.show { transform: translateX(0); }

.toast-icon { color: var(--gold); font-size: 1rem; }


/* ===== PROGRESS BAR ===== */

.progress-bar { height: 4px; background: var(--base-dark); border-radius: 2px; overflow: hidden; }

.progress-fill { height: 100%; background: linear-gradient(90deg, var(--gold), var(--gold-light)); border-radius: 2px; transition: width 0.8s ease; }


/* ===== TRUST SCORE ===== */

.trust-score {

  display: flex; align-items: center; gap: 8px;

}

.trust-ring {

  width: 44px; height: 44px; border-radius: 50%;

  background: conic-gradient(var(--gold) calc(var(--score)*3.6deg), var(--base-dark) 0deg);

  display: flex; align-items: center; justify-content: center;

  position: relative;

}

.trust-ring::before {

  content: ''; position: absolute; inset: 5px;

  background: var(--base); border-radius: 50%;

}

.trust-ring-val { position: relative; z-index: 1; font-size: 0.65rem; font-weight: 600; color: var(--gold-dark); }


/* ===== TAG ===== */

.tag {

  display: inline-block; padding: 4px 12px; border-radius: 50px;

  font-size: 0.75rem; font-weight: 500; letter-spacing: 0.03em;

}

.tag-gold { background: rgba(200,169,107,0.15); color: var(--gold-dark); border: 1px solid rgba(200,169,107,0.25); }

.tag-green { background: rgba(72,168,112,0.12); color: #2D7A52; border: 1px solid rgba(72,168,112,0.2); }

.tag-blue { background: rgba(72,120,200,0.1); color: #2D5A9A; border: 1px solid rgba(72,120,200,0.2); }

.tag-red { background: rgba(220,80,80,0.1); color: #A03030; border: 1px solid rgba(220,80,80,0.2); }


/* ===== DIVIDER ===== */

.divider { height: 1px; background: linear-gradient(90deg, transparent, var(--base-dark), transparent); margin: 24px 0; }

.divider-gold { height: 1px; background: linear-gradient(90deg, transparent, rgba(200,169,107,0.4), transparent); margin: 24px 0; }


/* ===== TOOLTIP ===== */

.tooltip-wrap { position: relative; display: inline-flex; }

.tooltip-wrap .tooltip-text {

  position: absolute; bottom: calc(100% + 8px); left: 50%; transform: translateX(-50%);

  background: var(--black); color: white; padding: 6px 12px; border-radius: 8px;

  font-size: 0.75rem; white-space: nowrap; pointer-events: none;

  opacity: 0; transition: opacity 0.2s;

}

.tooltip-wrap:hover .tooltip-text { opacity: 1; }


/* ===== SKELETON ===== */

.skeleton { background: linear-gradient(90deg, var(--base-dark) 25%, var(--base-deeper) 50%, var(--base-dark) 75%); background-size: 200% 100%; animation: shimmer 1.5s infinite; border-radius: 8px; }

@keyframes shimmer { 0%{ background-position: 200% 0; } 100%{ background-position: -200% 0; } }


/* ======================= */

/* ===== PAGE: HOME ===== */

/* ======================= */

#page-home { padding-top: 70px; }


/* Hero */

.hero {

  min-height: 100vh;

  background: var(--base);

  display: flex; flex-direction: column; align-items: center; justify-content: center;

  text-align: center; padding: clamp(60px,8vh,100px) clamp(16px,5vw,60px) 60px;

  position: relative; overflow: hidden;

}

.hero-bg-pattern {

  position: absolute; inset: 0; pointer-events: none; opacity: 0.04;

  background-image: repeating-linear-gradient(45deg, var(--gold) 0, var(--gold) 1px, transparent 0, transparent 50%);

  background-size: 30px 30px;

}

.hero-arabic {

  font-family: var(--font-arabic); font-size: clamp(1rem,2.5vw,1.4rem);

  color: var(--gold); margin-bottom: 20px; letter-spacing: 0.05em;

  opacity: 0.8;

}

.hero-title {

  font-family: var(--font-display);

  font-size: clamp(2.8rem,7vw,6rem);

  font-weight: 400; line-height: 1.05; letter-spacing: -0.01em;

  margin-bottom: 22px;

}

.hero-title .accent { color: var(--gold); font-style: italic; }

.hero-sub {

  font-size: clamp(0.95rem,1.8vw,1.1rem); color: var(--text-secondary);

  max-width: 540px; margin: 0 auto 48px; line-height: 1.75;

}

.hero-stats {

  display: flex; gap: 40px; justify-content: center; margin-bottom: 56px;

  flex-wrap: wrap;

}

.hero-stat { text-align: center; }

.hero-stat-val { font-family: var(--font-display); font-size: 1.8rem; font-weight: 600; color: var(--text-primary); }

.hero-stat-lbl { font-size: 0.78rem; color: var(--text-muted); letter-spacing: 0.06em; text-transform: uppercase; margin-top: 2px; }


/* Search Box */

.search-box {

  background: var(--base);

  border-radius: 28px;

  box-shadow: var(--neu-shadow);

  padding: clamp(22px,3vw,36px);

  width: 100%; max-width: 880px;

  margin: 0 auto;

}

.search-tabs { display: flex; gap: 8px; margin-bottom: 24px; }

.search-tab {

  padding: 9px 22px; border-radius: 50px;

  font-size: 0.875rem; font-weight: 500; cursor: pointer;

  transition: var(--transition); color: var(--text-secondary);

  background: transparent;

}

.search-tab.active {

  background: var(--base);

  box-shadow: var(--neu-shadow-sm);

  color: var(--text-primary);

}

.search-fields { display: grid; grid-template-columns: 1fr 1fr 1fr auto; gap: 14px; align-items: end; }

.search-field label { display: block; font-size: 0.75rem; font-weight: 500; color: var(--text-muted); text-transform: uppercase; letter-spacing: 0.07em; margin-bottom: 8px; }

.search-btn {

  background: linear-gradient(135deg, var(--gold), var(--gold-dark));

  color: white; border-radius: var(--radius-sm);

  padding: 14px 28px; font-size: 0.95rem; font-weight: 500;

  box-shadow: 4px 4px 14px rgba(168,137,59,0.4);

  transition: var(--transition); white-space: nowrap;

  display: flex; align-items: center; gap: 8px;

}

.search-btn:hover { transform: translateY(-2px); box-shadow: 5px 6px 18px rgba(168,137,59,0.55); }

.search-quick-filters { display: flex; gap: 10px; margin-top: 18px; flex-wrap: wrap; }

.qf-chip {

  padding: 6px 16px; border-radius: 50px; font-size: 0.8rem;

  background: var(--base); box-shadow: var(--neu-shadow-sm);

  cursor: pointer; transition: var(--transition); color: var(--text-secondary);

}

.qf-chip:hover, .qf-chip.active { box-shadow: var(--neu-inset-sm); color: var(--gold-dark); }


/* Featured Packages */

.packages-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(300px,1fr)); gap: 24px; }

.pkg-card {

  background: var(--base);

  border-radius: var(--radius);

  box-shadow: var(--neu-shadow);

  overflow: hidden; cursor: pointer;

  transition: var(--transition);

  position: relative;

}

.pkg-card:hover { transform: translateY(-4px); box-shadow: 10px 10px 28px rgba(180,168,148,0.5), -4px -4px 12px rgba(255,255,255,0.95); }

.pkg-img {

  height: 200px;

  background: linear-gradient(135deg, var(--base-deeper), var(--base-dark));

  position: relative; overflow: hidden;

  display: flex; align-items: center; justify-content: center;

}

.pkg-img-placeholder {

  font-family: var(--font-arabic); font-size: 3rem; color: rgba(200,169,107,0.3);

}

.pkg-img-overlay {

  position: absolute; inset: 0;

  background: linear-gradient(to top, rgba(26,23,20,0.5), transparent);

}

.pkg-badges { position: absolute; top: 12px; left: 12px; display: flex; gap: 6px; flex-wrap: wrap; }

.pkg-fav {

  position: absolute; top: 12px; right: 12px;

  width: 34px; height: 34px; border-radius: 50%;

  background: rgba(240,237,232,0.9); backdrop-filter: blur(10px);

  display: flex; align-items: center; justify-content: center;

  font-size: 1rem; cursor: pointer; transition: var(--transition);

  box-shadow: 2px 2px 8px rgba(0,0,0,0.1);

}

.pkg-fav:hover { transform: scale(1.1); }

.pkg-fav.saved { color: #E04040; }

.pkg-body { padding: 20px; }

.pkg-agency { font-size: 0.75rem; color: var(--text-muted); text-transform: uppercase; letter-spacing: 0.06em; margin-bottom: 6px; }

.pkg-name { font-family: var(--font-display); font-size: 1.2rem; font-weight: 500; margin-bottom: 8px; line-height: 1.3; }

.pkg-meta { display: flex; gap: 16px; font-size: 0.8rem; color: var(--text-secondary); margin-bottom: 14px; flex-wrap: wrap; }

.pkg-meta-item { display: flex; align-items: center; gap: 4px; }

.pkg-footer { display: flex; align-items: center; justify-content: space-between; padding-top: 14px; border-top: 1px solid rgba(200,169,107,0.12); }

.pkg-price-lbl { font-size: 0.72rem; color: var(--text-muted); text-transform: uppercase; letter-spacing: 0.05em; }

.pkg-price { font-family: var(--font-display); font-size: 1.5rem; font-weight: 600; color: var(--text-primary); }

.pkg-price span { font-size: 0.85rem; font-weight: 400; color: var(--text-muted); }

.pkg-actions { display: flex; gap: 8px; }

.pkg-btn { padding: 8px 18px; border-radius: 50px; font-size: 0.8rem; font-weight: 500; }


/* How It Works */

.hiw-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(200px,1fr)); gap: 28px; counter-reset: hiw; }

.hiw-card { text-align: center; padding: 36px 24px; position: relative; }

.hiw-num {

  width: 52px; height: 52px; border-radius: 50%;

  background: var(--base); box-shadow: var(--neu-shadow-sm);

  display: flex; align-items: center; justify-content: center;

  margin: 0 auto 20px;

  font-family: var(--font-display); font-size: 1.4rem; font-weight: 600; color: var(--gold);

}

.hiw-icon { font-size: 1.8rem; margin-bottom: 14px; }

.hiw-title { font-family: var(--font-display); font-size: 1.2rem; font-weight: 500; margin-bottom: 10px; }

.hiw-desc { font-size: 0.875rem; color: var(--text-secondary); line-height: 1.7; }


/* Testimonials */

.testimonials-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(300px,1fr)); gap: 24px; }

.testimonial-card { padding: 28px; }

.testi-quote { font-size: 2.5rem; color: var(--gold-light); font-family: var(--font-display); line-height: 1; margin-bottom: 12px; }

.testi-text { font-size: 0.9rem; color: var(--text-secondary); line-height: 1.75; margin-bottom: 20px; font-style: italic; }

.testi-author { display: flex; align-items: center; gap: 12px; }

.testi-avatar { width: 42px; height: 42px; border-radius: 50%; background: linear-gradient(135deg, var(--gold-light), var(--gold)); display: flex; align-items: center; justify-content: center; font-weight: 600; font-size: 0.9rem; color: var(--black); }

.testi-name { font-weight: 500; font-size: 0.875rem; }

.testi-trip { font-size: 0.78rem; color: var(--text-muted); }


/* Footer */

.footer {

  background: var(--black); color: rgba(255,255,255,0.75);

  padding: clamp(50px,6vw,80px) clamp(16px,5vw,80px) 30px;

}

.footer-grid { display: grid; grid-template-columns: 2fr 1fr 1fr 1fr; gap: 40px; margin-bottom: 50px; }

.footer-brand .nav-logo-mark { background: linear-gradient(135deg, var(--gold), var(--gold-dark)); }

.footer-brand .nav-logo-text { color: white; }

.footer-brand .nav-logo-text span { color: var(--gold); }

.footer-tagline { font-size: 0.875rem; color: rgba(255,255,255,0.5); margin-top: 14px; line-height: 1.7; }

.footer-col-title { font-size: 0.75rem; text-transform: uppercase; letter-spacing: 0.1em; color: var(--gold); margin-bottom: 18px; font-weight: 500; }

.footer-col li { margin-bottom: 10px; font-size: 0.875rem; cursor: pointer; transition: var(--transition); }

.footer-col li:hover { color: white; }

.footer-bottom { border-top: 1px solid rgba(255,255,255,0.08); padding-top: 24px; display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 12px; font-size: 0.8rem; color: rgba(255,255,255,0.4); }


/* ================================= */

/* ===== PAGE: SEARCH RESULTS ===== */

/* ================================= */

#page-results { padding-top: 70px; }

.results-header { padding: 30px clamp(16px,5vw,60px); border-bottom: 1px solid rgba(200,169,107,0.1); }

.results-search-bar {

  background: var(--base);

  border-radius: var(--radius);

  box-shadow: var(--neu-shadow-sm);

  padding: 16px 22px;

  display: flex; align-items: center; gap: 16px; flex-wrap: wrap;

}

.results-search-bar .rsc-item { display: flex; align-items: center; gap: 8px; }

.results-search-bar .rsc-sep { color: var(--base-deeper); }

.rsc-label { font-size: 0.75rem; color: var(--text-muted); text-transform: uppercase; letter-spacing: 0.06em; }

.rsc-val { font-size: 0.9rem; font-weight: 500; }

.results-body { display: flex; padding: 28px clamp(16px,5vw,60px); gap: 28px; }


/* Filters sidebar */

.filters-sidebar { width: 280px; flex-shrink: 0; }

.filters-sticky { position: sticky; top: 90px; }

.filter-section { margin-bottom: 20px; }

.filter-section-title { font-size: 0.78rem; text-transform: uppercase; letter-spacing: 0.08em; color: var(--text-muted); margin-bottom: 12px; font-weight: 500; }

.filter-range { width: 100%; position: relative; }

.range-input { width: 100%; -webkit-appearance: none; height: 4px; background: var(--base-dark); border-radius: 2px; outline: none; }

.range-input::-webkit-slider-thumb { -webkit-appearance: none; width: 18px; height: 18px; border-radius: 50%; background: var(--gold); box-shadow: 2px 2px 6px rgba(168,137,59,0.4); cursor: pointer; }

.range-labels { display: flex; justify-content: space-between; font-size: 0.78rem; color: var(--text-muted); margin-top: 8px; }

.filter-checkbox { display: flex; align-items: center; gap: 10px; padding: 8px 0; cursor: pointer; }

.filter-checkbox input { display: none; }

.filter-check {

  width: 18px; height: 18px; border-radius: 5px;

  background: var(--base); box-shadow: var(--neu-shadow-sm);

  flex-shrink: 0; position: relative; transition: var(--transition);

}

.filter-checkbox input:checked ~ .filter-check { box-shadow: var(--neu-inset-sm); }

.filter-checkbox input:checked ~ .filter-check::after {

  content: '✓'; position: absolute; inset: 0;

  display: flex; align-items: center; justify-content: center;

  font-size: 0.65rem; color: var(--gold-dark);

}

.filter-label { font-size: 0.875rem; color: var(--text-secondary); }

.filter-count { font-size: 0.75rem; color: var(--text-muted); margin-left: auto; }


/* Results list */

.results-list { flex: 1; }

.results-toolbar { display: flex; align-items: center; justify-content: space-between; margin-bottom: 20px; flex-wrap: wrap; gap: 12px; }

.results-count { font-size: 0.875rem; color: var(--text-secondary); }

.results-count strong { color: var(--text-primary); }

.sort-select { background: var(--base); box-shadow: var(--neu-shadow-sm); border-radius: 50px; padding: 8px 18px; font-size: 0.85rem; appearance: none; cursor: pointer; padding-right: 32px; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='7' viewBox='0 0 10 7'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%23C8A96B' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E"); background-repeat: no-repeat; background-position: right 12px center; }

.compare-bar {

  background: var(--base);

  border-radius: var(--radius);

  box-shadow: var(--neu-shadow);

  padding: 16px 20px;

  display: none; align-items: center; justify-content: space-between;

  margin-bottom: 20px; gap: 12px;

}

.compare-bar.visible { display: flex; }

.compare-slots { display: flex; gap: 10px; }

.compare-slot {

  background: var(--base); box-shadow: var(--neu-inset-sm);

  border-radius: var(--radius-sm); padding: 8px 14px;

  font-size: 0.8rem; min-width: 120px;

  display: flex; align-items: center; justify-content: space-between; gap: 8px;

}

.compare-slot-empty { color: var(--text-muted); font-style: italic; }

.result-card {

  background: var(--base);

  border-radius: var(--radius);

  box-shadow: var(--neu-shadow);

  margin-bottom: 20px;

  display: flex; overflow: hidden; cursor: pointer;

  transition: var(--transition);

}

.result-card:hover { transform: translateY(-3px); box-shadow: 8px 8px 24px rgba(180,168,148,0.5), -4px -4px 12px rgba(255,255,255,0.95); }

.result-card-img {

  width: 240px; flex-shrink: 0;

  background: linear-gradient(135deg, var(--base-deeper), var(--base-dark));

  position: relative; display: flex; align-items: center; justify-content: center;

}

.result-card-img-ph { font-family: var(--font-arabic); font-size: 2.5rem; color: rgba(200,169,107,0.3); }

.result-card-body { flex: 1; padding: 22px; }

.result-card-footer { padding: 22px; display: flex; flex-direction: column; justify-content: space-between; align-items: flex-end; border-left: 1px solid rgba(200,169,107,0.1); width: 180px; }

.result-tag-row { display: flex; gap: 6px; flex-wrap: wrap; margin-bottom: 8px; }

.result-name { font-family: var(--font-display); font-size: 1.3rem; font-weight: 500; margin-bottom: 6px; }

.result-agency-row { display: flex; align-items: center; gap: 10px; margin-bottom: 12px; }

.result-agency-name { font-size: 0.8rem; color: var(--text-muted); }

.result-features { display: flex; flex-wrap: wrap; gap: 8px; }

.result-feature { font-size: 0.78rem; color: var(--text-secondary); display: flex; align-items: center; gap: 4px; }

.compare-cb { display: flex; align-items: center; gap: 6px; font-size: 0.8rem; color: var(--text-secondary); margin-bottom: 12px; cursor: pointer; }

.compare-cb input { display: none; }

.compare-cb-box { width: 16px; height: 16px; border-radius: 4px; background: var(--base); box-shadow: var(--neu-shadow-sm); position: relative; transition: var(--transition); }

.compare-cb input:checked ~ .compare-cb-box { box-shadow: var(--neu-inset-sm); }

.compare-cb input:checked ~ .compare-cb-box::after { content: '✓'; position: absolute; inset: 0; display: flex; align-items: center; justify-content: center; font-size: 0.6rem; color: var(--gold-dark); }


/* ================================ */

/* ===== PAGE: PACKAGE DETAIL ===== */

/* ================================ */

#page-detail { padding-top: 70px; }

.detail-hero {

  height: 420px;

  background: linear-gradient(135deg, var(--base-deeper), var(--base-dark));

  position: relative; display: flex; align-items: center; justify-content: center;

  overflow: hidden;

}

.detail-hero-ph { font-family: var(--font-arabic); font-size: 6rem; color: rgba(200,169,107,0.2); }

.detail-hero-overlay { position: absolute; inset: 0; background: linear-gradient(to bottom, rgba(26,23,20,0.2), rgba(26,23,20,0.7)); }

.detail-hero-content { position: relative; z-index: 1; text-align: center; color: white; padding: 20px; }

.detail-hero-content h1 { font-family: var(--font-display); font-size: clamp(1.8rem,4vw,3rem); font-weight: 400; margin-bottom: 12px; }

.detail-hero-content p { color: rgba(255,255,255,0.75); font-size: 1rem; }

.detail-body { padding: 40px clamp(16px,5vw,80px); display: grid; grid-template-columns: 1fr 350px; gap: 32px; }

.detail-main {}

.detail-sidebar {}

.detail-tabs { display: flex; gap: 4px; margin-bottom: 30px; border-bottom: 1px solid rgba(200,169,107,0.1); }

.detail-tab { padding: 12px 20px; font-size: 0.875rem; cursor: pointer; color: var(--text-secondary); border-bottom: 2px solid transparent; transition: var(--transition); }

.detail-tab.active { color: var(--gold-dark); border-bottom-color: var(--gold); }

.detail-tab:hover { color: var(--text-primary); }

.detail-panel { display: none; }

.detail-panel.active { display: block; animation: fadeIn 0.3s ease; }

.detail-section-title { font-family: var(--font-display); font-size: 1.3rem; font-weight: 500; margin-bottom: 16px; }

.inclusions-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }

.inclusion-item { display: flex; align-items: center; gap: 8px; font-size: 0.875rem; color: var(--text-secondary); padding: 6px 0; }

.inclusion-icon { color: var(--gold); width: 16px; }

.itinerary-item { display: flex; gap: 16px; margin-bottom: 20px; }

.itinerary-day { flex-shrink: 0; text-align: center; }

.day-num { width: 36px; height: 36px; border-radius: 50%; background: var(--base); box-shadow: var(--neu-shadow-sm); display: flex; align-items: center; justify-content: center; font-size: 0.8rem; font-weight: 600; color: var(--gold-dark); }

.day-line { width: 1px; height: calc(100% - 40px); background: linear-gradient(to bottom, rgba(200,169,107,0.3), transparent); margin: 4px auto 0; }

.itinerary-content { flex: 1; padding-bottom: 20px; }

.itinerary-title { font-weight: 500; margin-bottom: 4px; }

.itinerary-desc { font-size: 0.875rem; color: var(--text-secondary); line-height: 1.6; }

.hotel-card-row { display: flex; gap: 16px; margin-bottom: 14px; background: var(--base); border-radius: var(--radius-sm); box-shadow: var(--neu-shadow-sm); padding: 16px; }

.hotel-img { width: 80px; height: 70px; border-radius: 10px; background: linear-gradient(135deg, var(--base-deeper), var(--base-dark)); display: flex; align-items: center; justify-content: center; font-size: 1.5rem; color: rgba(200,169,107,0.3); flex-shrink: 0; }


/* Booking card */

.booking-card { position: sticky; top: 90px; }

.price-display { text-align: center; margin-bottom: 24px; }

.price-from { font-size: 0.78rem; color: var(--text-muted); text-transform: uppercase; letter-spacing: 0.07em; }

.price-main { font-family: var(--font-display); font-size: 2.8rem; font-weight: 500; color: var(--text-primary); line-height: 1; }

.price-per { font-size: 0.85rem; color: var(--text-muted); }

.price-breakdown { margin: 14px 0; }

.price-row { display: flex; justify-content: space-between; font-size: 0.85rem; padding: 6px 0; }

.price-row.total { font-weight: 600; font-size: 0.95rem; border-top: 1px solid rgba(200,169,107,0.15); padding-top: 10px; margin-top: 4px; }

.agency-card { margin-top: 16px; }

.agency-info { display: flex; align-items: center; gap: 14px; margin-bottom: 12px; }

.agency-logo { width: 48px; height: 48px; border-radius: var(--radius-xs); background: linear-gradient(135deg, var(--gold-light), var(--gold)); display: flex; align-items: center; justify-content: center; font-size: 1.2rem; }

.agency-name-main { font-weight: 500; font-size: 0.9rem; }

.agency-since { font-size: 0.75rem; color: var(--text-muted); }

.agency-stats { display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 8px; }

.agency-stat { text-align: center; }

.agency-stat-val { font-family: var(--font-display); font-size: 1.1rem; font-weight: 500; color: var(--text-primary); }

.agency-stat-lbl { font-size: 0.68rem; color: var(--text-muted); text-transform: uppercase; letter-spacing: 0.05em; }


/* ================================= */

/* ===== PAGE: COMPARE ===== */

/* ================================= */

#page-compare { padding-top: 70px; }

.compare-header { padding: 40px clamp(16px,5vw,60px); text-align: center; }

.compare-table-wrapper { overflow-x: auto; padding: 0 clamp(16px,5vw,60px) 60px; }

.compare-table { width: 100%; border-collapse: separate; border-spacing: 0; }

.compare-table th { padding: 0 16px 24px; vertical-align: bottom; min-width: 220px; }

.compare-table td { padding: 12px 16px; vertical-align: middle; font-size: 0.875rem; border-top: 1px solid rgba(200,169,107,0.08); }

.compare-table tr:first-child td { border-top: none; }

.compare-pkg-header { background: var(--base); border-radius: var(--radius); box-shadow: var(--neu-shadow-sm); padding: 20px; text-align: center; }

.compare-pkg-img { height: 90px; background: linear-gradient(135deg, var(--base-deeper), var(--base-dark)); border-radius: var(--radius-sm); display: flex; align-items: center; justify-content: center; margin-bottom: 12px; font-family: var(--font-arabic); font-size: 2rem; color: rgba(200,169,107,0.3); }

.compare-pkg-name { font-family: var(--font-display); font-size: 1rem; font-weight: 500; margin-bottom: 6px; }

.compare-pkg-price { font-family: var(--font-display); font-size: 1.4rem; color: var(--gold-dark); font-weight: 600; }

.compare-row-label { font-size: 0.78rem; text-transform: uppercase; letter-spacing: 0.07em; color: var(--text-muted); font-weight: 500; padding: 12px 16px 12px 0; border-top: 1px solid rgba(200,169,107,0.08); white-space: nowrap; }

.compare-check { color: #2D7A52; font-size: 1rem; }

.compare-cross { color: #A03030; font-size: 1rem; }

.compare-highlight { background: rgba(200,169,107,0.05); }


/* =============================== */

/* ===== PAGE: USER DASHBOARD ===== */

/* =============================== */

#page-dashboard { padding-top: 70px; }

.dashboard-layout { display: grid; grid-template-columns: 260px 1fr; min-height: calc(100vh - 70px); }

.dashboard-sidebar {

  background: var(--base);

  border-right: 1px solid rgba(200,169,107,0.1);

  padding: 32px 20px;

  box-shadow: 4px 0 20px rgba(180,168,148,0.15);

}

.dash-avatar-section { text-align: center; margin-bottom: 32px; }

.dash-avatar {

  width: 72px; height: 72px; border-radius: 50%; margin: 0 auto 12px;

  background: linear-gradient(135deg, var(--gold-light), var(--gold));

  display: flex; align-items: center; justify-content: center;

  font-family: var(--font-display); font-size: 1.6rem; font-weight: 600; color: var(--black);

  box-shadow: var(--neu-shadow);

}

.dash-name { font-weight: 500; font-size: 1rem; }

.dash-email { font-size: 0.78rem; color: var(--text-muted); margin-top: 2px; }

.dash-nav { display: flex; flex-direction: column; gap: 4px; }

.dash-nav-item {

  display: flex; align-items: center; gap: 12px;

  padding: 12px 16px; border-radius: var(--radius-sm);

  font-size: 0.875rem; cursor: pointer; transition: var(--transition);

  color: var(--text-secondary);

}

.dash-nav-item:hover { background: rgba(200,169,107,0.08); color: var(--text-primary); }

.dash-nav-item.active {

  background: var(--base);

  box-shadow: var(--neu-shadow-sm);

  color: var(--gold-dark); font-weight: 500;

}

.dash-nav-item.active .dash-nav-icon { color: var(--gold); }

.dash-nav-icon { font-size: 1.1rem; width: 20px; text-align: center; }

.dash-main { flex: 1; padding: 32px clamp(20px,3vw,50px); overflow-y: auto; }

.dash-section { display: none; }

.dash-section.active { display: block; animation: fadeIn 0.3s ease; }

.dash-greeting { font-family: var(--font-display); font-size: 1.8rem; font-weight: 400; margin-bottom: 4px; }

.dash-greeting span { color: var(--gold); font-style: italic; }

.dash-sub { color: var(--text-secondary); font-size: 0.9rem; margin-bottom: 28px; }

.dash-cards-row { display: grid; grid-template-columns: repeat(auto-fit, minmax(180px,1fr)); gap: 18px; margin-bottom: 32px; }

.dash-stat-card { text-align: center; padding: 24px 16px; }

.dash-stat-icon { font-size: 1.8rem; margin-bottom: 10px; }

.dash-stat-val { font-family: var(--font-display); font-size: 1.6rem; font-weight: 600; }

.dash-stat-lbl { font-size: 0.78rem; color: var(--text-muted); text-transform: uppercase; letter-spacing: 0.06em; margin-top: 4px; }


/* Booking timeline */

.booking-timeline { position: relative; }

.booking-item { display: flex; gap: 16px; margin-bottom: 28px; position: relative; }

.booking-item::after { content: ''; position: absolute; left: 15px; top: 32px; bottom: -28px; width: 1px; background: linear-gradient(to bottom, rgba(200,169,107,0.3), transparent); }

.booking-item:last-child::after { display: none; }

.booking-dot { width: 32px; height: 32px; border-radius: 50%; flex-shrink: 0; display: flex; align-items: center; justify-content: center; font-size: 0.75rem; box-shadow: var(--neu-shadow-sm); }

.booking-dot.confirmed { background: linear-gradient(135deg, #48A870, #2D7A52); color: white; }

.booking-dot.pending { background: linear-gradient(135deg, var(--gold-light), var(--gold)); color: var(--black); }

.booking-dot.waiting { background: var(--base); color: var(--text-muted); }

.booking-content { flex: 1; }

.booking-title { font-weight: 500; font-size: 0.9rem; margin-bottom: 2px; }

.booking-sub { font-size: 0.8rem; color: var(--text-secondary); }

.booking-time { font-size: 0.75rem; color: var(--text-muted); }


/* Confirm My Booking CTA — THE SIGNATURE FEATURE */

.confirm-booking-section {

  background: linear-gradient(135deg, rgba(200,169,107,0.12), rgba(200,169,107,0.05));

  border: 1px solid rgba(200,169,107,0.25);

  border-radius: var(--radius);

  padding: 30px; margin-bottom: 28px;

  position: relative; overflow: hidden;

}

.confirm-booking-section::before {

  content: '٭'; position: absolute; right: 24px; top: 20px;

  font-family: var(--font-arabic); font-size: 4rem; color: rgba(200,169,107,0.1);

}

.confirm-booking-badge {

  display: inline-flex; align-items: center; gap: 6px;

  background: rgba(200,169,107,0.15); border: 1px solid rgba(200,169,107,0.3);

  border-radius: 50px; padding: 4px 12px; margin-bottom: 12px;

  font-size: 0.72rem; font-weight: 600; color: var(--gold-dark); text-transform: uppercase; letter-spacing: 0.08em;

}

.confirm-booking-badge .dot { width: 6px; height: 6px; border-radius: 50%; background: var(--gold); animation: pulse 2s infinite; }

@keyframes pulse { 0%,100%{opacity:1; transform:scale(1);} 50%{opacity:0.6; transform:scale(1.3);} }

.confirm-booking-title { font-family: var(--font-display); font-size: 1.3rem; font-weight: 500; margin-bottom: 6px; }

.confirm-booking-desc { font-size: 0.875rem; color: var(--text-secondary); line-height: 1.65; margin-bottom: 20px; }

.btn-confirm-booking {

  background: linear-gradient(135deg, var(--gold), var(--gold-dark));

  color: white; border-radius: var(--radius-sm);

  padding: 14px 28px; font-size: 0.95rem; font-weight: 500;

  box-shadow: 4px 4px 16px rgba(168,137,59,0.45);

  transition: var(--transition); display: inline-flex; align-items: center; gap: 10px;

  letter-spacing: 0.03em;

}

.btn-confirm-booking:hover { transform: translateY(-2px); box-shadow: 5px 6px 20px rgba(168,137,59,0.55); }

.btn-confirm-booking .btn-icon { font-size: 1.1rem; }


/* Checklist */

.checklist { display: flex; flex-direction: column; gap: 8px; }

.check-item { display: flex; align-items: center; gap: 12px; padding: 12px 16px; background: var(--base); border-radius: var(--radius-sm); box-shadow: var(--neu-shadow-sm); cursor: pointer; transition: var(--transition); }

.check-item:hover { box-shadow: var(--neu-inset-sm); }

.check-box { width: 20px; height: 20px; border-radius: 6px; background: var(--base); box-shadow: var(--neu-shadow-sm); flex-shrink: 0; display: flex; align-items: center; justify-content: center; font-size: 0.65rem; color: transparent; transition: var(--transition); }

.check-item.done .check-box { box-shadow: var(--neu-inset-sm); color: var(--gold-dark); }

.check-item.done .check-box::after { content: '✓'; }

.check-item.done .check-text { text-decoration: line-through; color: var(--text-muted); }

.check-text { font-size: 0.875rem; color: var(--text-secondary); }

.check-category { font-size: 0.7rem; color: var(--text-muted); margin-left: auto; }


/* Countdown */

.countdown-widget {

  background: linear-gradient(135deg, var(--black), #2A2520);

  border-radius: var(--radius);

  padding: 28px; color: white; text-align: center;

  box-shadow: 8px 8px 24px rgba(26,23,20,0.25);

}

.countdown-label { font-size: 0.75rem; text-transform: uppercase; letter-spacing: 0.1em; color: rgba(255,255,255,0.5); margin-bottom: 20px; }

.countdown-grid { display: grid; grid-template-columns: repeat(4,1fr); gap: 10px; }

.countdown-unit { background: rgba(255,255,255,0.05); border-radius: var(--radius-sm); padding: 16px 8px; }

.countdown-val { font-family: var(--font-display); font-size: 2.2rem; font-weight: 500; color: var(--gold); line-height: 1; }

.countdown-unit-lbl { font-size: 0.65rem; color: rgba(255,255,255,0.4); text-transform: uppercase; letter-spacing: 0.08em; margin-top: 4px; }


/* =============================== */

/* ===== PAGE: BOOKING WIZARD ===== */

/* =============================== */

#page-booking { padding-top: 70px; }

.booking-wizard { max-width: 800px; margin: 0 auto; padding: 40px clamp(16px,4vw,40px); }

.wizard-header { text-align: center; margin-bottom: 40px; }

.wizard-steps { display: flex; justify-content: center; align-items: center; gap: 0; margin-bottom: 40px; }

.wizard-step { display: flex; flex-direction: column; align-items: center; gap: 6px; position: relative; }

.wizard-step:not(:last-child)::after {

  content: ''; position: absolute; left: 50%; top: 16px;

  width: calc(100% + 40px); height: 1px;

  background: linear-gradient(90deg, rgba(200,169,107,0.3), rgba(200,169,107,0.1));

}

.ws-circle {

  width: 32px; height: 32px; border-radius: 50%;

  background: var(--base); box-shadow: var(--neu-shadow-sm);

  display: flex; align-items: center; justify-content: center;

  font-size: 0.8rem; font-weight: 600; color: var(--text-muted);

  transition: var(--transition); z-index: 1;

}

.wizard-step.active .ws-circle { background: linear-gradient(135deg, var(--gold), var(--gold-dark)); color: white; box-shadow: 3px 3px 10px rgba(168,137,59,0.4); }

.wizard-step.done .ws-circle { background: var(--base); box-shadow: var(--neu-inset-sm); color: var(--gold-dark); }

.ws-label { font-size: 0.72rem; color: var(--text-muted); text-transform: uppercase; letter-spacing: 0.05em; width: 80px; text-align: center; }

.wizard-step.active .ws-label { color: var(--gold-dark); }

.wizard-panel { display: none; }

.wizard-panel.active { display: block; animation: fadeIn 0.3s ease; }

.form-row { display: grid; gap: 18px; margin-bottom: 18px; }

.form-row-2 { grid-template-columns: 1fr 1fr; }

.form-row-3 { grid-template-columns: 1fr 1fr 1fr; }

.form-group label { display: block; font-size: 0.78rem; font-weight: 500; color: var(--text-muted); text-transform: uppercase; letter-spacing: 0.07em; margin-bottom: 8px; }

.room-option {

  display: flex; align-items: center; justify-content: space-between;

  padding: 16px 18px; border-radius: var(--radius-sm);

  background: var(--base); box-shadow: var(--neu-shadow-sm);

  cursor: pointer; transition: var(--transition); margin-bottom: 10px;

}

.room-option.selected { box-shadow: var(--neu-inset-sm); }

.room-option input { display: none; }

.room-option-info {}

.room-option-name { font-weight: 500; font-size: 0.9rem; }

.room-option-desc { font-size: 0.78rem; color: var(--text-muted); margin-top: 2px; }

.room-option-price { font-family: var(--font-display); font-size: 1.2rem; font-weight: 500; color: var(--gold-dark); }

.order-summary { background: var(--base); border-radius: var(--radius); box-shadow: var(--neu-shadow); padding: 28px; }

.order-summary-title { font-family: var(--font-display); font-size: 1.2rem; font-weight: 500; margin-bottom: 20px; }

.summary-pkg-row { display: flex; gap: 14px; margin-bottom: 20px; }

.summary-pkg-img { width: 80px; height: 64px; border-radius: var(--radius-xs); background: linear-gradient(135deg, var(--base-deeper), var(--base-dark)); display: flex; align-items: center; justify-content: center; font-family: var(--font-arabic); font-size: 1.5rem; color: rgba(200,169,107,0.3); flex-shrink: 0; }

.wizard-nav { display: flex; justify-content: space-between; margin-top: 28px; }


/* ================================ */

/* ===== PAGE: BOOKING STATUS ===== */

/* ================================ */

#page-status { padding-top: 70px; }

.status-page { max-width: 720px; margin: 0 auto; padding: 40px clamp(16px,4vw,40px); }

.status-hero-card {

  background: linear-gradient(135deg, var(--black), #2A2520);

  border-radius: var(--radius); padding: 32px; color: white; margin-bottom: 28px;

  box-shadow: 8px 8px 24px rgba(26,23,20,0.25);

  position: relative; overflow: hidden;

}

.status-hero-card::before {

  content: 'بسم الله'; font-family: var(--font-arabic);

  position: absolute; right: 24px; top: 20px;

  font-size: 3rem; color: rgba(200,169,107,0.1);

}

.booking-ref { font-size: 0.75rem; text-transform: uppercase; letter-spacing: 0.1em; color: rgba(255,255,255,0.5); margin-bottom: 6px; }

.booking-ref-val { font-family: var(--font-display); font-size: 1.4rem; color: var(--gold); }

.status-badge-big {

  display: inline-flex; align-items: center; gap: 8px;

  margin: 16px 0;

  background: rgba(72,168,112,0.2); border: 1px solid rgba(72,168,112,0.3);

  padding: 8px 18px; border-radius: 50px; font-size: 0.875rem; color: #6DD8A0;

}

.status-meta-row { display: grid; grid-template-columns: repeat(3,1fr); gap: 16px; margin-top: 20px; }

.status-meta-item {}

.status-meta-lbl { font-size: 0.7rem; text-transform: uppercase; letter-spacing: 0.07em; color: rgba(255,255,255,0.4); margin-bottom: 4px; }

.status-meta-val { font-size: 0.9rem; font-weight: 500; }

.status-timeline { }

.st-item { display: flex; gap: 16px; margin-bottom: 0; position: relative; }

.st-line-wrap { display: flex; flex-direction: column; align-items: center; flex-shrink: 0; }

.st-dot { width: 36px; height: 36px; border-radius: 50%; display: flex; align-items: center; justify-content: center; font-size: 0.85rem; flex-shrink: 0; }

.st-dot.done { background: linear-gradient(135deg, #48A870, #2D7A52); color: white; box-shadow: 2px 2px 8px rgba(45,122,82,0.3); }

.st-dot.active { background: linear-gradient(135deg, var(--gold), var(--gold-dark)); color: white; box-shadow: 2px 2px 8px rgba(168,137,59,0.4); animation: glowPulse 2s infinite; }

@keyframes glowPulse { 0%,100%{box-shadow: 2px 2px 8px rgba(168,137,59,0.4);} 50%{box-shadow: 2px 2px 16px rgba(168,137,59,0.7);} }

.st-dot.waiting { background: var(--base); color: var(--text-muted); box-shadow: var(--neu-shadow-sm); }

.st-connector { width: 1px; flex: 1; min-height: 24px; background: linear-gradient(to bottom, rgba(200,169,107,0.3), rgba(200,169,107,0.1)); margin: 2px 0; }

.st-content { flex: 1; padding: 6px 0 28px; }

.st-title { font-weight: 500; font-size: 0.9rem; margin-bottom: 2px; }

.st-sub { font-size: 0.8rem; color: var(--text-secondary); }

.st-time { font-size: 0.75rem; color: var(--text-muted); margin-top: 4px; }


/* CONFIRM BOOKING PAGE MODAL VERSION */

.confirm-modal-box {

  text-align: center;

}

.confirm-success-icon {

  width: 80px; height: 80px; border-radius: 50%; margin: 0 auto 20px;

  background: linear-gradient(135deg, var(--gold), var(--gold-dark));

  display: flex; align-items: center; justify-content: center;

  font-size: 2rem; color: white;

  box-shadow: 4px 4px 16px rgba(168,137,59,0.4);

}


/* =============================== */

/* ===== PAGE: PILGRIMAGE PREP ===== */

/* =============================== */

#page-prep { padding-top: 70px; }

.prep-body { padding: 40px clamp(16px,5vw,60px); }

.prep-header-card {

  background: linear-gradient(135deg, var(--black), #2A2520);

  border-radius: var(--radius); padding: 36px; color: white; margin-bottom: 32px;

  display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 24px;

  box-shadow: 8px 8px 24px rgba(26,23,20,0.25);

}

.prep-header-info h2 { font-family: var(--font-display); font-size: 1.8rem; font-weight: 400; margin-bottom: 6px; }

.prep-header-info p { color: rgba(255,255,255,0.6); font-size: 0.9rem; }

.prep-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; margin-bottom: 24px; }

.prep-full { grid-column: 1 / -1; }

.prep-section-title { font-family: var(--font-display); font-size: 1.2rem; font-weight: 500; margin-bottom: 16px; }

.progress-ring-wrap { display: flex; align-items: center; gap: 20px; margin-bottom: 16px; }

.progress-ring-chart { position: relative; width: 80px; height: 80px; }

.progress-ring-chart svg { transform: rotate(-90deg); }

.progress-ring-chart circle { fill: none; stroke-width: 8; }

.prc-bg { stroke: var(--base-dark); }

.prc-fill { stroke: url(#goldGrad); stroke-linecap: round; transition: stroke-dashoffset 1s ease; }

.prc-label { position: absolute; inset: 0; display: flex; align-items: center; justify-content: center; font-family: var(--font-display); font-size: 1rem; font-weight: 600; color: var(--gold-dark); }

.checklist-category-title { font-size: 0.72rem; text-transform: uppercase; letter-spacing: 0.08em; color: var(--text-muted); margin: 16px 0 8px; font-weight: 500; }

.dua-card { padding: 20px; margin-bottom: 14px; }

.dua-arabic { font-family: var(--font-arabic); font-size: 1.4rem; color: var(--text-primary); line-height: 1.8; text-align: right; margin-bottom: 10px; direction: rtl; }

.dua-transliteration { font-size: 0.8rem; font-style: italic; color: var(--text-secondary); margin-bottom: 6px; }

.dua-meaning { font-size: 0.85rem; color: var(--text-muted); }


/* ============================ */

/* ===== PAGE: REVIEW ===== */

/* ============================ */

#page-review { padding-top: 70px; }

.review-body { max-width: 720px; margin: 0 auto; padding: 40px clamp(16px,4vw,40px); }

.star-selector { display: flex; gap: 10px; margin: 12px 0; }

.star-btn { font-size: 1.8rem; cursor: pointer; color: var(--base-darker); transition: var(--transition); filter: grayscale(1); opacity: 0.4; }

.star-btn.selected, .star-btn:hover { filter: grayscale(0); opacity: 1; color: var(--gold); transform: scale(1.1); }

.review-category { margin-bottom: 20px; }

.review-cat-title { font-size: 0.875rem; font-weight: 500; margin-bottom: 8px; }

.rating-slider-wrap { display: flex; align-items: center; gap: 12px; }

.rating-slider-wrap .range-input { flex: 1; }

.rating-val { font-family: var(--font-display); font-size: 1.1rem; font-weight: 600; color: var(--gold-dark); width: 30px; text-align: right; }


/* ===== MESSAGING CENTER ===== */

.messages-layout { display: grid; grid-template-columns: 280px 1fr; height: 600px; border-radius: var(--radius); overflow: hidden; box-shadow: var(--neu-shadow); }

.msg-sidebar { background: var(--base); border-right: 1px solid rgba(200,169,107,0.1); overflow-y: auto; }

.msg-sidebar-header { padding: 16px; border-bottom: 1px solid rgba(200,169,107,0.1); }

.msg-thread { padding: 14px 16px; cursor: pointer; display: flex; gap: 10px; align-items: flex-start; transition: var(--transition); border-bottom: 1px solid rgba(200,169,107,0.06); }

.msg-thread:hover { background: rgba(200,169,107,0.05); }

.msg-thread.active { background: rgba(200,169,107,0.08); }

.msg-thread-avatar { width: 38px; height: 38px; border-radius: 50%; background: linear-gradient(135deg, var(--gold-light), var(--gold)); display: flex; align-items: center; justify-content: center; font-size: 0.8rem; font-weight: 600; flex-shrink: 0; }

.msg-thread-name { font-size: 0.875rem; font-weight: 500; margin-bottom: 2px; }

.msg-thread-preview { font-size: 0.78rem; color: var(--text-muted); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; max-width: 150px; }

.msg-thread-time { font-size: 0.7rem; color: var(--text-muted); margin-left: auto; }

.msg-chat { display: flex; flex-direction: column; background: var(--base); }

.msg-chat-header { padding: 16px 20px; border-bottom: 1px solid rgba(200,169,107,0.1); display: flex; align-items: center; gap: 12px; }

.msg-chat-body { flex: 1; overflow-y: auto; padding: 20px; display: flex; flex-direction: column; gap: 16px; }

.msg-bubble { max-width: 70%; }

.msg-bubble.received { align-self: flex-start; }

.msg-bubble.sent { align-self: flex-end; }

.msg-bubble-text { padding: 12px 16px; border-radius: 16px; font-size: 0.875rem; line-height: 1.55; }

.msg-bubble.received .msg-bubble-text { background: var(--base); box-shadow: var(--neu-shadow-sm); border-bottom-left-radius: 4px; }

.msg-bubble.sent .msg-bubble-text { background: linear-gradient(135deg, var(--gold), var(--gold-dark)); color: white; border-bottom-right-radius: 4px; }

.msg-bubble-time { font-size: 0.68rem; color: var(--text-muted); margin-top: 4px; padding: 0 4px; }

.msg-bubble.sent .msg-bubble-time { text-align: right; }

.msg-input-bar { padding: 14px 16px; border-top: 1px solid rgba(200,169,107,0.1); display: flex; gap: 10px; align-items: center; }

.msg-input { flex: 1; background: var(--base); box-shadow: var(--neu-inset-sm); border-radius: 50px; padding: 10px 18px; font-size: 0.875rem; }

.msg-send-btn { width: 38px; height: 38px; border-radius: 50%; background: linear-gradient(135deg, var(--gold), var(--gold-dark)); display: flex; align-items: center; justify-content: center; color: white; font-size: 0.9rem; box-shadow: 2px 2px 8px rgba(168,137,59,0.35); transition: var(--transition); }

.msg-send-btn:hover { transform: scale(1.05); }


/* ===== LOGIN MODAL ===== */

.auth-tabs { display: flex; gap: 4px; margin-bottom: 28px; background: var(--base); box-shadow: var(--neu-inset); border-radius: 50px; padding: 4px; }

.auth-tab { flex: 1; text-align: center; padding: 10px; border-radius: 50px; font-size: 0.875rem; cursor: pointer; transition: var(--transition); color: var(--text-secondary); }

.auth-tab.active { background: var(--base); box-shadow: var(--neu-shadow-sm); color: var(--text-primary); font-weight: 500; }

.auth-form { display: none; }

.auth-form.active { display: block; }

.auth-input-group { margin-bottom: 16px; }

.auth-input-group label { display: block; font-size: 0.75rem; font-weight: 500; color: var(--text-muted); text-transform: uppercase; letter-spacing: 0.07em; margin-bottom: 8px; }

.social-divider { display: flex; align-items: center; gap: 12px; margin: 20px 0; }

.social-divider::before, .social-divider::after { content: ''; flex: 1; height: 1px; background: rgba(200,169,107,0.15); }

.social-divider span { font-size: 0.78rem; color: var(--text-muted); }

.social-btns { display: flex; gap: 10px; }

.social-btn { flex: 1; padding: 11px; border-radius: var(--radius-sm); background: var(--base); box-shadow: var(--neu-shadow-sm); font-size: 0.85rem; font-weight: 500; transition: var(--transition); display: flex; align-items: center; justify-content: center; gap: 8px; }

.social-btn:hover { box-shadow: var(--neu-inset-sm); }


/* ===== RESPONSIVE ===== */

@media (max-width: 1100px) {

  .detail-body { grid-template-columns: 1fr; }

  .booking-card { position: static; }

  .footer-grid { grid-template-columns: 1fr 1fr; }

}

@media (max-width: 900px) {

  .nav-links { display: none; }

  .hamburger { display: flex; }

  .search-fields { grid-template-columns: 1fr 1fr; }

  .search-fields .search-btn { grid-column: 1 / -1; }

  .result-card { flex-direction: column; }

  .result-card-img { width: 100%; height: 160px; }

  .result-card-footer { width: 100%; border-left: none; border-top: 1px solid rgba(200,169,107,0.1); flex-direction: row; justify-content: space-between; align-items: center; }

  .dashboard-layout { grid-template-columns: 1fr; }

  .dashboard-sidebar { display: none; }

  .prep-grid { grid-template-columns: 1fr; }

  .messages-layout { grid-template-columns: 1fr; }

  .msg-sidebar { display: none; }

  .form-row-2, .form-row-3 { grid-template-columns: 1fr; }

}

@media (max-width: 640px) {

  .search-fields { grid-template-columns: 1fr; }

  .filters-sidebar { display: none; }

  .results-body { padding: 20px 16px; }

  .footer-grid { grid-template-columns: 1fr; }

  .hero-stats { gap: 24px; }

  .inclusions-grid { grid-template-columns: 1fr; }

  .compare-pkg-header { min-width: 160px; }

  .wizard-steps { gap: 0; overflow-x: auto; }

  .ws-label { display: none; }

}


/* ===== FADE IN ANIMATION ===== */

.fade-in { animation: fadeInUp 0.6s ease both; }

.fade-in-1 { animation-delay: 0.1s; }

.fade-in-2 { animation-delay: 0.2s; }

.fade-in-3 { animation-delay: 0.3s; }

.fade-in-4 { animation-delay: 0.4s; }

@keyframes fadeInUp { from{ opacity:0; transform: translateY(20px); } to{ opacity:1; transform: translateY(0); } }


/* ===== LOADING OVERLAY ===== */

.loader-overlay { position: fixed; inset: 0; z-index: 9999; background: var(--base); display: flex; flex-direction: column; align-items: center; justify-content: center; transition: opacity 0.5s; }

.loader-overlay.hide { opacity: 0; pointer-events: none; }

.loader-logo { font-family: var(--font-display); font-size: 3rem; font-weight: 400; color: var(--text-primary); margin-bottom: 8px; }

.loader-logo span { color: var(--gold); font-style: italic; }

.loader-arabic { font-family: var(--font-arabic); color: var(--gold); font-size: 1.2rem; margin-bottom: 32px; }

.loader-bar { width: 200px; height: 2px; background: var(--base-dark); border-radius: 1px; overflow: hidden; }

.loader-fill { height: 100%; background: linear-gradient(90deg, var(--gold), var(--gold-light)); animation: loadFill 1.5s ease forwards; }

@keyframes loadFill { from{ width:0%; } to{ width: 100%; } }


/* ===== MISC ===== */

.text-gold { color: var(--gold); }

.text-muted { color: var(--text-muted); }

.text-center { text-align: center; }

.mt-8 { margin-top: 8px; }

.mt-16 { margin-top: 16px; }

.mt-24 { margin-top: 24px; }

.mb-16 { margin-bottom: 16px; }

.mb-24 { margin-bottom: 24px; }

.flex { display: flex; }

.items-center { align-items: center; }

.gap-8 { gap: 8px; }

.gap-12 { gap: 12px; }

.font-display { font-family: var(--font-display); }

.fw-500 { font-weight: 500; }

</style>

</head>

<body>


<!-- LOADER -->

<div class="loader-overlay" id="loader">

  <div class="loader-logo">IHRAM<span>HUB</span></div>

  <div class="loader-arabic">رحلة مباركة</div>

  <div class="loader-bar"><div class="loader-fill"></div></div>

</div>


<!-- NAVBAR -->

<nav class="navbar" id="navbar">

  <div class="nav-logo" onclick="showPage('home')">

    <div class="nav-logo-mark">إح</div>

    <div class="nav-logo-text">IHRAM<span>HUB</span></div>

  </div>

  <div class="nav-links">

    <span class="nav-link" onclick="showPage('results')">Find Packages</span>

    <span class="nav-link" onclick="showPage('compare')">Compare</span>

    <span class="nav-link">Destinations</span>

    <span class="nav-link">About</span>

  </div>

  <div class="nav-actions">

    <button class="btn-nav-login" id="nav-login-btn" onclick="openModal('login-modal')">Log In</button>

    <button class="btn-nav-cta" id="nav-signup-btn" onclick="openModal('login-modal')">Sign Up</button>

    <div class="nav-avatar" id="nav-avatar" onclick="showPage('dashboard')">AH</div>

  </div>

  <div class="hamburger" onclick="toggleMobile()">

    <span></span><span></span><span></span>

  </div>

</nav>


<!-- =================== PAGE: HOME =================== -->

<div class="page active" id="page-home">


  <!-- HERO -->

  <section class="hero">

    <div class="hero-bg-pattern"></div>

    <div class="gold-badge fade-in">✦ The Sacred Journey Marketplace</div>

    <h1 class="hero-title fade-in fade-in-1">

      Discover Your<br><span class="accent">Perfect Pilgrimage</span>

    </h1>

    <p class="hero-sub fade-in fade-in-2">Compare hundreds of verified Umrah packages from trusted agencies. Transparent pricing, trusted reviews, seamless booking — all in one sacred space.</p>

    <div class="hero-stats fade-in fade-in-2">

      <div class="hero-stat"><div class="hero-stat-val">480+</div><div class="hero-stat-lbl">Verified Agencies</div></div>

      <div class="hero-stat"><div class="hero-stat-val">12K+</div><div class="hero-stat-lbl">Packages Listed</div></div>

      <div class="hero-stat"><div class="hero-stat-val">98K+</div><div class="hero-stat-lbl">Pilgrims Served</div></div>

      <div class="hero-stat"><div class="hero-stat-val">4.9★</div><div class="hero-stat-lbl">Average Rating</div></div>

    </div>


    <!-- SEARCH BOX -->

    <div class="search-box fade-in fade-in-3">

      <div class="search-tabs">

        <button class="search-tab active" onclick="setTab(this,'umrah')">🕋 Umrah</button>

        <button class="search-tab" onclick="setTab(this,'hajj')">☪ Hajj 2026</button>

        <button class="search-tab" onclick="setTab(this,'group')">👥 Group Tours</button>

      </div>

      <div class="search-fields">

        <div class="search-field">

          <label>Departing From</label>

          <select class="neu-select">

            <option>Kuala Lumpur (KUL)</option>

            <option>Singapore (SIN)</option>

            <option>Jakarta (CGK)</option>

            <option>London (LHR)</option>

            <option>Dubai (DXB)</option>

          </select>

        </div>

        <div class="search-field">

          <label>Travel Month</label>

          <select class="neu-select">

            <option>June 2025</option>

            <option>July 2025</option>

            <option>August 2025</option>

            <option>Ramadan 2026</option>

            <option>Flexible</option>

          </select>

        </div>

        <div class="search-field">

          <label>Pilgrims</label>

          <select class="neu-select">

            <option>1 Adult</option>

            <option>2 Adults</option>

            <option>2 Adults, 1 Child</option>

            <option>Group (6+)</option>

          </select>

        </div>

        <button class="search-btn" onclick="showPage('results')">

          <span>Search</span> <span style="font-size:1.1rem">→</span>

        </button>

      </div>

      <div class="search-quick-filters">

        <span>Popular:</span>

        <span class="qf-chip active">Economy</span>

        <span class="qf-chip">Premium</span>

        <span class="qf-chip">5-Star Hotels</span>

        <span class="qf-chip">With Guide</span>

        <span class="qf-chip">Ramadan Special</span>

        <span class="qf-chip">Family Package</span>

      </div>

    </div>

  </section>


  <!-- HOW IT WORKS -->

  <section class="section" style="background: var(--white);">

    <div class="section-header">

      <div class="gold-badge" style="margin-bottom:14px">How It Works</div>

      <h2 class="section-title">Your Sacred Journey,<br><em style="color:var(--gold)">Simplified</em></h2>

      <p class="section-sub">From search to Makkah in four easy steps. We handle the complexity so you can focus on your intention.</p>

    </div>

    <div class="hiw-grid">

      <div class="neu-card hiw-card">

        <div class="hiw-num">1</div>

        <div class="hiw-icon">🔍</div>

        <div class="hiw-title">Search & Compare</div>

        <div class="hiw-desc">Browse hundreds of verified packages. Filter by price, duration, hotel rating, and more.</div>

      </div>

      <div class="neu-card hiw-card">

        <div class="hiw-num">2</div>

        <div class="hiw-icon">📋</div>

        <div class="hiw-title">Select & Book</div>

        <div class="hiw-desc">Choose your perfect package and send a booking request directly to the agency.</div>

      </div>

      <div class="neu-card hiw-card">

        <div class="hiw-num">3</div>

        <div class="hiw-icon">✅</div>

        <div class="hiw-title">Confirm My Booking</div>

        <div class="hiw-desc">After paying the agency, use our signature "Confirm My Booking" button to reconcile and protect your booking.</div>

      </div>

      <div class="neu-card hiw-card">

        <div class="hiw-num">4</div>

        <div class="hiw-icon">🕋</div>

        <div class="hiw-title">Journey with Peace</div>

        <div class="hiw-desc">Travel confidently with your digital itinerary, checklist, and live booking tracking.</div>

      </div>

    </div>

  </section>


  <!-- FEATURED PACKAGES -->

  <section class="section">

    <div class="section-header">

      <div class="gold-badge" style="margin-bottom:14px">✦ Featured Packages</div>

      <h2 class="section-title">Curated for Your<br><em style="color:var(--gold)">Sacred Journey</em></h2>

    </div>

    <div class="packages-grid">

      <!-- Card 1 -->

      <div class="pkg-card" onclick="showPage('detail')">

        <div class="pkg-img">

          <div class="pkg-img-placeholder">الكعبة</div>

          <div class="pkg-img-overlay"></div>

          <div class="pkg-badges"><span class="tag tag-gold">⭐ Top Rated</span></div>

          <div class="pkg-fav" onclick="event.stopPropagation(); toggleFav(this)">♡</div>

        </div>

        <div class="pkg-body">

          <div class="pkg-agency">Al-Barakah Travel</div>

          <div class="pkg-name">Premium Umrah — 14 Nights Makkah & Madinah</div>

          <div class="pkg-meta">

            <span class="pkg-meta-item">📅 14 Nights</span>

            <span class="pkg-meta-item">🏨 5-Star</span>

            <span class="pkg-meta-item">✈️ MAS Airlines</span>

          </div>

          <div style="display:flex;align-items:center;gap:10px;margin-bottom:4px;">

            <div class="stars">★★★★★</div>

            <span style="font-size:0.78rem;color:var(--text-muted)">4.9 (312 reviews)</span>

          </div>

        </div>

        <div class="pkg-footer">

          <div>

            <div class="pkg-price-lbl">Per Person from</div>

            <div class="pkg-price">MYR 8,200 <span>/ pax</span></div>

          </div>

          <div class="pkg-actions">

            <button class="pkg-btn btn-secondary" onclick="event.stopPropagation(); addCompare(this,'Premium Umrah 14N')">Compare</button>

            <button class="pkg-btn btn-primary" onclick="event.stopPropagation(); showPage('detail')">View</button>

          </div>

        </div>

      </div>

      <!-- Card 2 -->

      <div class="pkg-card" onclick="showPage('detail')">

        <div class="pkg-img" style="background: linear-gradient(135deg,#E8E0D0,#D8D0C0);">

          <div class="pkg-img-placeholder">المدينة</div>

          <div class="pkg-img-overlay"></div>

          <div class="pkg-badges"><span class="tag tag-green">✓ Best Value</span></div>

          <div class="pkg-fav saved" onclick="event.stopPropagation(); toggleFav(this)">♥</div>

        </div>

        <div class="pkg-body">

          <div class="pkg-agency">Zahra Pilgrimage</div>

          <div class="pkg-name">Economy Umrah — 10 Nights Dual City</div>

          <div class="pkg-meta">

            <span class="pkg-meta-item">📅 10 Nights</span>

            <span class="pkg-meta-item">🏨 4-Star</span>

            <span class="pkg-meta-item">✈️ AirAsia X</span>

          </div>

          <div style="display:flex;align-items:center;gap:10px;margin-bottom:4px;">

            <div class="stars">★★★★☆</div>

            <span style="font-size:0.78rem;color:var(--text-muted)">4.6 (188 reviews)</span>

          </div>

        </div>

        <div class="pkg-footer">

          <div>

            <div class="pkg-price-lbl">Per Person from</div>

            <div class="pkg-price">MYR 4,800 <span>/ pax</span></div>

          </div>

          <div class="pkg-actions">

            <button class="pkg-btn btn-secondary" onclick="event.stopPropagation(); addCompare(this,'Economy Umrah 10N')">Compare</button>

            <button class="pkg-btn btn-primary" onclick="event.stopPropagation(); showPage('detail')">View</button>

          </div>

        </div>

      </div>

      <!-- Card 3 -->

      <div class="pkg-card" onclick="showPage('detail')">

        <div class="pkg-img" style="background: linear-gradient(135deg,#D0D8E8,#C8D0DC);">

          <div class="pkg-img-placeholder">الروضة</div>

          <div class="pkg-img-overlay"></div>

          <div class="pkg-badges"><span class="tag tag-blue">🕌 Ramadan</span></div>

          <div class="pkg-fav" onclick="event.stopPropagation(); toggleFav(this)">♡</div>

        </div>

        <div class="pkg-body">

          <div class="pkg-agency">Nusantara Holy Tours</div>

          <div class="pkg-name">Ramadan Umrah — 21 Nights Spiritual Retreat</div>

          <div class="pkg-meta">

            <span class="pkg-meta-item">📅 21 Nights</span>

            <span class="pkg-meta-item">🏨 5-Star</span>

            <span class="pkg-meta-item">✈️ Saudia</span>

          </div>

          <div style="display:flex;align-items:center;gap:10px;margin-bottom:4px;">

            <div class="stars">★★★★★</div>

            <span style="font-size:0.78rem;color:var(--text-muted)">5.0 (97 reviews)</span>

          </div>

        </div>

        <div class="pkg-footer">

          <div>

            <div class="pkg-price-lbl">Per Person from</div>

            <div class="pkg-price">MYR 14,500 <span>/ pax</span></div>

          </div>

          <div class="pkg-actions">

            <button class="pkg-btn btn-secondary" onclick="event.stopPropagation(); addCompare(this,'Ramadan Umrah 21N')">Compare</button>

            <button class="pkg-btn btn-primary" onclick="event.stopPropagation(); showPage('detail')">View</button>

          </div>

        </div>

      </div>

    </div>

    <div style="text-align:center;margin-top:40px;">

      <button class="btn-secondary" onclick="showPage('results')">View All Packages &nbsp;→</button>

    </div>

  </section>


  <!-- TESTIMONIALS -->

  <section class="section" style="background: var(--white);">

    <div class="section-header">

      <div class="gold-badge" style="margin-bottom:14px">✦ Pilgrim Stories</div>

      <h2 class="section-title">Journeys That<br><em style="color:var(--gold)">Transformed Lives</em></h2>

    </div>

    <div class="testimonials-grid">

      <div class="neu-card testimonial-card">

        <div class="testi-quote">"</div>

        <div class="testi-text">IhramHub made finding the right package so effortless. The comparison tool saved us hours, and the Confirm My Booking feature gave us complete peace of mind after paying the agency.</div>

        <div class="testi-author">

          <div class="testi-avatar">FA</div>

          <div><div class="testi-name">Faridah Ahmad</div><div class="testi-trip">Umrah · Ramadan 2024</div></div>

          <div class="stars" style="margin-left:auto">★★★★★</div>

        </div>

      </div>

      <div class="neu-card testimonial-card">

        <div class="testi-quote">"</div>

        <div class="testi-text">As someone booking for the whole family, the filters were incredibly helpful. Found a premium package within budget. The pilgrimage preparation dashboard kept us perfectly organized.</div>

        <div class="testi-author">

          <div class="testi-avatar">MZ</div>

          <div><div class="testi-name">Muhammad Zulkifli</div><div class="testi-trip">Family Umrah · June 2024</div></div>

          <div class="stars" style="margin-left:auto">★★★★★</div>

        </div>

      </div>

      <div class="neu-card testimonial-card">

        <div class="testi-quote">"</div>

        <div class="testi-text">The agency trust scores are genius. I finally had confidence choosing a lesser-known agency after seeing their verified ratings and pilgrim reviews. Absolutely worth every ringgit.</div>

        <div class="testi-author">

          <div class="testi-avatar">NN</div>

          <div><div class="testi-name">Nur Nabilah</div><div class="testi-trip">Solo Umrah · February 2025</div></div>

          <div class="stars" style="margin-left:auto">★★★★★</div>

        </div>

      </div>

    </div>

  </section>


  <!-- FOOTER -->

  <footer class="footer">

    <div class="footer-grid">

      <div class="footer-brand">

        <div class="nav-logo"><div class="nav-logo-mark">إح</div><div class="nav-logo-text">IHRAM<span>HUB</span></div></div>

        <div class="footer-tagline">The world's first sacred journey marketplace. Compare, book, and travel with complete confidence and peace of mind.</div>

      </div>

      <div class="footer-col">

        <div class="footer-col-title">Platform</div>

        <ul>

          <li>Search Packages</li><li>Compare</li><li>Agency Directory</li><li>Reviews</li>

        </ul>

      </div>

      <div class="footer-col">

        <div class="footer-col-title">For Pilgrims</div>

        <ul>

          <li>My Dashboard</li><li>Bookings</li><li>Prep Checklist</li><li>Community</li>

        </ul>

      </div>

      <div class="footer-col">

        <div class="footer-col-title">Company</div>

        <ul>

          <li>About Us</li><li>For Agencies</li><li>Press</li><li>Contact</li>

        </ul>

      </div>

    </div>

    <div class="footer-bottom">

      <span>© 2025 IhramHub Sdn Bhd. All rights reserved.</span>

      <span>بسم الله الرحمن الرحيم</span>

    </div>

  </footer>

</div>


<!-- =================== PAGE: SEARCH RESULTS =================== -->

<div class="page" id="page-results">

  <div class="results-header">

    <div style="display:flex;align-items:center;gap:12px;margin-bottom:16px;">

      <button class="btn-ghost" onclick="showPage('home')">← Back</button>

      <h2 style="font-family:var(--font-display);font-size:1.5rem;font-weight:500">Search Results</h2>

    </div>

    <div class="results-search-bar">

      <div class="rsc-item">

        <span style="font-size:1.2rem">🛫</span>

        <div><div class="rsc-label">From</div><div class="rsc-val">Kuala Lumpur</div></div>

      </div>

      <div class="rsc-sep">|</div>

      <div class="rsc-item">

        <span style="font-size:1.2rem">📅</span>

        <div><div class="rsc-label">When</div><div class="rsc-val">June 2025</div></div>

      </div>

      <div class="rsc-sep">|</div>

      <div class="rsc-item">

        <span style="font-size:1.2rem">👥</span>

        <div><div class="rsc-label">Pilgrims</div><div class="rsc-val">2 Adults</div></div>

      </div>

      <div class="rsc-sep">|</div>

      <div class="rsc-item">

        <span style="font-size:1.2rem">🕋</span>

        <div><div class="rsc-label">Type</div><div class="rsc-val">Umrah</div></div>

      </div>

      <button class="btn-ghost" style="margin-left:auto" onclick="showPage('home')">✏️ Edit Search</button>

    </div>

  </div>


  <div class="results-body">

    <!-- FILTERS -->

    <aside class="filters-sidebar">

      <div class="filters-sticky">

        <div class="neu-card" style="padding:22px;">

          <div style="display:flex;justify-content:space-between;align-items:center;margin-bottom:18px;">

            <span style="font-weight:500;font-size:0.95rem;">Filters</span>

            <button class="btn-ghost" style="padding:4px 10px;font-size:0.78rem;">Reset All</button>

          </div>


          <div class="filter-section">

            <div class="filter-section-title">Budget (per person)</div>

            <input type="range" class="range-input" min="3000" max="20000" value="12000" oninput="document.getElementById('budget-val').textContent='MYR '+this.value.toLocaleString()">

            <div class="range-labels"><span>MYR 3K</span><span id="budget-val">MYR 12,000</span></div>

          </div>

          <div class="divider"></div>

          <div class="filter-section">

            <div class="filter-section-title">Duration</div>

            <label class="filter-checkbox"><input type="checkbox" checked><div class="filter-check"></div><span class="filter-label">7 – 10 Nights</span><span class="filter-count">34</span></label>

            <label class="filter-checkbox"><input type="checkbox" checked><div class="filter-check"></div><span class="filter-label">11 – 14 Nights</span><span class="filter-count">52</span></label>

            <label class="filter-checkbox"><input type="checkbox"><div class="filter-check"></div><span class="filter-label">15 – 21 Nights</span><span class="filter-count">28</span></label>

            <label class="filter-checkbox"><input type="checkbox"><div class="filter-check"></div><span class="filter-label">22+ Nights</span><span class="filter-count">12</span></label>

          </div>

          <div class="divider"></div>

          <div class="filter-section">

            <div class="filter-section-title">Hotel Star Rating</div>

            <label class="filter-checkbox"><input type="checkbox"><div class="filter-check"></div><span class="filter-label">★★★★★ 5-Star</span><span class="filter-count">38</span></label>

            <label class="filter-checkbox"><input type="checkbox" checked><div class="filter-check"></div><span class="filter-label">★★★★☆ 4-Star</span><span class="filter-count">67</span></label>

            <label class="filter-checkbox"><input type="checkbox"><div class="filter-check"></div><span class="filter-label">★★★☆☆ 3-Star</span><span class="filter-count">29</span></label>

          </div>

          <div class="divider"></div>

          <div class="filter-section">

            <div class="filter-section-title">Airline</div>

            <label class="filter-checkbox"><input type="checkbox" checked><div class="filter-check"></div><span class="filter-label">Malaysia Airlines</span><span class="filter-count">24</span></label>

            <label class="filter-checkbox"><input type="checkbox"><div class="filter-check"></div><span class="filter-label">AirAsia X</span><span class="filter-count">31</span></label>

            <label class="filter-checkbox"><input type="checkbox"><div class="filter-check"></div><span class="filter-label">Saudia</span><span class="filter-count">18</span></label>

            <label class="filter-checkbox"><input type="checkbox"><div class="filter-check"></div><span class="filter-label">Emirates</span><span class="filter-count">15</span></label>

          </div>

          <div class="divider"></div>

          <div class="filter-section">

            <div class="filter-section-title">Agency Trust Score</div>

            <input type="range" class="range-input" min="60" max="100" value="80" oninput="document.getElementById('trust-val').textContent=this.value+'%+'">

            <div class="range-labels"><span>60%</span><span id="trust-val">80%+</span></div>

          </div>

        </div>

      </div>

    </aside>


    <!-- RESULTS -->

    <div class="results-list">

      <div class="results-toolbar">

        <div class="results-count">Showing <strong>126 packages</strong> for Umrah from Kuala Lumpur</div>

        <div style="display:flex;gap:10px;align-items:center;">

          <span style="font-size:0.8rem;color:var(--text-muted)">Sort by:</span>

          <select class="sort-select" style="color:var(--text-primary)">

            <option>Best Match</option>

            <option>Price: Low to High</option>

            <option>Price: High to Low</option>

            <option>Highest Rated</option>

            <option>Shortest Duration</option>

          </select>

        </div>

      </div>


      <!-- Compare Bar -->

      <div class="compare-bar" id="compare-bar">

        <div style="font-size:0.875rem;font-weight:500;">Comparing <span id="compare-count">0</span> packages</div>

        <div class="compare-slots" id="compare-slots">

          <div class="compare-slot"><span class="compare-slot-empty" id="cslot-0">Empty slot</span></div>

          <div class="compare-slot"><span class="compare-slot-empty" id="cslot-1">Empty slot</span></div>

          <div class="compare-slot"><span class="compare-slot-empty" id="cslot-2">Empty slot</span></div>

        </div>

        <button class="btn-primary" style="padding:10px 22px;font-size:0.85rem" onclick="showPage('compare')">Compare Now →</button>

        <button class="btn-ghost" onclick="clearCompare()">Clear</button>

      </div>


      <!-- Result Card 1 -->

      <div class="result-card" onclick="showPage('detail')">

        <div class="result-card-img">

          <div class="result-card-img-ph">الكعبة</div>

          <div class="pkg-badges" style="position:absolute;top:12px;left:12px;"><span class="tag tag-gold">⭐ Top Pick</span></div>

        </div>

        <div class="result-card-body">

          <div class="result-tag-row">

            <span class="tag tag-gold">14 Nights</span>

            <span class="tag tag-green">Visa Included</span>

            <span class="tag tag-blue">5-Star Hotels</span>

          </div>

          <div class="result-name">Premium Umrah — Makkah & Madinah Dual City</div>

          <div class="result-agency-row">

            <div class="result-agency-name">Al-Barakah Travel & Tours Sdn Bhd</div>

            <div class="trust-score">

              <div class="trust-ring" style="--score:96">

                <span class="trust-ring-val">96</span>

              </div>

              <span style="font-size:0.72rem;color:var(--text-muted)">Trust Score</span>

            </div>

          </div>

          <div class="result-features">

            <span class="result-feature">✈️ MAS Airlines</span>

            <span class="result-feature">🏨 5★ Hilton Makkah</span>

            <span class="result-feature">🚌 Private Transport</span>

            <span class="result-feature">🍽️ Full Board</span>

            <span class="result-feature">👨‍🏫 Licensed Mutawwif</span>

            <span class="result-feature">🎫 Visa Included</span>

          </div>

          <div style="display:flex;align-items:center;gap:8px;margin-top:12px;">

            <div class="stars">★★★★★</div>

            <span style="font-size:0.8rem;color:var(--text-secondary)">4.9 · 312 reviews</span>

          </div>

        </div>

        <div class="result-card-footer">

          <div>

            <label class="compare-cb" onclick="event.stopPropagation(); addCompare(this,'Premium Umrah 14N')">

              <input type="checkbox">

              <div class="compare-cb-box"></div>

              Compare

            </label>

            <button class="pkg-fav" onclick="event.stopPropagation(); toggleFav(this)" style="margin-bottom:10px;position:relative;top:0;right:0;width:34px;height:34px;">♡</button>

          </div>

          <div style="text-align:right;">

            <div class="pkg-price-lbl">From</div>

            <div class="pkg-price">MYR 8,200</div>

            <div style="font-size:0.75rem;color:var(--text-muted);">/ person</div>

            <button class="btn-primary" style="margin-top:10px;padding:10px 20px;font-size:0.85rem" onclick="event.stopPropagation();showPage('detail')">View Details</button>

          </div>

        </div>

      </div>


      <!-- Result Card 2 -->

      <div class="result-card" onclick="showPage('detail')">

        <div class="result-card-img" style="background:linear-gradient(135deg,#E0D8C8,#D4CCA8);">

          <div class="result-card-img-ph">المدينة</div>

        </div>

        <div class="result-card-body">

          <div class="result-tag-row">

            <span class="tag tag-gold">10 Nights</span>

            <span class="tag tag-green">Best Value</span>

          </div>

          <div class="result-name">Economy Plus Umrah — Budget-Friendly Sacred Journey</div>

          <div class="result-agency-row">

            <div class="result-agency-name">Zahra Pilgrimage Sdn Bhd</div>

            <div class="trust-score">

              <div class="trust-ring" style="--score:88">

                <span class="trust-ring-val">88</span>

              </div>

              <span style="font-size:0.72rem;color:var(--text-muted)">Trust Score</span>

            </div>

          </div>

          <div class="result-features">

            <span class="result-feature">✈️ AirAsia X</span>

            <span class="result-feature">🏨 4★ Millennium</span>

            <span class="result-feature">🚌 Coach Transport</span>

            <span class="result-feature">🍽️ Breakfast</span>

          </div>

          <div style="display:flex;align-items:center;gap:8px;margin-top:12px;">

            <div class="stars">★★★★☆</div>

            <span style="font-size:0.8rem;color:var(--text-secondary)">4.6 · 188 reviews</span>

          </div>

        </div>

        <div class="result-card-footer">

          <div>

            <label class="compare-cb" onclick="event.stopPropagation(); addCompare(this,'Economy Plus 10N')">

              <input type="checkbox">

              <div class="compare-cb-box"></div>

              Compare

            </label>

          </div>

          <div style="text-align:right;">

            <div class="pkg-price-lbl">From</div>

            <div class="pkg-price">MYR 4,800</div>

            <div style="font-size:0.75rem;color:var(--text-muted);">/ person</div>

            <button class="btn-primary" style="margin-top:10px;padding:10px 20px;font-size:0.85rem" onclick="event.stopPropagation();showPage('detail')">View Details</button>

          </div>

        </div>

      </div>


      <!-- Result Card 3 -->

      <div class="result-card" onclick="showPage('detail')">

        <div class="result-card-img" style="background:linear-gradient(135deg,#C8D4E8,#B8C8D8);">

          <div class="result-card-img-ph">الروضة</div>

          <div class="pkg-badges" style="position:absolute;top:12px;left:12px;"><span class="tag tag-blue">Ramadan 2026</span></div>

        </div>

        <div class="result-card-body">

          <div class="result-tag-row">

            <span class="tag tag-blue">21 Nights</span>

            <span class="tag tag-gold">Ramadan Special</span>

            <span class="tag tag-green">Visa Included</span>

          </div>

          <div class="result-name">Ramadan Umrah Retreat — 21 Nights Full Spiritual Immersion</div>

          <div class="result-agency-row">

            <div class="result-agency-name">Nusantara Holy Tours</div>

            <div class="trust-score">

              <div class="trust-ring" style="--score:94">

                <span class="trust-ring-val">94</span>

              </div>

              <span style="font-size:0.72rem;color:var(--text-muted)">Trust Score</span>

            </div>

          </div>

          <div class="result-features">

            <span class="result-feature">✈️ Saudia</span>

            <span class="result-feature">🏨 5★ Clock Tower</span>

            <span class="result-feature">🚌 Private VIP</span>

            <span class="result-feature">🍽️ Full Board + Iftar</span>

            <span class="result-feature">👨‍🏫 Senior Scholar</span>

          </div>

          <div style="display:flex;align-items:center;gap:8px;margin-top:12px;">

            <div class="stars">★★★★★</div>

            <span style="font-size:0.8rem;color:var(--text-secondary)">5.0 · 97 reviews</span>

          </div>

        </div>

        <div class="result-card-footer">

          <div>

            <label class="compare-cb" onclick="event.stopPropagation(); addCompare(this,'Ramadan 21N')">

              <input type="checkbox">

              <div class="compare-cb-box"></div>

              Compare

            </label>

          </div>

          <div style="text-align:right;">

            <div class="pkg-price-lbl">From</div>

            <div class="pkg-price">MYR 14,500</div>

            <div style="font-size:0.75rem;color:var(--text-muted);">/ person</div>

            <button class="btn-primary" style="margin-top:10px;padding:10px 20px;font-size:0.85rem" onclick="event.stopPropagation();showPage('detail')">View Details</button>

          </div>

        </div>

      </div>


      <div style="text-align:center;padding:20px 0;color:var(--text-muted);font-size:0.875rem;">Showing 3 of 126 packages · <button class="btn-ghost" style="display:inline-flex">Load more →</button></div>

    </div>

  </div>

</div>


<!-- =================== PAGE: PACKAGE DETAIL =================== -->

<div class="page" id="page-detail">

  <div class="detail-hero">

    <div class="detail-hero-ph">الكعبة المشرفة</div>

    <div class="detail-hero-overlay"></div>

    <div class="detail-hero-content">

      <div class="gold-badge" style="margin-bottom:12px;color:var(--gold-light);border-color:rgba(200,169,107,0.3)">Al-Barakah Travel & Tours</div>

      <h1>Premium Umrah — 14 Nights<br>Makkah & Madinah</h1>

      <p>June 15 – June 29, 2025 · Departing Kuala Lumpur</p>

    </div>

  </div>


  <div style="padding:16px clamp(16px,5vw,80px);display:flex;align-items:center;gap:10px;flex-wrap:wrap;border-bottom:1px solid rgba(200,169,107,0.1);">

    <button class="btn-ghost" onclick="showPage('results')">← Results</button>

    <span class="tag tag-gold">14 Nights</span>

    <span class="tag tag-green">Visa Included</span>

    <span class="tag tag-blue">5-Star Hotels</span>

    <span class="tag tag-gold">Full Board</span>

    <div style="margin-left:auto;display:flex;gap:10px;">

      <button class="btn-secondary" onclick="addCompare(this,'Premium Umrah 14N'); showPage('compare')">Add to Compare</button>

      <button class="btn-ghost" onclick="toggleFav(this)">♡ Save</button>

    </div>

  </div>


  <div class="detail-body">

    <div class="detail-main">

      <div class="detail-tabs">

        <span class="detail-tab active" onclick="showDetailTab(this,'tab-overview')">Overview</span>

        <span class="detail-tab" onclick="showDetailTab(this,'tab-itinerary')">Itinerary</span>

        <span class="detail-tab" onclick="showDetailTab(this,'tab-hotels')">Hotels</span>

        <span class="detail-tab" onclick="showDetailTab(this,'tab-reviews')">Reviews</span>

      </div>


      <!-- Overview Tab -->

      <div class="detail-panel active" id="tab-overview">

        <div class="detail-section-title">What's Included</div>

        <div class="inclusions-grid">

          <div class="inclusion-item"><span class="inclusion-icon">✈️</span>Return flights (MAS Airlines)</div>

          <div class="inclusion-item"><span class="inclusion-icon">🏨</span>14 nights 5-star accommodation</div>

          <div class="inclusion-item"><span class="inclusion-icon">🎫</span>Umrah visa processing</div>

          <div class="inclusion-item"><span class="inclusion-icon">🍽️</span>Full board meals (3x daily)</div>

          <div class="inclusion-item"><span class="inclusion-icon">🚌</span>Private VIP transport</div>

          <div class="inclusion-item"><span class="inclusion-icon">👨‍🏫</span>Licensed Mutawwif guide</div>

          <div class="inclusion-item"><span class="inclusion-icon">📋</span>Umrah manasik briefing</div>

          <div class="inclusion-item"><span class="inclusion-icon">🧳</span>Ihram kit included</div>

          <div class="inclusion-item"><span class="inclusion-icon">💊</span>Group insurance coverage</div>

          <div class="inclusion-item"><span class="inclusion-icon">📖</span>Dua & ziyarah guide book</div>

        </div>

        <div class="divider-gold"></div>

        <div class="detail-section-title">About This Package</div>

        <p style="color:var(--text-secondary);line-height:1.8;font-size:0.9rem;margin-bottom:20px;">Experience the journey of a lifetime with our premium 14-night Umrah package. Stay at the iconic Hilton Makkah Convention Hotel — a 2-minute walk from Masjid al-Haram — and the luxurious Madinah Oberoi. This package is designed for pilgrims who seek comfort, guidance, and a deeply spiritual experience without compromise.</p>

        <div style="display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:14px;">

          <div class="neu-card-sm" style="text-align:center;">

            <div style="font-size:1.5rem;margin-bottom:6px;">📏</div>

            <div style="font-size:0.8rem;color:var(--text-muted)">Distance Haram</div>

            <div style="font-weight:600;font-size:1rem;margin-top:2px;">50m</div>

          </div>

          <div class="neu-card-sm" style="text-align:center;">

            <div style="font-size:1.5rem;margin-bottom:6px;">🕌</div>

            <div style="font-size:0.8rem;color:var(--text-muted)">Makkah Nights</div>

            <div style="font-weight:600;font-size:1rem;margin-top:2px;">8 Nights</div>

          </div>

          <div class="neu-card-sm" style="text-align:center;">

            <div style="font-size:1.5rem;margin-bottom:6px;">🌹</div>

            <div style="font-size:0.8rem;color:var(--text-muted)">Madinah Nights</div>

            <div style="font-weight:600;font-size:1rem;margin-top:2px;">6 Nights</div>

          </div>

          <div class="neu-card-sm" style="text-align:center;">

            <div style="font-size:1.5rem;margin-bottom:6px;">👥</div>

            <div style="font-size:0.8rem;color:var(--text-muted)">Group Size</div>

            <div style="font-weight:600;font-size:1rem;margin-top:2px;">Max 30</div>

          </div>

        </div>

      </div>


      <!-- Itinerary Tab -->

      <div class="detail-panel" id="tab-itinerary">

        <div class="detail-section-title">Day-by-Day Itinerary</div>

        <div class="itinerary-item">

          <div class="itinerary-day"><div class="day-num">1</div><div class="day-line"></div></div>

          <div class="itinerary-content"><div class="itinerary-title">Departure from KUL · Arrival Madinah</div><div class="itinerary-desc">Check-in MAS Airlines flight MH060 at KLIA. Arrive at Prince Mohammad Bin Abdul Aziz Airport, Madinah. Transfer to Oberoi Madinah Hotel. Dinner included.</div></div>

        </div>

        <div class="itinerary-item">

          <div class="itinerary-day"><div class="day-num">2–6</div><div class="day-line"></div></div>

          <div class="itinerary-content"><div class="itinerary-title">Madinah — Spiritual Enrichment</div><div class="itinerary-desc">Visits to Masjid Nabawi, Raudhah, Masjid Quba, Masjid Al-Qiblatayn, Uhud Mountain, and Dates Market. Daily lectures with our licensed Ustaz.</div></div>

        </div>

        <div class="itinerary-item">

          <div class="itinerary-day"><div class="day-num">7</div><div class="day-line"></div></div>

          <div class="itinerary-content"><div class="itinerary-title">Transfer to Makkah · Miqat</div><div class="itinerary-desc">Depart Madinah by luxury coach. Don ihram at Miqat Bir Ali. Arrive Makkah and check in to Hilton Makkah Convention Hotel. Begin Umrah rituals.</div></div>

        </div>

        <div class="itinerary-item">

          <div class="itinerary-day"><div class="day-num">8–13</div><div class="day-line"></div></div>

          <div class="itinerary-content"><div class="itinerary-title">Makkah — Tawaf & Worship</div><div class="itinerary-desc">Free time for worship, Tawaf, and Sa'ie. Ziyarah visits to Jabal Rahmah, Muzdalifah, and Mina. Evening reflections and dua sessions with Mutawwif.</div></div>

        </div>

        <div class="itinerary-item">

          <div class="itinerary-day"><div class="day-num">14</div></div>

          <div class="itinerary-content"><div class="itinerary-title">Farewell Tawaf · Departure</div><div class="itinerary-desc">Perform Tawaf al-Wida. Transfer to King Abdul Aziz International Airport. Return flight MH061 to Kuala Lumpur. Arrive KLIA with barakah.</div></div>

        </div>

      </div>


      <!-- Hotels Tab -->

      <div class="detail-panel" id="tab-hotels">

        <div class="detail-section-title">Your Accommodation</div>

        <div class="hotel-card-row">

          <div class="hotel-img">🕌</div>

          <div>

            <div style="font-weight:600;margin-bottom:4px;">Hilton Makkah Convention Hotel</div>

            <div class="stars" style="margin-bottom:4px;">★★★★★</div>

            <div style="font-size:0.8rem;color:var(--text-secondary);">📍 50m from Masjid al-Haram · 8 Nights</div>

            <div style="font-size:0.78rem;color:var(--text-muted);margin-top:4px;">Deluxe room with Kaaba view available</div>

          </div>

        </div>

        <div class="hotel-card-row">

          <div class="hotel-img">🌹</div>

          <div>

            <div style="font-weight:600;margin-bottom:4px;">The Oberoi Madinah</div>

            <div class="stars" style="margin-bottom:4px;">★★★★★</div>

            <div style="font-size:0.8rem;color:var(--text-secondary);">📍 Direct view of Masjid Nabawi · 6 Nights</div>

            <div style="font-size:0.78rem;color:var(--text-muted);margin-top:4px;">Superior room with green dome view</div>

          </div>

        </div>

      </div>


      <!-- Reviews Tab -->

      <div class="detail-panel" id="tab-reviews">

        <div class="detail-section-title">Pilgrim Reviews</div>

        <div style="display:flex;gap:20px;align-items:center;margin-bottom:28px;flex-wrap:wrap;">

          <div style="text-align:center;">

            <div style="font-family:var(--font-display);font-size:4rem;font-weight:600;line-height:1;color:var(--text-primary);">4.9</div>

            <div class="stars" style="font-size:1.2rem;">★★★★★</div>

            <div style="font-size:0.78rem;color:var(--text-muted);margin-top:4px;">312 reviews</div>

          </div>

          <div style="flex:1;min-width:200px;">

            <div style="display:flex;align-items:center;gap:10px;margin-bottom:6px;"><span style="font-size:0.8rem;color:var(--text-muted);width:80px;">Hotel Quality</span><div class="progress-bar" style="flex:1;"><div class="progress-fill" style="width:96%;"></div></div><span style="font-size:0.8rem;width:28px;">4.8</span></div>

            <div style="display:flex;align-items:center;gap:10px;margin-bottom:6px;"><span style="font-size:0.8rem;color:var(--text-muted);width:80px;">Transport</span><div class="progress-bar" style="flex:1;"><div class="progress-fill" style="width:90%;"></div></div><span style="font-size:0.8rem;width:28px;">4.5</span></div>

            <div style="display:flex;align-items:center;gap:10px;margin-bottom:6px;"><span style="font-size:0.8rem;color:var(--text-muted);width:80px;">Guide</span><div class="progress-bar" style="flex:1;"><div class="progress-fill" style="width:98%;"></div></div><span style="font-size:0.8rem;width:28px;">4.9</span></div>

            <div style="display:flex;align-items:center;gap:10px;"><span style="font-size:0.8rem;color:var(--text-muted);width:80px;">Value</span><div class="progress-bar" style="flex:1;"><div class="progress-fill" style="width:92%;"></div></div><span style="font-size:0.8rem;width:28px;">4.6</span></div>

          </div>

        </div>

        <div class="neu-card" style="margin-bottom:14px;padding:20px;">

          <div style="display:flex;justify-content:space-between;margin-bottom:8px;"><span style="font-weight:500;font-size:0.9rem;">Nur Aminah B.</span><div class="stars" style="font-size:0.8rem;">★★★★★</div></div>

          <p style="font-size:0.875rem;color:var(--text-secondary);line-height:1.7;font-style:italic;">"Alhamdulillah, this was the most profound journey of my life. The Mutawwif was exceptionally knowledgeable and patient. The hotel was exactly as advertised — 50 meters from the Haram. Worth every ringgit."</p>

          <div style="font-size:0.72rem;color:var(--text-muted);margin-top:8px;">Traveled December 2024</div>

        </div>

      </div>

    </div>


    <!-- BOOKING SIDEBAR -->

    <div class="detail-sidebar">

      <div class="neu-card booking-card">

        <div class="price-display">

          <div class="price-from">Starting from</div>

          <div class="price-main">MYR 8,200</div>

          <div class="price-per">per person</div>

        </div>

        <div class="divider-gold"></div>

        <div class="price-breakdown">

          <div class="price-row"><span>Package base price</span><span>MYR 7,200</span></div>

          <div class="price-row"><span>Visa & processing</span><span>MYR 650</span></div>

          <div class="price-row"><span>Airport tax</span><span>MYR 350</span></div>

          <div class="divider" style="margin:8px 0;"></div>

          <div class="price-row total"><span>Total per person</span><span>MYR 8,200</span></div>

        </div>

        <button class="btn-primary" style="width:100%;justify-content:center;margin-bottom:10px;" onclick="showPage('booking')">Book This Package →</button>

        <button class="btn-secondary" style="width:100%;justify-content:center;" onclick="addCompare(this,'Premium Umrah 14N'); showPage('compare')">Compare Package</button>

        <div style="text-align:center;margin-top:12px;font-size:0.75rem;color:var(--text-muted);">Free cancellation within 48 hours</div>

        <div class="divider-gold"></div>

        <!-- Agency Card -->

        <div class="agency-card">

          <div style="font-size:0.75rem;text-transform:uppercase;letter-spacing:0.07em;color:var(--text-muted);margin-bottom:12px;">Your Agency</div>

          <div class="agency-info">

            <div class="agency-logo">🕌</div>

            <div>

              <div class="agency-name-main">Al-Barakah Travel</div>

              <div class="agency-since">Est. 2005 · KL Licensed</div>

            </div>

          </div>

          <div class="agency-stats">

            <div class="agency-stat"><div class="agency-stat-val">96</div><div class="agency-stat-lbl">Trust</div></div>

            <div class="agency-stat"><div class="agency-stat-val">4.9★</div><div class="agency-stat-lbl">Rating</div></div>

            <div class="agency-stat"><div class="agency-stat-val">20yr</div><div class="agency-stat-lbl">Exp.</div></div>

          </div>

        </div>

      </div>

    </div>

  </div>

</div>


<!-- =================== PAGE: COMPARE =================== -->

<div class="page" id="page-compare">

  <div class="compare-header">

    <button class="btn-ghost" onclick="showPage('results')" style="margin-bottom:16px;">← Back to Results</button>

    <div class="gold-badge" style="margin-bottom:12px;">Side-by-Side Comparison</div>

    <h2 class="section-title">Compare Packages</h2>

    <p class="section-sub" style="margin-top:8px;">Make the perfect choice for your sacred journey</p>

  </div>


  <div class="compare-table-wrapper">

    <table class="compare-table">

      <thead>

        <tr>

          <th style="width:180px;text-align:left;padding-bottom:24px;"><span style="font-size:0.78rem;text-transform:uppercase;letter-spacing:0.07em;color:var(--text-muted);">FEATURES</span></th>

          <th>

            <div class="compare-pkg-header">

              <div class="compare-pkg-img">الكعبة</div>

              <div style="font-size:0.7rem;color:var(--text-muted);margin-bottom:4px;">Al-Barakah Travel</div>

              <div class="compare-pkg-name">Premium Umrah 14N</div>

              <div class="compare-pkg-price">MYR 8,200</div>

              <div style="margin-top:8px;" class="stars">★★★★★</div>

              <button class="btn-primary" style="width:100%;justify-content:center;margin-top:12px;padding:10px;" onclick="showPage('booking')">Book Now</button>

            </div>

          </th>

          <th>

            <div class="compare-pkg-header">

              <div class="compare-pkg-img">المدينة</div>

              <div style="font-size:0.7rem;color:var(--text-muted);margin-bottom:4px;">Zahra Pilgrimage</div>

              <div class="compare-pkg-name">Economy Plus 10N</div>

              <div class="compare-pkg-price">MYR 4,800</div>

              <div style="margin-top:8px;" class="stars">★★★★☆</div>

              <button class="btn-secondary" style="width:100%;justify-content:center;margin-top:12px;padding:10px;" onclick="showPage('booking')">Book Now</button>

            </div>

          </th>

          <th>

            <div class="compare-pkg-header">

              <div class="compare-pkg-img">الروضة</div>

              <div style="font-size:0.7rem;color:var(--text-muted);margin-bottom:4px;">Nusantara Tours</div>

              <div class="compare-pkg-name">Ramadan 21N</div>

              <div class="compare-pkg-price">MYR 14,500</div>

              <div style="margin-top:8px;" class="stars">★★★★★</div>

              <button class="btn-secondary" style="width:100%;justify-content:center;margin-top:12px;padding:10px;" onclick="showPage('booking')">Book Now</button>

            </div>

          </th>

        </tr>

      </thead>

      <tbody>

        <tr><td class="compare-row-label">Duration</td><td>14 Nights</td><td>10 Nights</td><td>21 Nights</td></tr>

        <tr class="compare-highlight"><td class="compare-row-label">Hotel — Makkah</td><td>5★ Hilton (50m)</td><td>4★ Millennium</td><td>5★ Clock Tower</td></tr>

        <tr><td class="compare-row-label">Hotel — Madinah</td><td>5★ Oberoi</td><td>4★ Le Meridien</td><td>5★ Anwar Al Madinah</td></tr>

        <tr class="compare-highlight"><td class="compare-row-label">Airline</td><td>MAS (Direct)</td><td>AirAsia X</td><td>Saudia (Direct)</td></tr>

        <tr><td class="compare-row-label">Meals</td><td>Full Board</td><td>Breakfast</td><td>Full Board + Iftar</td></tr>

        <tr class="compare-highlight"><td class="compare-row-label">Transport</td><td>Private VIP</td><td>Coach</td><td>Private VIP</td></tr>

        <tr><td class="compare-row-label">Visa Included</td><td><span class="compare-check">✓</span></td><td><span class="compare-check">✓</span></td><td><span class="compare-check">✓</span></td></tr>

        <tr class="compare-highlight"><td class="compare-row-label">Licensed Mutawwif</td><td><span class="compare-check">✓</span></td><td><span class="compare-check">✓</span></td><td><span class="compare-check">✓ (Senior Scholar)</span></td></tr>

        <tr><td class="compare-row-label">Ihram Kit</td><td><span class="compare-check">✓</span></td><td><span class="compare-cross">✗</span></td><td><span class="compare-check">✓</span></td></tr>

        <tr class="compare-highlight"><td class="compare-row-label">Insurance</td><td><span class="compare-check">✓</span></td><td><span class="compare-cross">✗</span></td><td><span class="compare-check">✓</span></td></tr>

        <tr><td class="compare-row-label">Ziyarah Visits</td><td>Full (12 sites)</td><td>Standard (8 sites)</td><td>Full Extended (15)</td></tr>

        <tr class="compare-highlight"><td class="compare-row-label">Trust Score</td>

          <td><div style="display:flex;align-items:center;gap:6px;"><div class="trust-ring" style="--score:96;width:36px;height:36px;"><span class="trust-ring-val" style="font-size:0.6rem;">96</span></div><span style="font-size:0.8rem;">Excellent</span></div></td>

          <td><div style="display:flex;align-items:center;gap:6px;"><div class="trust-ring" style="--score:88;width:36px;height:36px;"><span class="trust-ring-val" style="font-size:0.6rem;">88</span></div><span style="font-size:0.8rem;">Very Good</span></div></td>

          <td><div style="display:flex;align-items:center;gap:6px;"><div class="trust-ring" style="--score:94;width:36px;height:36px;"><span class="trust-ring-val" style="font-size:0.6rem;">94</span></div><span style="font-size:0.8rem;">Excellent</span></div></td>

        </tr>

        <tr><td class="compare-row-label">Overall Rating</td>

          <td><span class="stars">★★★★★</span> 4.9</td>

          <td><span class="stars">★★★★☆</span> 4.6</td>

          <td><span class="stars">★★★★★</span> 5.0</td>

        </tr>

      </tbody>

    </table>

  </div>

</div>


<!-- =================== PAGE: DASHBOARD =================== -->

<div class="page" id="page-dashboard">

  <div class="dashboard-layout">

    <aside class="dashboard-sidebar">

      <div class="dash-avatar-section">

        <div class="dash-avatar">AH</div>

        <div class="dash-name">Ahmad Hassan</div>

        <div class="dash-email">ahmad@email.com</div>

      </div>

      <div class="dash-nav">

        <div class="dash-nav-item active" onclick="showDashSection(this,'dash-overview')"><span class="dash-nav-icon">🏠</span> Overview</div>

        <div class="dash-nav-item" onclick="showDashSection(this,'dash-bookings')"><span class="dash-nav-icon">📋</span> My Bookings</div>

        <div class="dash-nav-item" onclick="showDashSection(this,'dash-confirm')"><span class="dash-nav-icon">✅</span> Confirm Booking</div>

        <div class="dash-nav-item" onclick="showDashSection(this,'dash-saved')"><span class="dash-nav-icon">♡</span> Saved Packages</div>

        <div class="dash-nav-item" onclick="showPage('prep')"><span class="dash-nav-icon">🕋</span> Prep Dashboard</div>

        <div class="dash-nav-item" onclick="showDashSection(this,'dash-messages')"><span class="dash-nav-icon">💬</span> Messages</div>

        <div class="dash-nav-item" onclick="showPage('review')"><span class="dash-nav-icon">⭐</span> Write Review</div>

        <div class="divider"></div>

        <div class="dash-nav-item" onclick="logOut()"><span class="dash-nav-icon">🚪</span> Log Out</div>

      </div>

    </aside>


    <div class="dash-main">


      <!-- OVERVIEW -->

      <div class="dash-section active" id="dash-overview">

        <div class="dash-greeting">Assalamu alaikum, <span>Ahmad</span> 👋</div>

        <div class="dash-sub">Your sacred journey to Makkah is 47 days away. Stay prepared.</div>

        <div class="dash-cards-row">

          <div class="neu-card dash-stat-card"><div class="dash-stat-icon">📋</div><div class="dash-stat-val" style="color:var(--gold)">1</div><div class="dash-stat-lbl">Active Booking</div></div>

          <div class="neu-card dash-stat-card"><div class="dash-stat-icon">♡</div><div class="dash-stat-val">5</div><div class="dash-stat-lbl">Saved Packages</div></div>

          <div class="neu-card dash-stat-card"><div class="dash-stat-icon">✅</div><div class="dash-stat-val" style="color:#48A870">68%</div><div class="dash-stat-lbl">Prep Complete</div></div>

          <div class="neu-card dash-stat-card"><div class="dash-stat-icon">📅</div><div class="dash-stat-val">47</div><div class="dash-stat-lbl">Days to Depart</div></div>

        </div>


        <!-- CONFIRM MY BOOKING — SIGNATURE FEATURE HIGHLIGHT -->

        <div class="confirm-booking-section">

          <div class="confirm-booking-badge"><span class="dot"></span> Action Required</div>

          <div class="confirm-booking-title">Confirm Your Booking with IhramHub</div>

          <div class="confirm-booking-desc">You have made payment to Al-Barakah Travel for your Umrah package (Booking REF: IH-2025-8821). <strong>Tap below to officially confirm</strong> your booking on IhramHub. This activates your tracking, protection, and pilgrimage prep dashboard.</div>

          <button class="btn-confirm-booking" onclick="openConfirmModal()">

            <span class="btn-icon">✅</span> Confirm My Booking

          </button>

        </div>


        <!-- COUNTDOWN -->

        <div class="countdown-widget mb-24">

          <div class="countdown-label">✈ Departure Countdown · KUL → JED</div>

          <div class="countdown-grid">

            <div class="countdown-unit"><div class="countdown-val" id="cd-days">47</div><div class="countdown-unit-lbl">Days</div></div>

            <div class="countdown-unit"><div class="countdown-val" id="cd-hours">14</div><div class="countdown-unit-lbl">Hours</div></div>

            <div class="countdown-unit"><div class="countdown-val" id="cd-mins">32</div><div class="countdown-unit-lbl">Mins</div></div>

            <div class="countdown-unit"><div class="countdown-val" id="cd-secs">08</div><div class="countdown-unit-lbl">Secs</div></div>

          </div>

        </div>


        <!-- Quick Checklist -->

        <div class="neu-card" style="padding:24px;">

          <div style="display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;">

            <div class="detail-section-title" style="margin:0;">Preparation Checklist</div>

            <button class="btn-ghost" onclick="showPage('prep')">View All →</button>

          </div>

          <div class="checklist">

            <div class="check-item done" onclick="toggleCheck(this)"><div class="check-box"></div><span class="check-text">Book Umrah package</span><span class="check-category">Booking</span></div>

            <div class="check-item done" onclick="toggleCheck(this)"><div class="check-box"></div><span class="check-text">Passport validity check (min 6 months)</span><span class="check-category">Documents</span></div>

            <div class="check-item" onclick="toggleCheck(this)"><div class="check-box"></div><span class="check-text">Submit visa application to agency</span><span class="check-category">Visa</span></div>

            <div class="check-item" onclick="toggleCheck(this)"><div class="check-box"></div><span class="check-text">Meningitis vaccination (ACWY)</span><span class="check-category">Health</span></div>

            <div class="check-item" onclick="toggleCheck(this)"><div class="check-box"></div><span class="check-text">Ihram garments ready</span><span class="check-category">Clothing</span></div>

          </div>

        </div>

      </div>


      <!-- BOOKINGS -->

      <div class="dash-section" id="dash-bookings">

        <div class="dash-greeting">My <span>Bookings</span></div>

        <div class="dash-sub">Track and manage your pilgrimage bookings.</div>

        <div class="neu-card" style="margin-bottom:20px;">

          <div style="display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;gap:12px;margin-bottom:20px;">

            <div>

              <div style="font-size:0.72rem;text-transform:uppercase;letter-spacing:0.07em;color:var(--text-muted);margin-bottom:4px;">Booking Reference</div>

              <div style="font-family:var(--font-display);font-size:1.4rem;font-weight:500;color:var(--gold-dark);">IH-2025-8821</div>

            </div>

            <span class="tag tag-gold" style="padding:8px 16px;">⏳ Pending Confirmation</span>

          </div>

          <div style="font-family:var(--font-display);font-size:1.2rem;font-weight:500;margin-bottom:6px;">Premium Umrah — 14 Nights</div>

          <div style="font-size:0.875rem;color:var(--text-secondary);margin-bottom:16px;">Al-Barakah Travel · Jun 15–29, 2025 · 2 Adults</div>

          <div class="progress-bar" style="margin-bottom:8px;"><div class="progress-fill" style="width:40%;"></div></div>

          <div style="font-size:0.78rem;color:var(--text-muted);">Booking progress: 40% · Next: Confirm Payment</div>

          <div class="divider-gold"></div>

          <div style="display:flex;gap:10px;flex-wrap:wrap;">

            <button class="btn-primary" style="padding:10px 20px;font-size:0.85rem;" onclick="showPage('status')">View Status →</button>

            <button class="btn-secondary" style="padding:10px 20px;font-size:0.85rem;" onclick="openConfirmModal()">✅ Confirm My Booking</button>

          </div>

        </div>

      </div>


      <!-- CONFIRM MY BOOKING SECTION -->

      <div class="dash-section" id="dash-confirm">

        <div class="dash-greeting">Confirm My <span>Booking</span></div>

        <div class="dash-sub">After paying your agency, confirm here to activate your full IhramHub protection and tracking.</div>


        <div class="neu-card" style="margin-bottom:24px;padding:28px;">

          <div style="display:flex;gap:16px;margin-bottom:20px;flex-wrap:wrap;">

            <div style="flex:1;min-width:200px;">

              <div style="font-size:0.72rem;text-transform:uppercase;letter-spacing:0.07em;color:var(--text-muted);margin-bottom:4px;">Your Package</div>

              <div style="font-family:var(--font-display);font-size:1.1rem;font-weight:500;">Premium Umrah — 14 Nights</div>

              <div style="font-size:0.85rem;color:var(--text-secondary);">Al-Barakah Travel · REF: IH-2025-8821</div>

            </div>

            <div>

              <div style="font-size:0.72rem;text-transform:uppercase;letter-spacing:0.07em;color:var(--text-muted);margin-bottom:4px;">Total Paid to Agency</div>

              <div style="font-family:var(--font-display);font-size:1.6rem;font-weight:600;color:var(--gold-dark);">MYR 16,400</div>

              <div style="font-size:0.78rem;color:var(--text-muted);">2 Adults × MYR 8,200</div>

            </div>

          </div>

          <div class="divider-gold"></div>

          <div style="margin-bottom:16px;">

            <div style="font-size:0.875rem;font-weight:500;margin-bottom:12px;">Upload Your Payment Proof</div>

            <div style="background:var(--base);box-shadow:var(--neu-inset);border-radius:var(--radius-sm);padding:28px;text-align:center;cursor:pointer;transition:var(--transition);" onclick="showToast('📎 File upload simulated')">

              <div style="font-size:2rem;margin-bottom:8px;">📄</div>

              <div style="font-size:0.875rem;color:var(--text-secondary);">Drop receipt or tap to upload</div>

              <div style="font-size:0.75rem;color:var(--text-muted);margin-top:4px;">PDF, JPG, PNG accepted</div>

            </div>

          </div>

          <div class="form-group" style="margin-bottom:16px;">

            <label>Agency Payment Reference / Receipt Number</label>

            <input class="neu-input" placeholder="e.g. AB-2025-REF-0821" value="AB-2025-REF-0821">

          </div>

          <div class="form-group" style="margin-bottom:20px;">

            <label>Payment Date</label>

            <input class="neu-input" type="date" value="2025-04-10">

          </div>

          <button class="btn-confirm-booking" style="width:100%;justify-content:center;padding:16px;" onclick="openConfirmModal()">

            <span class="btn-icon">✅</span> Confirm My Booking with IhramHub

          </button>

          <div style="text-align:center;margin-top:12px;font-size:0.78rem;color:var(--text-muted);">

            🔒 Your booking details are securely stored and protected by IhramHub

          </div>

        </div>


        <!-- What happens next -->

        <div class="neu-card" style="padding:24px;">

          <div style="font-size:0.875rem;font-weight:500;margin-bottom:16px;">What happens after you confirm?</div>

          <div style="display:flex;flex-direction:column;gap:12px;">

            <div style="display:flex;gap:12px;align-items:flex-start;">

              <div style="width:28px;height:28px;border-radius:50%;background:linear-gradient(135deg,var(--gold),var(--gold-dark));display:flex;align-items:center;justify-content:center;color:white;font-size:0.72rem;font-weight:600;flex-shrink:0;">1</div>

              <div><div style="font-size:0.875rem;font-weight:500;">IhramHub verifies with agency</div><div style="font-size:0.8rem;color:var(--text-secondary);">We cross-verify your payment with the agency within 24 hours.</div></div>

            </div>

            <div style="display:flex;gap:12px;align-items:flex-start;">

              <div style="width:28px;height:28px;border-radius:50%;background:linear-gradient(135deg,var(--gold),var(--gold-dark));display:flex;align-items:center;justify-content:center;color:white;font-size:0.72rem;font-weight:600;flex-shrink:0;">2</div>

              <div><div style="font-size:0.875rem;font-weight:500;">Booking officially activated</div><div style="font-size:0.8rem;color:var(--text-secondary);">Your booking status updates to "Confirmed" and tracking activates.</div></div>

            </div>

            <div style="display:flex;gap:12px;align-items:flex-start;">

              <div style="width:28px;height:28px;border-radius:50%;background:linear-gradient(135deg,var(--gold),var(--gold-dark));display:flex;align-items:center;justify-content:center;color:white;font-size:0.72rem;font-weight:600;flex-shrink:0;">3</div>

              <div><div style="font-size:0.875rem;font-weight:500;">Prep Dashboard unlocked</div><div style="font-size:0.8rem;color:var(--text-secondary);">Access your full pilgrimage preparation tools, documents, and countdown.</div></div>

            </div>

          </div>

        </div>

      </div>


      <!-- SAVED PACKAGES -->

      <div class="dash-section" id="dash-saved">

        <div class="dash-greeting">Saved <span>Packages</span></div>

        <div class="dash-sub">Your shortlisted sacred journeys.</div>

        <div class="packages-grid" style="margin-top:8px;">

          <div class="pkg-card" onclick="showPage('detail')">

            <div class="pkg-img"><div class="pkg-img-placeholder">الكعبة</div><div class="pkg-img-overlay"></div><div class="pkg-fav saved" onclick="event.stopPropagation(); toggleFav(this)">♥</div></div>

            <div class="pkg-body">

              <div class="pkg-agency">Al-Barakah Travel</div>

              <div class="pkg-name">Premium Umrah 14N</div>

              <div class="pkg-footer"><div><div class="pkg-price">MYR 8,200</div></div><button class="pkg-btn btn-primary" onclick="event.stopPropagation();showPage('detail')">View</button></div>

            </div>

          </div>

          <div class="pkg-card" onclick="showPage('detail')">

            <div class="pkg-img" style="background:linear-gradient(135deg,#C8D4E8,#B8C8D8);"><div class="pkg-img-placeholder">الروضة</div><div class="pkg-img-overlay"></div><div class="pkg-fav saved" onclick="event.stopPropagation(); toggleFav(this)">♥</div></div>

            <div class="pkg-body">

              <div class="pkg-agency">Nusantara Tours</div>

              <div class="pkg-name">Ramadan 21N Retreat</div>

              <div class="pkg-footer"><div><div class="pkg-price">MYR 14,500</div></div><button class="pkg-btn btn-primary" onclick="event.stopPropagation();showPage('detail')">View</button></div>

            </div>

          </div>

        </div>

      </div>


      <!-- MESSAGES -->

      <div class="dash-section" id="dash-messages">

        <div class="dash-greeting">Message <span>Center</span></div>

        <div class="dash-sub">Communicate directly with your agency.</div>

        <div class="messages-layout" style="margin-top:16px;">

          <div class="msg-sidebar">

            <div class="msg-sidebar-header">

              <input class="neu-input" placeholder="Search conversations..." style="font-size:0.8rem;padding:10px 14px;">

            </div>

            <div class="msg-thread active">

              <div class="msg-thread-avatar">AB</div>

              <div style="flex:1;overflow:hidden;">

                <div style="display:flex;justify-content:space-between;align-items:center;">

                  <div class="msg-thread-name">Al-Barakah Travel</div>

                  <div class="msg-thread-time">2h ago</div>

                </div>

                <div class="msg-thread-preview">Your visa application has been...</div>

              </div>

            </div>

            <div class="msg-thread">

              <div class="msg-thread-avatar" style="background:linear-gradient(135deg,#B8C8D8,#A0B0C8);">ZP</div>

              <div style="flex:1;overflow:hidden;">

                <div style="display:flex;justify-content:space-between;align-items:center;">

                  <div class="msg-thread-name">Zahra Pilgrimage</div>

                  <div class="msg-thread-time">3d ago</div>

                </div>

                <div class="msg-thread-preview">Thank you for your inquiry...</div>

              </div>

            </div>

          </div>

          <div class="msg-chat">

            <div class="msg-chat-header">

              <div class="msg-thread-avatar">AB</div>

              <div>

                <div style="font-weight:500;font-size:0.9rem;">Al-Barakah Travel</div>

                <div style="font-size:0.75rem;color:var(--text-muted);">Booking IH-2025-8821</div>

              </div>

              <div style="margin-left:auto;">

                <span class="tag tag-green">● Online</span>

              </div>

            </div>

            <div class="msg-chat-body">

              <div class="msg-bubble received">

                <div class="msg-bubble-text">Assalamu alaikum Ahmad! Welcome to Al-Barakah Travel. We have received your booking request for the Premium Umrah 14 Night package.</div>

                <div class="msg-bubble-time">10:24 AM</div>

              </div>

              <div class="msg-bubble sent">

                <div class="msg-bubble-text">Wa alaikum assalam! Thank you. Could you please confirm what documents I need to submit for the visa application?</div>

                <div class="msg-bubble-time">10:31 AM</div>

              </div>

              <div class="msg-bubble received">

                <div class="msg-bubble-text">Of course! You will need: Original passport (min 6 months validity), 4 passport-size photos (white background), and a valid meningitis vaccination certificate. Your visa application has been submitted and should be ready within 5-7 business days insha'Allah.</div>

                <div class="msg-bubble-time">10:45 AM</div>

              </div>

              <div class="msg-bubble sent">

                <div class="msg-bubble-text">JazakAllah khair! I will submit the documents tomorrow.</div>

                <div class="msg-bubble-time">10:48 AM</div>

              </div>

            </div>

            <div class="msg-input-bar">

              <input class="msg-input" placeholder="Type a message..." id="msg-input-field">

              <button class="msg-send-btn" onclick="sendMsg()">➤</button>

            </div>

          </div>

        </div>

      </div>


    </div>

  </div>

</div>


<!-- =================== PAGE: BOOKING WIZARD =================== -->

<div class="page" id="page-booking">

  <div class="booking-wizard">

    <div class="wizard-header">

      <button class="btn-ghost" onclick="showPage('detail')" style="margin-bottom:12px;">← Back to Package</button>

      <div class="gold-badge" style="margin-bottom:12px;">Booking Request</div>

      <h2 style="font-family:var(--font-display);font-size:1.8rem;font-weight:400;">Book Premium Umrah — 14 Nights</h2>

      <p style="color:var(--text-secondary);font-size:0.9rem;margin-top:6px;">Al-Barakah Travel · Jun 15–29, 2025</p>

    </div>


    <!-- Steps -->

    <div class="wizard-steps">

      <div class="wizard-step active" id="ws-1"><div class="ws-circle">1</div><div class="ws-label">Pilgrims</div></div>

      <div class="wizard-step" id="ws-2"><div class="ws-circle">2</div><div class="ws-label">Room Type</div></div>

      <div class="wizard-step" id="ws-3"><div class="ws-circle">3</div><div class="ws-label">Confirm</div></div>

      <div class="wizard-step" id="ws-4"><div class="ws-circle">4</div><div class="ws-label">Submit</div></div>

    </div>


    <!-- Panel 1: Pilgrim Details -->

    <div class="wizard-panel active" id="wp-1">

      <div class="neu-card" style="margin-bottom:24px;">

        <div style="font-family:var(--font-display);font-size:1.1rem;font-weight:500;margin-bottom:20px;">Pilgrim 1 Details</div>

        <div class="form-row form-row-2">

          <div class="form-group"><label>First Name</label><input class="neu-input" placeholder="Ahmad" value="Ahmad"></div>

          <div class="form-group"><label>Last Name</label><input class="neu-input" placeholder="Hassan" value="Hassan"></div>

        </div>

        <div class="form-row form-row-3">

          <div class="form-group"><label>Passport No.</label><input class="neu-input" placeholder="A12345678"></div>

          <div class="form-group"><label>Date of Birth</label><input class="neu-input" type="date" value="1985-06-15"></div>

          <div class="form-group"><label>Nationality</label><select class="neu-select"><option>Malaysian</option><option>Indonesian</option><option>Singaporean</option></select></div>

        </div>

        <div class="form-row">

          <div class="form-group"><label>Mahram / Relationship</label><select class="neu-select"><option>Self (Pilgrim 1)</option><option>Spouse</option><option>Parent</option><option>Child</option></select></div>

        </div>

      </div>

      <div class="neu-card" style="margin-bottom:24px;">

        <div style="font-family:var(--font-display);font-size:1.1rem;font-weight:500;margin-bottom:20px;">Pilgrim 2 Details</div>

        <div class="form-row form-row-2">

          <div class="form-group"><label>First Name</label><input class="neu-input" placeholder="Siti"></div>

          <div class="form-group"><label>Last Name</label><input class="neu-input" placeholder="Hassan"></div>

        </div>

        <div class="form-row form-row-3">

          <div class="form-group"><label>Passport No.</label><input class="neu-input" placeholder="B98765432"></div>

          <div class="form-group"><label>Date of Birth</label><input class="neu-input" type="date" value="1987-09-22"></div>

          <div class="form-group"><label>Nationality</label><select class="neu-select"><option>Malaysian</option></select></div>

        </div>

      </div>

      <div class="wizard-nav">

        <div></div>

        <button class="btn-primary" onclick="nextWizardStep(2)">Continue to Room Selection →</button>

      </div>

    </div>


    <!-- Panel 2: Room Type -->

    <div class="wizard-panel" id="wp-2">

      <div class="detail-section-title">Select Your Room Type</div>

      <div class="room-option selected" onclick="selectRoom(this)">

        <input type="radio" name="room" checked>

        <div class="room-option-info"><div class="room-option-name">Double Room — Kaaba View</div><div class="room-option-desc">King bed · 2 adults · Hilton Makkah</div></div>

        <div class="room-option-price">+MYR 1,200</div>

      </div>

      <div class="room-option" onclick="selectRoom(this)">

        <input type="radio" name="room">

        <div class="room-option-info"><div class="room-option-name">Double Room — City View</div><div class="room-option-desc">King bed · 2 adults · Hilton Makkah</div></div>

        <div class="room-option-price">Included</div>

      </div>

      <div class="room-option" onclick="selectRoom(this)">

        <input type="radio" name="room">

        <div class="room-option-info"><div class="room-option-name">Quad Room — Shared</div><div class="room-option-desc">2 beds · 4 adults · Hilton Makkah</div></div>

        <div class="room-option-price">-MYR 800</div>

      </div>

      <div class="room-option" onclick="selectRoom(this)">

        <input type="radio" name="room">

        <div class="room-option-info"><div class="room-option-name">Suite — Haram View</div><div class="room-option-desc">Living room + bedroom · Hilton Makkah</div></div>

        <div class="room-option-price">+MYR 3,600</div>

      </div>

      <div class="wizard-nav">

        <button class="btn-secondary" onclick="nextWizardStep(1)">← Back</button>

        <button class="btn-primary" onclick="nextWizardStep(3)">Continue to Confirmation →</button>

      </div>

    </div>


    <!-- Panel 3: Order Summary -->

    <div class="wizard-panel" id="wp-3">

      <div class="order-summary">

        <div class="order-summary-title">Booking Summary</div>

        <div class="summary-pkg-row">

          <div class="summary-pkg-img">الكعبة</div>

          <div>

            <div style="font-family:var(--font-display);font-size:1.1rem;font-weight:500;">Premium Umrah — 14 Nights</div>

            <div style="font-size:0.85rem;color:var(--text-secondary);">Al-Barakah Travel · Jun 15–29, 2025</div>

            <div style="font-size:0.8rem;color:var(--text-muted);margin-top:4px;">2 Adults · Double Room Kaaba View</div>

          </div>

        </div>

        <div class="divider-gold"></div>

        <div class="price-row"><span>Base package × 2</span><span>MYR 16,400</span></div>

        <div class="price-row"><span>Kaaba View upgrade × 2</span><span>MYR 2,400</span></div>

        <div class="price-row"><span>Ihram kit × 2</span><span>MYR 200</span></div>

        <div class="price-row"><span style="color:#48A870">Early bird discount</span><span style="color:#48A870">-MYR 500</span></div>

        <div class="divider-gold"></div>

        <div class="price-row total"><span>Total</span><span style="color:var(--gold-dark);font-family:var(--font-display);font-size:1.3rem;">MYR 18,500</span></div>

        <div style="background:rgba(200,169,107,0.08);border-radius:var(--radius-xs);padding:14px;margin-top:16px;font-size:0.82rem;color:var(--text-secondary);line-height:1.65;">

          ℹ️ This is a <strong>booking request</strong>. After confirmation from the agency, you will receive payment instructions. Use IhramHub's <strong>"Confirm My Booking"</strong> after payment to activate full protection.

        </div>

      </div>

      <div class="wizard-nav" style="margin-top:20px;">

        <button class="btn-secondary" onclick="nextWizardStep(2)">← Back</button>

        <button class="btn-primary" onclick="nextWizardStep(4)">Send Booking Request →</button>

      </div>

    </div>


    <!-- Panel 4: Submitted -->

    <div class="wizard-panel" id="wp-4">

      <div class="neu-card" style="text-align:center;padding:48px 32px;">

        <div style="width:80px;height:80px;border-radius:50%;background:linear-gradient(135deg,#48A870,#2D7A52);display:flex;align-items:center;justify-content:center;font-size:2rem;color:white;margin:0 auto 20px;box-shadow:4px 4px 16px rgba(45,122,82,0.3);">✓</div>

        <div style="font-family:var(--font-arabic);font-size:1.8rem;color:var(--gold);margin-bottom:8px;">ماشاء الله</div>

        <div style="font-family:var(--font-display);font-size:1.6rem;font-weight:500;margin-bottom:8px;">Booking Request Sent!</div>

        <div style="font-size:0.9rem;color:var(--text-secondary);max-width:400px;margin:0 auto 24px;line-height:1.7;">Your booking request has been sent to Al-Barakah Travel. You will receive a confirmation within 24 hours insha'Allah.</div>

        <div style="background:var(--base);border-radius:var(--radius-sm);box-shadow:var(--neu-inset);padding:16px;margin-bottom:28px;display:inline-block;">

          <div style="font-size:0.72rem;text-transform:uppercase;letter-spacing:0.07em;color:var(--text-muted);">Your Reference</div>

          <div style="font-family:var(--font-display);font-size:1.4rem;font-weight:600;color:var(--gold-dark);">IH-2025-8821</div>

        </div>

        <div style="display:flex;gap:12px;justify-content:center;flex-wrap:wrap;">

          <button class="btn-primary" onclick="logIn(); showPage('dashboard'); showDashSection(null,'dash-confirm')">✅ Confirm My Booking</button>

          <button class="btn-secondary" onclick="showPage('status')">Track Booking →</button>

        </div>

      </div>

    </div>

  </div>

</div>


<!-- =================== PAGE: BOOKING STATUS =================== -->

<div class="page" id="page-status">

  <div class="status-page">

    <button class="btn-ghost" onclick="showPage('dashboard')" style="margin-bottom:16px;">← My Dashboard</button>


    <div class="status-hero-card">

      <div class="booking-ref">Booking Reference</div>

      <div class="booking-ref-val">IH-2025-8821</div>

      <div class="status-badge-big">⏳ Awaiting Payment Confirmation</div>

      <div style="font-family:var(--font-display);font-size:1.2rem;font-weight:500;margin-bottom:4px;">Premium Umrah — 14 Nights</div>

      <div style="color:rgba(255,255,255,0.6);font-size:0.875rem;">Al-Barakah Travel · June 15–29, 2025</div>

      <div class="status-meta-row">

        <div class="status-meta-item"><div class="status-meta-lbl">Pilgrims</div><div class="status-meta-val">2 Adults</div></div>

        <div class="status-meta-item"><div class="status-meta-lbl">Total</div><div class="status-meta-val">MYR 18,500</div></div>

        <div class="status-meta-item"><div class="status-meta-lbl">Departure</div><div class="status-meta-val">Jun 15, 2025</div></div>

      </div>

    </div>


    <div class="neu-card" style="margin-bottom:24px;padding:28px;">

      <div style="font-family:var(--font-display);font-size:1.2rem;font-weight:500;margin-bottom:24px;">Booking Journey</div>

      <div class="status-timeline">

        <div class="st-item">

          <div class="st-line-wrap"><div class="st-dot done">✓</div><div class="st-connector"></div></div>

          <div class="st-content"><div class="st-title">Booking Request Submitted</div><div class="st-sub">Request sent to Al-Barakah Travel</div><div class="st-time">Apr 5, 2025 · 10:24 AM</div></div>

        </div>

        <div class="st-item">

          <div class="st-line-wrap"><div class="st-dot done">✓</div><div class="st-connector"></div></div>

          <div class="st-content"><div class="st-title">Agency Confirmed Booking Slot</div><div class="st-sub">Your slot is secured. Proceed with payment.</div><div class="st-time">Apr 6, 2025 · 2:15 PM</div></div>

        </div>

        <div class="st-item">

          <div class="st-line-wrap"><div class="st-dot active">⟳</div><div class="st-connector"></div></div>

          <div class="st-content">

            <div class="st-title">Awaiting Payment + Confirmation</div>

            <div class="st-sub">Pay agency and click "Confirm My Booking" on IhramHub</div>

            <div class="st-time">Action required</div>

            <button class="btn-confirm-booking" style="margin-top:12px;padding:12px 22px;font-size:0.85rem;" onclick="openConfirmModal()"><span class="btn-icon">✅</span>Confirm My Booking</button>

          </div>

        </div>

        <div class="st-item">

          <div class="st-line-wrap"><div class="st-dot waiting">4</div><div class="st-connector"></div></div>

          <div class="st-content"><div class="st-title" style="color:var(--text-muted);">Visa Processing</div><div class="st-sub" style="color:var(--text-muted);">Estimated 5-7 business days</div></div>

        </div>

        <div class="st-item">

          <div class="st-line-wrap"><div class="st-dot waiting">5</div><div class="st-connector"></div></div>

          <div class="st-content"><div class="st-title" style="color:var(--text-muted);">Flight Tickets Issued</div><div class="st-sub" style="color:var(--text-muted);">E-tickets sent to your email</div></div>

        </div>

        <div class="st-item">

          <div class="st-line-wrap"><div class="st-dot waiting">6</div></div>

          <div class="st-content"><div class="st-title" style="color:var(--text-muted);">Departure Ready ✈️</div><div class="st-sub" style="color:var(--text-muted);">Jun 15, 2025 · KUL → JED</div></div>

        </div>

      </div>

    </div>


    <div class="neu-card-sm" style="margin-bottom:20px;">

      <div style="display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;">

        <div>

          <div style="font-weight:500;margin-bottom:4px;">Need help with your booking?</div>

          <div style="font-size:0.8rem;color:var(--text-secondary);">Message Al-Barakah Travel directly</div>

        </div>

        <button class="btn-secondary" style="padding:10px 20px;font-size:0.85rem;" onclick="logIn();showPage('dashboard');showDashSection(null,'dash-messages')">Open Chat →</button>

      </div>

    </div>

  </div>

</div>


<!-- =================== PAGE: PILGRIMAGE PREP =================== -->

<div class="page" id="page-prep">

  <div class="prep-body">

    <button class="btn-ghost" onclick="showPage('dashboard')" style="margin-bottom:16px;">← Dashboard</button>


    <div class="prep-header-card">

      <div class="prep-header-info">

        <h2>Pilgrimage Preparation</h2>

        <p>Your comprehensive pre-departure guide · Jun 15, 2025</p>

      </div>

      <div class="countdown-widget" style="width:280px;">

        <div class="countdown-label">✈ Days to Departure</div>

        <div class="countdown-grid">

          <div class="countdown-unit"><div class="countdown-val">47</div><div class="countdown-unit-lbl">Days</div></div>

          <div class="countdown-unit"><div class="countdown-val">14</div><div class="countdown-unit-lbl">Hours</div></div>

          <div class="countdown-unit"><div class="countdown-val">32</div><div class="countdown-unit-lbl">Mins</div></div>

          <div class="countdown-unit"><div class="countdown-val">08</div><div class="countdown-unit-lbl">Secs</div></div>

        </div>

      </div>

    </div>


    <div class="prep-grid">

      <!-- Progress -->

      <div class="neu-card">

        <div class="prep-section-title">Overall Readiness</div>

        <div class="progress-ring-wrap">

          <div class="progress-ring-chart">

            <svg viewBox="0 0 80 80" width="80" height="80">

              <defs><linearGradient id="goldGrad" x1="0%" y1="0%" x2="100%" y2="0%"><stop offset="0%" style="stop-color:var(--gold)"/><stop offset="100%" style="stop-color:var(--gold-dark)"/></linearGradient></defs>

              <circle class="prc-bg" cx="40" cy="40" r="34" stroke-dasharray="213.6" stroke-dashoffset="0"/>

              <circle class="prc-fill" cx="40" cy="40" r="34" stroke-dasharray="213.6" stroke-dashoffset="68"/>

            </svg>

            <div class="prc-label">68%</div>

          </div>

          <div>

            <div style="font-weight:500;font-size:1.1rem;">68% Ready</div>

            <div style="font-size:0.8rem;color:var(--text-secondary);margin-top:2px;">13 of 19 tasks done</div>

            <div style="font-size:0.78rem;color:var(--text-muted);margin-top:4px;">6 tasks remaining</div>

          </div>

        </div>

        <div class="divider"></div>

        <div style="display:grid;grid-template-columns:1fr 1fr;gap:10px;">

          <div style="text-align:center;padding:12px;background:var(--base);border-radius:var(--radius-xs);box-shadow:var(--neu-shadow-sm);">

            <div style="font-size:1.3rem;font-weight:600;color:#48A870;font-family:var(--font-display);">6/6</div>

            <div style="font-size:0.72rem;color:var(--text-muted);">Documents</div>

          </div>

          <div style="text-align:center;padding:12px;background:var(--base);border-radius:var(--radius-xs);box-shadow:var(--neu-shadow-sm);">

            <div style="font-size:1.3rem;font-weight:600;color:var(--gold-dark);font-family:var(--font-display);">3/5</div>

            <div style="font-size:0.72rem;color:var(--text-muted);">Health</div>

          </div>

          <div style="text-align:center;padding:12px;background:var(--base);border-radius:var(--radius-xs);box-shadow:var(--neu-shadow-sm);">

            <div style="font-size:1.3rem;font-weight:600;color:var(--gold-dark);font-family:var(--font-display);">2/4</div>

            <div style="font-size:0.72rem;color:var(--text-muted);">Packing</div>

          </div>

          <div style="text-align:center;padding:12px;background:var(--base);border-radius:var(--radius-xs);box-shadow:var(--neu-shadow-sm);">

            <div style="font-size:1.3rem;font-weight:600;color:#E07020;font-family:var(--font-display);">2/4</div>

            <div style="font-size:0.72rem;color:var(--text-muted);">Spiritual</div>

          </div>

        </div>

      </div>


      <!-- Checklist -->

      <div class="neu-card">

        <div class="prep-section-title">Preparation Checklist</div>

        <div class="checklist-category-title">📄 Documents</div>

        <div class="checklist">

          <div class="check-item done" onclick="toggleCheck(this)"><div class="check-box"></div><span class="check-text">Valid passport (6+ months)</span></div>

          <div class="check-item done" onclick="toggleCheck(this)"><div class="check-box"></div><span class="check-text">Visa application submitted</span></div>

          <div class="check-item done" onclick="toggleCheck(this)"><div class="check-box"></div><span class="check-text">IC / MyKad copy</span></div>

        </div>

        <div class="checklist-category-title">💉 Health</div>

        <div class="checklist">

          <div class="check-item done" onclick="toggleCheck(this)"><div class="check-box"></div><span class="check-text">Meningitis vaccination (ACWY)</span></div>

          <div class="check-item" onclick="toggleCheck(this)"><div class="check-box"></div><span class="check-text">COVID-19 documentation</span></div>

          <div class="check-item" onclick="toggleCheck(this)"><div class="check-box"></div><span class="check-text">Prescription medication supply</span></div>

        </div>

        <div class="checklist-category-title">🧳 Packing</div>

        <div class="checklist">

          <div class="check-item done" onclick="toggleCheck(this)"><div class="check-box"></div><span class="check-text">Ihram garments (2 sets)</span></div>

          <div class="check-item" onclick="toggleCheck(this)"><div class="check-box"></div><span class="check-text">Prayer mat & Quran</span></div>

        </div>

      </div>


      <!-- Spiritual Prep full width -->

      <div class="neu-card prep-full">

        <div class="prep-section-title">Daily Dua & Spiritual Prep</div>

        <div style="display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px;">

          <div class="neu-card-sm dua-card">

            <div style="font-size:0.72rem;text-transform:uppercase;letter-spacing:0.07em;color:var(--gold-dark);margin-bottom:10px;font-weight:500;">Dua for Travel</div>

            <div class="dua-arabic">اللَّهُمَّ إِنِّي أَسْأَلُكَ فِي سَفَرِي هَذَا الْبِرَّ وَالتَّقْوَى</div>

            <div class="dua-transliteration">Allahumma inni as'aluka fi safari hadha al-birra wat-taqwa...</div>

            <div class="dua-meaning">O Allah, I ask you in this journey for righteousness and piety.</div>

          </div>

          <div class="neu-card-sm dua-card">

            <div style="font-size:0.72rem;text-transform:uppercase;letter-spacing:0.07em;color:var(--gold-dark);margin-bottom:10px;font-weight:500;">Talbiyah</div>

            <div class="dua-arabic">لَبَّيْكَ اللَّهُمَّ لَبَّيْكَ، لَبَّيْكَ لَا شَرِيكَ لَكَ لَبَّيْكَ</div>

            <div class="dua-transliteration">Labbayk Allahumma labbayk, Labbayk la shareeka laka labbayk...</div>

            <div class="dua-meaning">Here I am O Allah, here I am. Here I am, You have no partner, here I am.</div>

          </div>

          <div class="neu-card-sm dua-card">

            <div style="font-size:0.72rem;text-transform:uppercase;letter-spacing:0.07em;color:var(--gold-dark);margin-bottom:10px;font-weight:500;">Dua upon seeing Kaaba</div>

            <div class="dua-arabic">اللَّهُمَّ أَنْتَ السَّلَامُ وَمِنْكَ السَّلَامُ</div>

            <div class="dua-transliteration">Allahumma anta as-salamu wa minka as-salam...</div>

            <div class="dua-meaning">O Allah, You are Peace and from You comes peace.</div>

          </div>

        </div>

      </div>

    </div>

  </div>

</div>


<!-- =================== PAGE: REVIEW =================== -->

<div class="page" id="page-review">

  <div class="review-body">

    <button class="btn-ghost" onclick="showPage('dashboard')" style="margin-bottom:16px;">← Dashboard</button>

    <div class="gold-badge" style="margin-bottom:16px;">✦ Share Your Experience</div>

    <h2 style="font-family:var(--font-display);font-size:1.8rem;font-weight:400;margin-bottom:6px;">Write a Review</h2>

    <p style="color:var(--text-secondary);font-size:0.9rem;margin-bottom:32px;">Help future pilgrims make the right choice with your honest experience.</p>


    <div class="neu-card-sm" style="display:flex;gap:14px;margin-bottom:28px;align-items:center;">

      <div style="width:50px;height:50px;border-radius:var(--radius-xs);background:linear-gradient(135deg,var(--base-deeper),var(--base-dark));display:flex;align-items:center;justify-content:center;font-family:var(--font-arabic);font-size:1.5rem;color:rgba(200,169,107,0.4);">الكعبة</div>

      <div>

        <div style="font-family:var(--font-display);font-size:1.1rem;font-weight:500;">Premium Umrah — 14 Nights</div>

        <div style="font-size:0.8rem;color:var(--text-secondary);">Al-Barakah Travel · June 2025</div>

      </div>

    </div>


    <div class="neu-card" style="margin-bottom:20px;padding:28px;">

      <div style="font-weight:500;margin-bottom:8px;">Overall Rating</div>

      <div class="star-selector" id="overall-stars">

        <span class="star-btn selected" onclick="setStars(1)">★</span>

        <span class="star-btn selected" onclick="setStars(2)">★</span>

        <span class="star-btn selected" onclick="setStars(3)">★</span>

        <span class="star-btn selected" onclick="setStars(4)">★</span>

        <span class="star-btn selected" onclick="setStars(5)">★</span>

      </div>


      <div class="divider"></div>


      <div class="review-category">

        <div class="review-cat-title">Hotel Quality</div>

        <div class="rating-slider-wrap">

          <input type="range" class="range-input" min="1" max="5" value="5" oninput="this.nextElementSibling.textContent=this.value" style="flex:1;">

          <span class="rating-val">5</span>

        </div>

      </div>

      <div class="review-category">

        <div class="review-cat-title">Transport</div>

        <div class="rating-slider-wrap">

          <input type="range" class="range-input" min="1" max="5" value="4" oninput="this.nextElementSibling.textContent=this.value" style="flex:1;">

          <span class="rating-val">4</span>

        </div>

      </div>

      <div class="review-category">

        <div class="review-cat-title">Mutawwif / Guide Quality</div>

        <div class="rating-slider-wrap">

          <input type="range" class="range-input" min="1" max="5" value="5" oninput="this.nextElementSibling.textContent=this.value" style="flex:1;">

          <span class="rating-val">5</span>

        </div>

      </div>

      <div class="review-category">

        <div class="review-cat-title">Value for Money</div>

        <div class="rating-slider-wrap">

          <input type="range" class="range-input" min="1" max="5" value="4" oninput="this.nextElementSibling.textContent=this.value" style="flex:1;">

          <span class="rating-val">4</span>

        </div>

      </div>

    </div>


    <div class="neu-card" style="margin-bottom:20px;padding:28px;">

      <div class="form-group" style="margin-bottom:16px;">

        <label>Your Review Title</label>

        <input class="neu-input" placeholder="Sum up your experience in one line..." value="Alhamdulillah — a journey that changed my heart">

      </div>

      <div class="form-group">

        <label>Your Full Review</label>

        <textarea class="neu-input" style="height:120px;resize:vertical;line-height:1.6;" placeholder="Share details about the hotel, guides, transport, spiritual atmosphere...">This was truly a blessed and well-organized journey. The hotel was exactly as described — beautifully close to the Haram. Our Mutawwif, Ustaz Rahman, was incredibly knowledgeable and patient. The meals were excellent and halal. I would absolutely recommend Al-Barakah Travel to any pilgrim.</textarea>

      </div>

    </div>


    <div style="display:flex;gap:12px;flex-wrap:wrap;">

      <button class="btn-primary" onclick="submitReview()">Submit Review ✦</button>

      <button class="btn-secondary" onclick="showPage('dashboard')">Cancel</button>

    </div>

  </div>

</div>


<!-- =================== MODALS =================== -->


<!-- LOGIN MODAL -->

<div class="modal-overlay" id="login-modal">

  <div class="modal-box">

    <div class="modal-close" onclick="closeModal('login-modal')">×</div>

    <div style="text-align:center;margin-bottom:24px;">

      <div class="nav-logo" style="justify-content:center;margin-bottom:12px;"><div class="nav-logo-mark">إح</div><div class="nav-logo-text">IHRAM<span>HUB</span></div></div>

      <p style="font-size:0.875rem;color:var(--text-secondary);">Welcome to your sacred journey platform</p>

    </div>

    <div class="auth-tabs">

      <div class="auth-tab active" onclick="setAuthTab(this,'login')">Log In</div>

      <div class="auth-tab" onclick="setAuthTab(this,'signup')">Sign Up</div>

    </div>

    <!-- Login Form -->

    <div class="auth-form active" id="auth-login">

      <div class="auth-input-group"><label>Email Address</label><input class="neu-input" type="email" placeholder="ahmad@email.com"></div>

      <div class="auth-input-group"><label>Password</label><input class="neu-input" type="password" placeholder="••••••••"></div>

      <div style="text-align:right;margin-bottom:20px;"><span style="font-size:0.8rem;color:var(--gold-dark);cursor:pointer;">Forgot password?</span></div>

      <button class="btn-primary" style="width:100%;justify-content:center;" onclick="logIn(); closeModal('login-modal'); showToast('🕋 Welcome back, Ahmad!')">Log In to IhramHub</button>

      <div class="social-divider"><span>or continue with</span></div>

      <div class="social-btns">

        <button class="social-btn" onclick="logIn(); closeModal('login-modal'); showToast('🕋 Welcome back!')">🔵 Google</button>

        <button class="social-btn" onclick="logIn(); closeModal('login-modal'); showToast('🕋 Welcome back!')">⬛ Apple</button>

      </div>

    </div>

    <!-- Signup Form -->

    <div class="auth-form" id="auth-signup">

      <div class="form-row form-row-2" style="margin-bottom:0;">

        <div class="auth-input-group"><label>First Name</label><input class="neu-input" placeholder="Ahmad"></div>

        <div class="auth-input-group"><label>Last Name</label><input class="neu-input" placeholder="Hassan"></div>

      </div>

      <div class="auth-input-group"><label>Email Address</label><input class="neu-input" type="email" placeholder="ahmad@email.com"></div>

      <div class="auth-input-group"><label>Password</label><input class="neu-input" type="password" placeholder="Minimum 8 characters"></div>

      <button class="btn-primary" style="width:100%;justify-content:center;margin-top:4px;" onclick="logIn(); closeModal('login-modal'); showToast('🕋 Account created! Welcome to IhramHub.')">Create My Account</button>

      <p style="font-size:0.75rem;color:var(--text-muted);text-align:center;margin-top:12px;line-height:1.5;">By signing up, you agree to our Terms of Service and Privacy Policy. Barakallah feekum.</p>

    </div>

  </div>

</div>


<!-- CONFIRM BOOKING MODAL -->

<div class="modal-overlay" id="confirm-modal">

  <div class="modal-box confirm-modal-box">

    <div class="modal-close" onclick="closeModal('confirm-modal')">×</div>

    <div class="confirm-success-icon">✅</div>

    <div style="font-family:var(--font-arabic);font-size:1.5rem;color:var(--gold);margin-bottom:6px;">بارك الله فيك</div>

    <h3 style="font-family:var(--font-display);font-size:1.5rem;font-weight:500;margin-bottom:8px;">Booking Confirmed!</h3>

    <p style="font-size:0.875rem;color:var(--text-secondary);line-height:1.7;margin-bottom:24px;">Your booking for <strong>Premium Umrah 14 Nights</strong> with Al-Barakah Travel has been confirmed on IhramHub. Your pilgrimage protection and tracking are now active.</p>

    <div style="background:rgba(72,168,112,0.1);border:1px solid rgba(72,168,112,0.2);border-radius:var(--radius-sm);padding:16px;margin-bottom:24px;text-align:left;">

      <div style="display:flex;flex-direction:column;gap:8px;">

        <div style="display:flex;justify-content:space-between;font-size:0.85rem;"><span style="color:var(--text-muted);">Reference</span><span style="font-weight:500;">IH-2025-8821</span></div>

        <div style="display:flex;justify-content:space-between;font-size:0.85rem;"><span style="color:var(--text-muted);">Status</span><span style="color:#48A870;font-weight:500;">✓ Confirmed</span></div>

        <div style="display:flex;justify-content:space-between;font-size:0.85rem;"><span style="color:var(--text-muted);">Departure</span><span style="font-weight:500;">Jun 15, 2025</span></div>

      </div>

    </div>

    <div style="display:flex;gap:10px;justify-content:center;flex-wrap:wrap;">

      <button class="btn-primary" onclick="closeModal('confirm-modal'); showPage('prep')">Open Prep Dashboard →</button>

      <button class="btn-secondary" onclick="closeModal('confirm-modal')">Done</button>

    </div>

  </div>

</div>


<!-- TOAST -->

<div class="toast" id="toast">

  <span class="toast-icon">✓</span>

  <span id="toast-msg">Action completed</span>

</div>


<!-- =================== JAVASCRIPT =================== -->

<script>

// State

let isLoggedIn = false;

let compareList = [];

let currentWizardStep = 1;


// === LOADER ===

window.addEventListener('load', () => {

  setTimeout(() => {

    document.getElementById('loader').classList.add('hide');

    setTimeout(() => document.getElementById('loader').remove(), 500);

  }, 1800);

});


// === PAGE NAVIGATION ===

function showPage(pageId) {

  document.querySelectorAll('.page').forEach(p => p.classList.remove('active'));

  const target = document.getElementById('page-' + pageId);

  if (target) { target.classList.add('active'); window.scrollTo({top:0,behavior:'smooth'}); }

}


// === TOAST ===

function showToast(msg, duration=3200) {

  const t = document.getElementById('toast');

  document.getElementById('toast-msg').textContent = msg;

  t.classList.add('show');

  setTimeout(() => t.classList.remove('show'), duration);

}


// === MODAL ===

function openModal(id) { document.getElementById(id).classList.add('open'); }

function closeModal(id) { document.getElementById(id).classList.remove('open'); }

document.querySelectorAll('.modal-overlay').forEach(m => {

  m.addEventListener('click', e => { if(e.target === m) m.classList.remove('open'); });

});


// === CONFIRM BOOKING MODAL ===

function openConfirmModal() {

  openModal('confirm-modal');

  showToast('✅ Booking confirmed with IhramHub!', 4000);

}


// === AUTH ===

function logIn() {

  isLoggedIn = true;

  document.getElementById('nav-login-btn').style.display = 'none';

  document.getElementById('nav-signup-btn').style.display = 'none';

  document.getElementById('nav-avatar').style.display = 'flex';

}

function logOut() {

  isLoggedIn = false;

  document.getElementById('nav-login-btn').style.display = '';

  document.getElementById('nav-signup-btn').style.display = '';

  document.getElementById('nav-avatar').style.display = 'none';

  showPage('home');

  showToast('👋 Signed out successfully');

}


// === AUTH TABS ===

function setAuthTab(el, tab) {

  document.querySelectorAll('.auth-tab').forEach(t => t.classList.remove('active'));

  document.querySelectorAll('.auth-form').forEach(f => f.classList.remove('active'));

  el.classList.add('active');

  document.getElementById('auth-' + tab).classList.add('active');

}


// === SEARCH TABS ===

function setTab(el, type) {

  document.querySelectorAll('.search-tab').forEach(t => t.classList.remove('active'));

  el.classList.add('active');

}


// === FAVOURITE ===

function toggleFav(el) {

  if (el.classList.contains('saved')) {

    el.classList.remove('saved');

    el.textContent = '♡';

    showToast('Removed from saved packages');

  } else {

    el.classList.add('saved');

    el.textContent = '♥';

    showToast('💛 Package saved to My IhramHub');

  }

}


// === COMPARE ===

function addCompare(el, name) {

  const bar = document.getElementById('compare-bar');

  if (compareList.includes(name)) {

    compareList = compareList.filter(n => n !== name);

    showToast('Removed from comparison');

  } else if (compareList.length < 3) {

    compareList.push(name);

    showToast('✦ Added to comparison · ' + compareList.length + '/3');

  } else {

    showToast('Maximum 3 packages in comparison');

    return;

  }

  document.getElementById('compare-count').textContent = compareList.length;

  compareList.forEach((n,i) => { const s = document.getElementById('cslot-'+i); if(s) s.textContent = n; });

  for(let i = compareList.length; i < 3; i++) { const s = document.getElementById('cslot-'+i); if(s) s.textContent = 'Empty slot'; }

  if (compareList.length > 0) bar.classList.add('visible'); else bar.classList.remove('visible');

}

function clearCompare() {

  compareList = [];

  document.getElementById('compare-count').textContent = 0;

  for(let i=0;i<3;i++){const s=document.getElementById('cslot-'+i);if(s)s.textContent='Empty slot';}

  document.getElementById('compare-bar').classList.remove('visible');

}


// === DETAIL TABS ===

function showDetailTab(el, tabId) {

  document.querySelectorAll('.detail-tab').forEach(t => t.classList.remove('active'));

  document.querySelectorAll('.detail-panel').forEach(p => p.classList.remove('active'));

  el.classList.add('active');

  const panel = document.getElementById(tabId);

  if(panel) panel.classList.add('active');

}


// === DASHBOARD NAV ===

function showDashSection(el, sectionId) {

  document.querySelectorAll('.dash-nav-item').forEach(i => i.classList.remove('active'));

  document.querySelectorAll('.dash-section').forEach(s => s.classList.remove('active'));

  if(el) el.classList.add('active');

  const section = document.getElementById(sectionId);

  if(section) section.classList.add('active');

}


// === WIZARD ===

function nextWizardStep(step) {

  for(let i=1;i<=4;i++){

    const panel = document.getElementById('wp-'+i);

    const ws = document.getElementById('ws-'+i);

    if(panel) panel.classList.remove('active');

    if(ws){ ws.classList.remove('active','done');

      if(i<step) ws.classList.add('done');

    }

  }

  const activePanel = document.getElementById('wp-'+step);

  const activeWs = document.getElementById('ws-'+step);

  if(activePanel) activePanel.classList.add('active');

  if(activeWs) activeWs.classList.add('active');

  currentWizardStep = step;

  window.scrollTo({top:0,behavior:'smooth'});

  if(step===4) { logIn(); showToast('🕋 Booking request sent! Reference: IH-2025-8821'); }

}


// === ROOM SELECTION ===

function selectRoom(el) {

  document.querySelectorAll('.room-option').forEach(r => r.classList.remove('selected'));

  el.classList.add('selected');

}


// === CHECKLIST ===

function toggleCheck(el) {

  el.classList.toggle('done');

  if(el.classList.contains('done')) showToast('✓ Task completed!');

}


// === STARS ===

function setStars(n) {

  document.querySelectorAll('#overall-stars .star-btn').forEach((s,i) => {

    s.classList.toggle('selected', i < n);

  });

}


// === REVIEW SUBMIT ===

function submitReview() {

  showToast('⭐ Review submitted! JazakAllah khair for sharing your experience.');

  setTimeout(() => showPage('dashboard'), 1200);

}


// === MESSAGE SEND ===

function sendMsg() {

  const input = document.getElementById('msg-input-field');

  const text = input.value.trim();

  if(!text) return;

  const chat = document.querySelector('.msg-chat-body');

  const bubble = document.createElement('div');

  bubble.className = 'msg-bubble sent';

  bubble.innerHTML = `<div class="msg-bubble-text">${text}</div><div class="msg-bubble-time">Just now</div>`;

  chat.appendChild(bubble);

  input.value = '';

  chat.scrollTop = chat.scrollHeight;

}


// === MOBILE MENU ===

function toggleMobile() {

  const links = document.querySelector('.nav-links');

  links.style.display = links.style.display === 'flex' ? 'none' : 'flex';

  links.style.flexDirection = 'column';

  links.style.position = 'absolute';

  links.style.top = '70px';

  links.style.left = '0';

  links.style.right = '0';

  links.style.background = 'rgba(240,237,232,0.97)';

  links.style.padding = '20px';

  links.style.boxShadow = '0 10px 30px rgba(180,168,148,0.3)';

  links.style.backdropFilter = 'blur(20px)';

}


// === COUNTDOWN ===

function updateCountdown() {

  const dep = new Date('2025-06-15T08:00:00');

  const now = new Date();

  const diff = dep - now;

  if(diff > 0) {

    const d = Math.floor(diff/86400000);

    const h = Math.floor((diff%86400000)/3600000);

    const m = Math.floor((diff%3600000)/60000);

    const s = Math.floor((diff%60000)/1000);

    ['cd-days','cd-hours','cd-mins','cd-secs'].forEach((id, i) => {

      const el = document.getElementById(id);

      if(el) el.textContent = [d,h,m,s][i].toString().padStart(2,'0');

    });

  }

}

setInterval(updateCountdown, 1000);

updateCountdown();


// Quick filter chips

document.querySelectorAll('.qf-chip').forEach(chip => {

  chip.addEventListener('click', function() {

    this.classList.toggle('active');

  });

});


// Quick start for demo — show home

showPage('home');

</script>

</body>

</html>