:root {
  --pdo-maroon: #64101b;
  --pdo-maroon-2: #8e1b2c;
  --pdo-maroon-3: #3b070e;
  --pdo-gold: #d7b46a;
  --pdo-gold-soft: #f2e5c8;
  --pdo-cream: #fbf7ef;
  --pdo-cream-2: #f6efe4;
  --pdo-ink: #251b1d;
  --pdo-muted: #74696b;
  --pdo-line: #e6dbdc;
  --pdo-white: #fff;
  --pdo-green: #178a58;
  --pdo-blue: #1674aa;
  --pdo-red: #c53945;
  --pdo-shadow: 0 18px 50px rgba(73, 17, 27, .12);
  --pdo-shadow-sm: 0 9px 26px rgba(73, 17, 27, .09);
  --pdo-radius: 22px;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  color: var(--pdo-ink);
  background: #fff;
  font-family: "DM Sans", Arial, sans-serif;
  line-height: 1.6;
}
body.no-scroll { overflow: hidden; }
a { color: inherit; text-decoration: none; }
img { max-width: 100%; display: block; }
button, input, select, textarea { font: inherit; }
button { cursor: pointer; }
.container { width: min(1180px, calc(100% - 32px)); margin-inline: auto; }
.text-muted, .pdo-muted { color: var(--pdo-muted) !important; }

/* Buttons */
.btn {
  min-height: 44px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 9px;
  border: 1px solid transparent;
  border-radius: 12px;
  padding: 11px 18px;
  font-weight: 800;
  line-height: 1.15;
  transition: transform .18s ease, box-shadow .18s ease, background .18s ease, color .18s ease;
}
.btn:hover { transform: translateY(-1px); }
.btn-primary { color: #fff; background: linear-gradient(135deg, var(--pdo-maroon), var(--pdo-maroon-2)); box-shadow: 0 10px 24px rgba(100, 16, 27, .2); }
.btn-primary:hover { color: #fff; box-shadow: 0 14px 30px rgba(100, 16, 27, .28); }
.btn-outline { color: var(--pdo-maroon); border-color: rgba(100, 16, 27, .28); background: #fff; }
.btn-outline:hover { color: #fff; background: var(--pdo-maroon); border-color: var(--pdo-maroon); }
.btn-light { color: var(--pdo-maroon); background: #fff; }
.btn-ghost { color: #fff; border-color: rgba(255,255,255,.34); background: rgba(255,255,255,.08); }
.btn-danger, .pdo-btn-danger { color: #fff !important; background: var(--pdo-red) !important; }
.btn-sm { min-height: 38px; padding: 8px 13px; border-radius: 10px; font-size: .88rem; }
.btn-link { border: 0; background: transparent; color: var(--pdo-maroon); padding: 4px; font-weight: 800; }

/* Header */
.pdo-site-header {
  position: sticky;
  top: 0;
  z-index: 1000;
  background: rgba(255, 255, 255, .96);
  backdrop-filter: blur(16px);
  border-bottom: 1px solid rgba(100, 16, 27, .09);
}
.pdo-header-inner { min-height: 76px; display: flex; align-items: center; justify-content: space-between; gap: 18px; }
.pdo-brand { flex: 0 0 auto; }
.pdo-brand img { height: 48px; width: auto; max-width: 245px; object-fit: contain; }
.pdo-main-nav { display: flex; align-items: center; gap: 18px; }
.pdo-main-nav > a:not(.btn) { position: relative; padding: 28px 0 24px; color: #403436; font-weight: 750; font-size: .93rem; }
.pdo-main-nav > a:not(.btn)::after { content: ""; position: absolute; left: 0; right: 100%; bottom: 17px; height: 2px; background: var(--pdo-maroon); transition: right .18s ease; }
.pdo-main-nav > a:not(.btn):hover::after, .pdo-main-nav > a.active::after { right: 0; }
.pdo-main-nav > a.active { color: var(--pdo-maroon); }
.pdo-menu-toggle { display: none; border: 0; width: 43px; height: 43px; border-radius: 12px; color: #fff; background: var(--pdo-maroon); }

/* Shared sections */
.section, .pdo-section { padding: 78px 0; }
.section-soft, .pdo-section.soft { background: linear-gradient(180deg, var(--pdo-cream), #fffaf4); }
.section-header, .pdo-section-head { display: flex; justify-content: space-between; align-items: end; gap: 22px; margin-bottom: 32px; }
.section-heading, .pdo-section-head { max-width: 760px; }
.section-heading h2, .pdo-section-head h2, .pdo-card h2 {
  margin: 7px 0 10px;
  color: var(--pdo-maroon);
  font-family: "Playfair Display", Georgia, serif;
  font-size: clamp(1.9rem, 4vw, 3.1rem);
  line-height: 1.12;
}
.section-heading p, .pdo-section-head p { margin: 0; }
.centered-heading { justify-content: center; text-align: center; }
.eyebrow, .pdo-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  padding: 7px 11px;
  border-radius: 999px;
  color: var(--pdo-maroon);
  background: var(--pdo-gold-soft);
  font-size: .76rem;
  font-weight: 900;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.pdo-card, .pdo-panel-card {
  border: 1px solid var(--pdo-line);
  border-radius: var(--pdo-radius);
  background: #fff;
  box-shadow: var(--pdo-shadow-sm);
}
.pdo-card { padding: 28px; }
.pdo-rich-content { line-height: 1.85; }
.pdo-rich-content h2, .pdo-rich-content h3 { color: var(--pdo-maroon); }

/* Hero */
.pdo-home-hero {
  position: relative;
  overflow: hidden;
  padding: 80px 0 70px;
  color: #fff;
  background:
    radial-gradient(circle at 15% 15%, rgba(215, 180, 106, .23), transparent 27%),
    linear-gradient(118deg, #31070d 0%, #64101b 55%, #8c2636 100%);
}
.pdo-home-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  opacity: .15;
  background-image: linear-gradient(rgba(255,255,255,.18) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.18) 1px, transparent 1px);
  background-size: 44px 44px;
  mask-image: linear-gradient(to right, #000, transparent 72%);
}
.pdo-home-hero-grid { position: relative; z-index: 1; display: grid; grid-template-columns: 1.03fr .97fr; gap: 50px; align-items: center; }
.pdo-home-hero .eyebrow { color: #fff; border: 1px solid rgba(255,255,255,.22); background: rgba(255,255,255,.1); }
.pdo-home-hero h1 { margin: 16px 0; max-width: 750px; font: 800 clamp(2.8rem, 5.8vw, 5.4rem)/1.02 "Playfair Display", Georgia, serif; }
.pdo-home-hero p { max-width: 680px; margin: 0; color: rgba(255,255,255,.84); font-size: 1.08rem; }
.hero-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 26px; }
.pdo-home-hero .btn-outline { color: #fff; border-color: rgba(255,255,255,.3); background: rgba(255,255,255,.08); }
.pdo-home-hero .btn-outline:hover { color: var(--pdo-maroon); background: #fff; }
.pdo-hero-trust { display: flex; flex-wrap: wrap; gap: 10px 18px; margin-top: 27px; color: rgba(255,255,255,.82); font-size: .84rem; font-weight: 700; }
.pdo-hero-trust i { color: var(--pdo-gold); margin-right: 5px; }
.pdo-hero-visual { position: relative; min-height: 510px; }
.pdo-hero-visual > img { width: 100%; height: 510px; object-fit: cover; border-radius: 34px 34px 100px 34px; border: 1px solid rgba(255,255,255,.24); box-shadow: 0 30px 70px rgba(0,0,0,.35); }
.pdo-floating-card { position: absolute; left: -28px; bottom: 32px; width: min(300px, 82%); display: grid; gap: 4px; padding: 18px 20px; color: var(--pdo-ink); background: rgba(255,255,255,.96); border-radius: 16px; box-shadow: var(--pdo-shadow); }
.pdo-floating-card strong { color: var(--pdo-maroon); font-size: 1.07rem; }
.pdo-floating-card small { color: var(--pdo-muted); }

/* Trust */
.trust-ribbon { position: relative; z-index: 2; margin-top: -1px; background: #fff; border-bottom: 1px solid var(--pdo-line); }
.trust-ribbon-grid { display: grid; grid-template-columns: repeat(4, 1fr); }
.trust-ribbon-grid article { display: flex; align-items: center; gap: 12px; min-height: 106px; padding: 20px; border-right: 1px solid var(--pdo-line); }
.trust-ribbon-grid article:first-child { border-left: 1px solid var(--pdo-line); }
.trust-icon { flex: 0 0 auto; width: 43px; height: 43px; display: grid; place-items: center; border-radius: 13px; color: var(--pdo-maroon); background: var(--pdo-gold-soft); }
.trust-ribbon strong, .trust-ribbon small { display: block; }
.trust-ribbon small { color: var(--pdo-muted); }

/* Finder */
.smart-finder-section { background: linear-gradient(180deg, #fff, var(--pdo-cream)); }
.pdo-search-tabs { width: min(620px, 100%); display: grid; grid-template-columns: repeat(2, 1fr); gap: 9px; margin: 0 auto 18px; padding: 7px; border: 1px solid var(--pdo-line); border-radius: 16px; background: #fff; box-shadow: var(--pdo-shadow-sm); }
.pdo-search-tabs button { min-height: 48px; border: 0; border-radius: 11px; color: var(--pdo-muted); background: transparent; font-weight: 900; }
.pdo-search-tabs button.active { color: #fff; background: linear-gradient(135deg, var(--pdo-maroon), var(--pdo-maroon-2)); }
.pdo-finder-panel { display: none; }
.pdo-finder-panel.active { display: block; }
.smart-finder-shell, .pdo-travel-finder { overflow: hidden; border: 1px solid var(--pdo-line); border-radius: 25px; background: #fff; box-shadow: var(--pdo-shadow); }
.smart-finder-shell { display: none; grid-template-columns: .33fr .67fr; }
.smart-finder-shell.active { display: grid; }
.finder-intro { display: flex; flex-direction: column; justify-content: center; padding: 34px; color: #fff; background: linear-gradient(145deg, var(--pdo-maroon-3), var(--pdo-maroon-2)); }
.finder-intro .eyebrow { align-self: flex-start; color: #fff; background: rgba(255,255,255,.13); }
.finder-intro h2 { margin: 12px 0 8px; font: 800 2rem/1.1 "Playfair Display", Georgia, serif; }
.finder-intro p { margin: 0; color: rgba(255,255,255,.75); }
.finder-form { display: grid; grid-template-columns: repeat(2, 1fr); gap: 18px; padding: 32px; }
.finder-field { min-width: 0; }
.finder-field > label { display: block; margin-bottom: 8px; font-weight: 800; }
.finder-span-2 { grid-column: 1 / -1; }
.choice-chips { display: grid; grid-template-columns: repeat(4, 1fr); gap: 10px; }
.choice-chip { position: relative; display: grid; gap: 2px; padding: 14px; border: 1px solid var(--pdo-line); border-radius: 14px; background: #fff; cursor: pointer; }
.choice-chip input { position: absolute; opacity: 0; pointer-events: none; }
.choice-chip:has(input:checked) { border-color: var(--pdo-maroon); box-shadow: inset 0 0 0 1px var(--pdo-maroon); background: #fff7f8; }
.choice-chip strong { color: var(--pdo-maroon); }
.choice-chip small { color: var(--pdo-muted); }
.form-control { width: 100%; min-height: 49px; padding: 12px 14px; border: 1px solid #d8cbcc; border-radius: 12px; background: #fff; color: var(--pdo-ink); }
.btn-finder { width: 100%; }
.pdo-travel-finder { padding: 26px; }
.pdo-destination-tabs { display: grid; grid-template-columns: repeat(2, 1fr); gap: 12px; margin-bottom: 22px; }
.pdo-destination-tabs button { min-height: 60px; border: 1px solid #d8d8d8; border-radius: 12px; color: #393536; background: #fafafa; font-size: 1.1rem; font-weight: 900; }
.pdo-destination-tabs button.active { color: var(--pdo-blue); border-color: var(--pdo-blue); background: #e9f5fc; box-shadow: 0 8px 20px rgba(22,116,170,.12); }
.pdo-travel-fields { display: grid; grid-template-columns: 1fr 1fr auto; gap: 16px; align-items: end; }
.pdo-travel-fields .btn { min-width: 205px; min-height: 50px; }

/* Packages/news */
.pdo-package-grid, .pdo-news-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 22px; }
.pdo-package-list-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 22px; }
.pdo-package-card, .pdo-news-card { overflow: hidden; border: 1px solid var(--pdo-line); border-radius: 22px; background: #fff; box-shadow: var(--pdo-shadow-sm); transition: transform .2s ease, box-shadow .2s ease; }
.pdo-package-card:hover, .pdo-news-card:hover { transform: translateY(-4px); box-shadow: var(--pdo-shadow); }
.pdo-package-card > a > img, .pdo-package-card > img, .pdo-news-card > img { width: 100%; height: 230px; object-fit: cover; }
.pdo-package-card > div, .pdo-news-card > div { padding: 22px; }
.pdo-package-card h3, .pdo-news-card h3 { margin: 11px 0 8px; color: var(--pdo-ink); font-size: 1.2rem; line-height: 1.32; }
.pdo-package-card p, .pdo-news-card p { color: var(--pdo-muted); }
.pdo-package-type { display: inline-flex; padding: 6px 10px; border-radius: 999px; color: var(--pdo-maroon); background: var(--pdo-gold-soft); font-size: .73rem; font-weight: 900; text-transform: uppercase; letter-spacing: .05em; }
.pdo-package-price { display: flex; justify-content: space-between; align-items: end; gap: 12px; margin: 18px 0; padding-top: 15px; border-top: 1px solid var(--pdo-line); }
.pdo-package-price small { color: var(--pdo-muted); }
.pdo-package-price strong { color: var(--pdo-maroon); font-size: 1.55rem; }
.pdo-package-actions { display: flex; gap: 9px; }
.pdo-package-actions .btn { flex: 1; }
.pdo-news-card small { color: var(--pdo-maroon); font-weight: 800; }
.pdo-news-card a { color: var(--pdo-maroon); font-weight: 900; }
.pdo-filter-card { margin-bottom: 24px; }

/* Features */
.pdo-feature-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 18px; }
.pdo-feature-grid article, .pdo-vision-grid article { padding: 25px; border: 1px solid var(--pdo-line); border-radius: 20px; background: #fff; }
.pdo-feature-grid i, .pdo-vision-grid i { width: 50px; height: 50px; display: grid; place-items: center; border-radius: 15px; color: var(--pdo-maroon); background: var(--pdo-gold-soft); font-size: 1.25rem; }
.pdo-feature-grid h3, .pdo-vision-grid h2 { margin: 16px 0 7px; color: var(--pdo-maroon); }
.pdo-feature-grid p, .pdo-vision-grid p { margin: 0; color: var(--pdo-muted); }

/* Page banner */
.pdo-page-banner { position: relative; overflow: hidden; padding: 86px 0 70px; color: #fff; background: linear-gradient(115deg, rgba(43, 5, 12, .95), rgba(100, 16, 27, .82)), url('../images/madinah-dusk-1.jpg') center/cover; }
.pdo-page-banner::after { content: ""; position: absolute; inset: 0; opacity: .15; background-image: linear-gradient(rgba(255,255,255,.22) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.22) 1px, transparent 1px); background-size: 40px 40px; }
.pdo-page-banner .container { position: relative; z-index: 1; }
.pdo-page-banner .eyebrow { color: #fff; border: 1px solid rgba(255,255,255,.25); background: rgba(255,255,255,.1); }
.pdo-page-banner h1 { margin: 12px 0 8px; font: 800 clamp(2.4rem, 5vw, 4.5rem)/1.05 "Playfair Display", Georgia, serif; }
.pdo-page-banner p { max-width: 760px; margin: 0; color: rgba(255,255,255,.82); font-size: 1.05rem; }
.pdo-company-banner { background: linear-gradient(115deg, rgba(43,5,12,.95), rgba(100,16,27,.8)), url('../images/as-gallery-05.jpg') center 38%/cover; }

/* Forms */
.pdo-form-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
.pdo-field { min-width: 0; display: grid; gap: 7px; }
.pdo-field.full { grid-column: 1 / -1; }
.pdo-field label { color: var(--pdo-ink); font-weight: 850; }
.pdo-field small { color: var(--pdo-muted); }
.pdo-input, .pdo-select, .pdo-textarea {
  width: 100%;
  min-height: 49px;
  border: 1px solid #d8cbcc;
  border-radius: 12px;
  padding: 12px 14px;
  color: var(--pdo-ink);
  background: #fff;
}
.pdo-textarea { min-height: 125px; resize: vertical; }
.pdo-input:focus, .pdo-select:focus, .pdo-textarea:focus, .form-control:focus { outline: 3px solid rgba(100,16,27,.11); border-color: var(--pdo-maroon); }
.pdo-booking-form { max-width: 970px; margin: 0 auto; }
.pdo-form-section + .pdo-form-section { margin-top: 28px; padding-top: 28px; border-top: 1px solid var(--pdo-line); }
.pdo-form-section h2 { margin: 0 0 18px; font-size: 1.5rem; }
.pdo-account-note { display: flex; align-items: center; gap: 13px; padding: 15px; border-radius: 14px; color: var(--pdo-green); background: #edf9f2; }
.pdo-account-note div { display: grid; }
.pdo-auth-section { min-height: calc(100vh - 76px); display: grid; place-items: center; padding: 70px 16px; background: linear-gradient(135deg, var(--pdo-cream), #fff); }
.pdo-auth-card { width: min(500px, 100%); }
.pdo-auth-card .pdo-card { padding: 34px; }
.pdo-auth-logo { height: 62px; width: auto; max-width: 270px; margin: 0 auto 20px; object-fit: contain; }
.pdo-auth-icon { width: 64px; height: 64px; display: grid; place-items: center; margin: 0 auto 18px; border-radius: 19px; color: #fff; background: var(--pdo-maroon); font-size: 1.55rem; }
.pdo-otp-input { text-align: center; letter-spacing: .35em; font-size: 1.5rem; font-weight: 900; }
.pdo-secondary-form { margin-top: 15px; text-align: center; }

/* Alerts/status */
.pdo-alert { margin: 14px 0; padding: 14px 17px; border-radius: 12px; font-weight: 750; }
.pdo-alert-success { color: #176c47; background: #e9f8f0; }
.pdo-alert-error, .pdo-alert-danger { color: #a12431; background: #fff0f1; }
.pdo-alert-warning { color: #856216; background: #fff8e7; }
.pdo-alert-info { color: #135f85; background: #eaf6fc; }
.pdo-flash-wrap { margin-top: 16px; }
.badge { display: inline-flex; align-items: center; justify-content: center; padding: 6px 10px; border-radius: 999px; font-size: .76rem; font-weight: 900; white-space: nowrap; }
.badge-success { color: #137549; background: #e6f7ef; }
.badge-warning { color: #8d6300; background: #fff3d9; }
.badge-danger { color: #af2837; background: #ffe9eb; }
.badge-info { color: #15668d; background: #e7f4fb; }

/* Package detail, company and gallery */
.pdo-detail-grid { display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(300px, .75fr); gap: 26px; align-items: start; }
.pdo-package-gallery { min-width: 0; }
.pdo-gallery-main { width: 100%; height: 520px; object-fit: cover; border-radius: 23px; }
.pdo-gallery-thumbs { display: grid; grid-template-columns: repeat(5, 1fr); gap: 9px; margin-top: 10px; }
.pdo-gallery-thumbs button { overflow: hidden; padding: 0; border: 2px solid transparent; border-radius: 11px; background: #fff; }
.pdo-gallery-thumbs button.active { border-color: var(--pdo-maroon); }
.pdo-gallery-thumbs img { width: 100%; height: 78px; object-fit: cover; }
.pdo-sticky-summary { position: sticky; top: 98px; }
.pdo-price-options { display: grid; gap: 10px; margin: 18px 0; }
.pdo-price-options > div { display: flex; justify-content: space-between; gap: 16px; padding: 11px 0; border-bottom: 1px dashed var(--pdo-line); }
.pdo-company-intro { display: grid; grid-template-columns: 1.15fr .85fr; gap: 24px; }
.pdo-vision-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 22px; }
.pdo-leaders-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 24px; }
.pdo-leader-card { overflow: hidden; border: 1px solid var(--pdo-line); border-radius: 24px; background: #fff; box-shadow: var(--pdo-shadow-sm); }
.pdo-leader-card img { width: 100%; height: 540px; object-fit: cover; object-position: center 18%; background: #f5f3ef; }
.pdo-leader-card div { padding: 22px; }
.pdo-leader-card h3 { margin: 0; color: var(--pdo-maroon); font-size: 1.25rem; }
.pdo-leader-card p { margin: 7px 0 0; color: var(--pdo-muted); font-weight: 750; text-transform: uppercase; letter-spacing: .035em; font-size: .82rem; }
.pdo-company-gallery { display: grid; grid-template-columns: repeat(4, 1fr); gap: 13px; }
.pdo-company-gallery button { overflow: hidden; padding: 0; border: 0; border-radius: 17px; background: #eee; }
.pdo-company-gallery button:nth-child(1), .pdo-company-gallery button:nth-child(6) { grid-column: span 2; }
.pdo-company-gallery img { width: 100%; height: 235px; object-fit: cover; transition: transform .3s ease; }
.pdo-company-gallery button:hover img { transform: scale(1.04); }
.pdo-lightbox { position: fixed; inset: 0; z-index: 2000; display: grid; place-items: center; padding: 30px; background: rgba(19,4,7,.92); }
.pdo-lightbox[hidden] { display: none; }
.pdo-lightbox img { max-width: min(1200px, 94vw); max-height: 88vh; border-radius: 15px; box-shadow: 0 30px 90px rgba(0,0,0,.5); }
.pdo-lightbox button { position: absolute; top: 20px; right: 20px; width: 46px; height: 46px; border: 0; border-radius: 50%; color: #fff; background: rgba(255,255,255,.14); font-size: 1.25rem; }

/* Payment and progress */
.pdo-payment-grid { display: grid; grid-template-columns: .8fr 1.2fr; gap: 24px; align-items: start; }
.pdo-payment-progress { margin: 18px 0 24px; }
.pdo-payment-progress > div:first-child { display: flex; justify-content: space-between; gap: 12px; margin-bottom: 8px; }
.pdo-progress-bar, .pdo-mini-progress, .pdo-kpi-progress { overflow: hidden; height: 11px; border-radius: 999px; background: #eee4e5; }
.pdo-progress-bar span, .pdo-mini-progress span, .pdo-kpi-progress span { display: block; height: 100%; border-radius: inherit; background: linear-gradient(90deg, var(--pdo-maroon), var(--pdo-gold)); }
.pdo-progress-large { display: grid; gap: 9px; margin: 18px 0 24px; }
.pdo-progress-large > div:first-child { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; }
.pdo-progress-large > div:first-child strong { color: var(--pdo-maroon); font-size: 1.35rem; }
.pdo-progress-large > div:first-child span { color: var(--pdo-muted); }
.pdo-progress-large .pdo-progress-bar { height: 15px; }
.pdo-notice { display: flex; gap: 10px; align-items: flex-start; margin-top: 18px; padding: 14px; border-radius: 13px; color: #775919; background: #fff7e4; }
.pdo-bank-info { display: grid; gap: 3px; margin: 14px 0; padding: 15px; border: 1px dashed #cfb06a; border-radius: 13px; background: #fffaf0; }
.pdo-success-card { max-width: 650px; margin: 0 auto; text-align: center; }
.pdo-success-card.success::before { content: "✓"; width: 72px; height: 72px; display: grid; place-items: center; margin: 0 auto 18px; border-radius: 50%; color: #fff; background: var(--pdo-green); font-size: 2rem; font-weight: 900; }

/* Articles/contact */
.pdo-article-wrap { max-width: 860px; margin: 0 auto; }
.pdo-article-image { width: 100%; max-height: 520px; object-fit: cover; border-radius: 22px; margin-bottom: 24px; }
.pdo-contact-grid { display: grid; grid-template-columns: .8fr 1.2fr; gap: 24px; }

/* Tables */
.pdo-table-wrap { overflow: auto; border: 1px solid var(--pdo-line); border-radius: 16px; }
.pdo-table { width: 100%; border-collapse: collapse; background: #fff; }
.pdo-table th, .pdo-table td { padding: 13px 15px; border-bottom: 1px solid #efe6e7; text-align: left; vertical-align: top; }
.pdo-table th { color: var(--pdo-maroon); background: #f9f5f5; font-size: .76rem; font-weight: 900; letter-spacing: .05em; text-transform: uppercase; white-space: nowrap; }
.pdo-table tr:last-child td { border-bottom: 0; }
.pdo-table tbody tr:hover { background: #fffafb; }
.pdo-empty { padding: 42px 18px !important; text-align: center; color: var(--pdo-muted); }
.pdo-details-list { display: grid; gap: 0; }
.pdo-details-list > div { display: flex; justify-content: space-between; gap: 18px; padding: 12px 0; border-bottom: 1px dashed var(--pdo-line); }
.pdo-details-list > div:last-child { border-bottom: 0; }
.pdo-details-list span { color: var(--pdo-muted); }
.pdo-details-list strong { max-width: 62%; text-align: right; }
.pdo-actions-inline { display: flex; flex-wrap: wrap; gap: 7px; }
.pdo-actions-stack { display: grid; gap: 7px; }

/* Rich editor */
.pdo-editor-toolbar { display: flex; flex-wrap: wrap; gap: 5px; padding: 8px; border: 1px solid #d8cbcc; border-bottom: 0; border-radius: 12px 12px 0 0; background: #f8f3f4; }
.pdo-editor-toolbar button { min-width: 35px; min-height: 34px; border: 1px solid #dfd2d4; border-radius: 8px; color: var(--pdo-maroon); background: #fff; font-weight: 800; }
.pdo-basic-editor { min-height: 210px; padding: 14px; border: 1px solid #d8cbcc; border-radius: 0 0 12px 12px; background: #fff; overflow: auto; }
.pdo-basic-editor:focus { outline: 3px solid rgba(100,16,27,.11); border-color: var(--pdo-maroon); }
.pdo-admin-gallery { display: grid; grid-template-columns: repeat(6, 1fr); gap: 10px; }
.pdo-admin-gallery > div { position: relative; overflow: hidden; min-height: 100px; border-radius: 12px; background: #eee; }
.pdo-admin-gallery img { width: 100%; height: 115px; object-fit: cover; }

/* Panel */
.panel-body, .pdo-panel-body { background: #f6f2f3; }
.pdo-panel-shell { min-height: 100vh; display: grid; grid-template-columns: 270px minmax(0, 1fr); }
.pdo-sidebar { position: sticky; top: 0; z-index: 1200; height: 100vh; display: flex; flex-direction: column; padding: 18px 14px; color: #fff; background: linear-gradient(180deg, #510a15, #24050a); }
.pdo-sidebar-brand { display: block; margin-bottom: 14px; padding: 5px 12px 20px; border-bottom: 1px solid rgba(255,255,255,.12); }
.pdo-sidebar-brand img { width: 100%; height: 57px; object-fit: contain; }
.pdo-sidebar nav { display: grid; gap: 4px; overflow: auto; scrollbar-width: thin; }
.pdo-sidebar nav a, .pdo-sidebar-foot a, .pdo-sidebar-foot button { width: 100%; display: flex; align-items: center; gap: 12px; padding: 11px 13px; border: 0; border-radius: 11px; color: rgba(255,255,255,.78); background: transparent; font: inherit; font-weight: 750; text-align: left; }
.pdo-sidebar nav a:hover, .pdo-sidebar nav a.active, .pdo-sidebar-foot a:hover, .pdo-sidebar-foot button:hover { color: #fff; background: rgba(255,255,255,.12); }
.pdo-sidebar nav i, .pdo-sidebar-foot i { width: 21px; text-align: center; }
.pdo-sidebar-foot { margin-top: auto; padding-top: 12px; border-top: 1px solid rgba(255,255,255,.12); }
.pdo-panel-main { min-width: 0; }
.pdo-topbar { position: sticky; top: 0; z-index: 900; height: 76px; display: flex; align-items: center; gap: 15px; padding: 0 28px; border-bottom: 1px solid var(--pdo-line); background: rgba(255,255,255,.96); backdrop-filter: blur(14px); }
.pdo-topbar > div:first-of-type { display: grid; }
.pdo-topbar small { color: var(--pdo-muted); }
.pdo-user-menu { margin-left: auto; display: flex; align-items: center; gap: 10px; font-weight: 850; }
.pdo-user-menu img { width: 40px; height: 40px; border-radius: 50%; object-fit: cover; }
.pdo-sidebar-toggle { display: none; width: 42px; height: 42px; border: 0; border-radius: 12px; color: #fff; background: var(--pdo-maroon); }
.pdo-panel-content { padding: 28px; }
.pdo-dashboard-hero { position: relative; overflow: hidden; padding: 32px; border-radius: 24px; color: #fff; background: linear-gradient(115deg, #560b16, #922435); box-shadow: var(--pdo-shadow); }
.pdo-dashboard-hero::after { content: ""; position: absolute; width: 260px; height: 260px; right: -72px; top: -105px; border: 1px solid rgba(255,255,255,.2); border-radius: 50%; box-shadow: 0 0 0 32px rgba(255,255,255,.03), 0 0 0 64px rgba(255,255,255,.02); }
.pdo-dashboard-hero .pdo-eyebrow { color: #fff; border: 1px solid rgba(255,255,255,.22); background: rgba(255,255,255,.1); }
.pdo-dashboard-hero h1 { position: relative; z-index: 1; margin: 7px 0 8px; font: 800 clamp(1.8rem, 4vw, 3rem)/1.1 "Playfair Display", Georgia, serif; }
.pdo-dashboard-hero p { position: relative; z-index: 1; max-width: 760px; margin: 0; color: rgba(255,255,255,.8); }
.pdo-stat-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 17px; margin: 22px 0; }
.pdo-stat-card { display: flex; align-items: center; gap: 15px; padding: 20px; border: 1px solid var(--pdo-line); border-radius: 18px; background: #fff; box-shadow: var(--pdo-shadow-sm); }
.pdo-stat-card > i { flex: 0 0 auto; width: 49px; height: 49px; display: grid; place-items: center; border-radius: 14px; color: var(--pdo-maroon); background: #f6e9eb; font-size: 1.17rem; }
.pdo-stat-card strong, .pdo-stat-card span { display: block; }
.pdo-stat-card strong { color: var(--pdo-ink); font-size: 1.55rem; line-height: 1.1; }
.pdo-stat-card span { margin-top: 3px; color: var(--pdo-muted); font-size: .84rem; }
.pdo-panel-grid { display: grid; grid-template-columns: minmax(0, 1.4fr) minmax(270px, .6fr); gap: 20px; }
.pdo-panel-card { min-width: 0; padding: 22px; }
.pdo-panel-card h2, .pdo-panel-card h3 { margin-top: 0; color: var(--pdo-maroon); }
.pdo-toolbar { display: flex; justify-content: space-between; align-items: center; gap: 12px; margin-bottom: 18px; flex-wrap: wrap; }
.pdo-toolbar h2 { margin-bottom: 0; }
.pdo-quick-links { display: grid; gap: 10px; }
.pdo-quick-links a { display: flex; align-items: center; gap: 12px; padding: 13px; border: 1px solid var(--pdo-line); border-radius: 13px; background: #fffafb; font-weight: 800; }
.pdo-quick-links a:hover { color: var(--pdo-maroon); border-color: rgba(100,16,27,.3); }
.pdo-report-stats, .pdo-export-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 15px; }
.pdo-points-balance { padding: 25px; border-radius: 20px; color: #fff; background: linear-gradient(135deg, var(--pdo-maroon), var(--pdo-maroon-2)); }
.pdo-points-balance strong { display: block; font-size: 2.4rem; }
.pdo-merch-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; }
.pdo-merch-card { overflow: hidden; border: 1px solid var(--pdo-line); border-radius: 18px; background: #fff; }
.pdo-merch-card img { width: 100%; height: 210px; object-fit: cover; }
.pdo-merch-card > div { padding: 18px; }
.pdo-ticket-thread { display: grid; gap: 12px; }
.pdo-ticket-thread article { padding: 14px; border-radius: 13px; background: #f8f3f4; }

/* Footer */
.pdo-footer { padding: 52px 0 20px; color: rgba(255,255,255,.76); background: #26060b; }
.pdo-footer-grid { display: grid; grid-template-columns: 1.15fr .65fr 1fr 1.2fr; gap: 30px; }
.pdo-footer h4 { margin: 0 0 13px; color: #fff; }
.pdo-footer p { margin: 8px 0; }
.pdo-footer a:hover { color: #fff; }
.pdo-footer-logo { width: auto; height: 49px; max-width: 240px; margin-bottom: 14px; object-fit: contain; }
.pdo-footer-bottom { display: flex; justify-content: space-between; gap: 12px; margin-top: 30px; padding-top: 18px; border-top: 1px solid rgba(255,255,255,.12); font-size: .87rem; }
.pdo-whatsapp { position: fixed; right: 22px; bottom: 22px; z-index: 950; width: 58px; height: 58px; display: grid; place-items: center; border-radius: 50%; color: #fff; background: #25d366; box-shadow: 0 14px 35px rgba(0,0,0,.24); font-size: 1.72rem; }

@media (max-width: 1080px) {
  .pdo-main-nav { gap: 13px; }
  .pdo-main-nav > a:not(.btn) { font-size: .86rem; }
  .pdo-feature-grid { grid-template-columns: repeat(2, 1fr); }
  .pdo-package-grid, .pdo-news-grid, .pdo-package-list-grid { grid-template-columns: repeat(2, 1fr); }
  .pdo-stat-grid { grid-template-columns: repeat(2, 1fr); }
  .pdo-admin-gallery { grid-template-columns: repeat(4, 1fr); }
}

@media (max-width: 960px) {
  .pdo-menu-toggle { display: grid; place-items: center; }
  .pdo-main-nav { position: fixed; top: 77px; left: 16px; right: 16px; display: none; flex-direction: column; align-items: stretch; gap: 4px; max-height: calc(100vh - 100px); overflow: auto; padding: 16px; border: 1px solid var(--pdo-line); border-radius: 18px; background: #fff; box-shadow: var(--pdo-shadow); }
  .pdo-main-nav.open { display: flex; }
  .pdo-main-nav > a:not(.btn) { padding: 11px 12px; border-radius: 10px; }
  .pdo-main-nav > a:not(.btn)::after { display: none; }
  .pdo-main-nav > a.active { background: #fff3f5; }
  .pdo-home-hero-grid, .pdo-detail-grid, .pdo-company-intro, .pdo-payment-grid, .pdo-contact-grid, .pdo-panel-grid { grid-template-columns: 1fr; }
  .pdo-hero-visual { min-height: 430px; }
  .pdo-hero-visual > img { height: 430px; }
  .pdo-floating-card { left: 20px; }
  .trust-ribbon-grid { grid-template-columns: repeat(2, 1fr); }
  .trust-ribbon-grid article:nth-child(3) { border-left: 1px solid var(--pdo-line); }
  .smart-finder-shell.active { grid-template-columns: 1fr; }
  .finder-intro { min-height: 210px; }
  .pdo-travel-fields { grid-template-columns: 1fr 1fr; }
  .pdo-travel-fields .btn { grid-column: 1 / -1; width: 100%; }
  .pdo-sticky-summary { position: static; }
  .pdo-panel-shell { grid-template-columns: 1fr; }
  .pdo-sidebar { position: fixed; left: -292px; width: 270px; transition: left .25s ease; box-shadow: 20px 0 50px rgba(0,0,0,.2); }
  .pdo-sidebar.open { left: 0; }
  .pdo-sidebar-toggle { display: grid; place-items: center; }
  .pdo-panel-content { padding: 18px; }
  .pdo-footer-grid { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 700px) {
  .container { width: min(100% - 22px, 1180px); }
  .section, .pdo-section { padding: 56px 0; }
  .pdo-header-inner { min-height: 68px; }
  .pdo-brand img { height: 42px; max-width: 205px; }
  .pdo-main-nav { top: 69px; }
  .pdo-home-hero { padding: 62px 0 54px; }
  .pdo-home-hero h1 { font-size: clamp(2.35rem, 13vw, 3.6rem); }
  .pdo-hero-visual { min-height: 340px; }
  .pdo-hero-visual > img { height: 340px; border-radius: 24px 24px 70px 24px; }
  .pdo-floating-card { right: 12px; left: 12px; bottom: 15px; width: auto; }
  .trust-ribbon-grid, .pdo-feature-grid, .pdo-package-grid, .pdo-news-grid, .pdo-package-list-grid, .pdo-vision-grid, .pdo-leaders-grid, .pdo-stat-grid, .pdo-report-stats, .pdo-export-grid, .pdo-merch-grid { grid-template-columns: 1fr; }
  .trust-ribbon-grid article { border-right: 1px solid var(--pdo-line); border-left: 1px solid var(--pdo-line); }
  .pdo-search-tabs { grid-template-columns: 1fr; }
  .finder-form, .pdo-form-grid, .pdo-travel-fields { grid-template-columns: 1fr; }
  .finder-span-2, .pdo-field.full, .pdo-travel-fields .btn { grid-column: auto; }
  .choice-chips { grid-template-columns: repeat(2, 1fr); }
  .pdo-destination-tabs button { min-height: 52px; font-size: .94rem; }
  .section-header, .pdo-section-head { align-items: stretch; flex-direction: column; }
  .section-header > .btn { align-self: flex-start; }
  .pdo-page-banner { padding: 65px 0 55px; }
  .pdo-page-banner h1 { font-size: 2.5rem; }
  .pdo-gallery-main { height: 340px; }
  .pdo-gallery-thumbs { grid-template-columns: repeat(4, 1fr); }
  .pdo-gallery-thumbs img { height: 62px; }
  .pdo-leader-card img { height: 460px; }
  .pdo-company-gallery { grid-template-columns: repeat(2, 1fr); }
  .pdo-company-gallery button:nth-child(1), .pdo-company-gallery button:nth-child(6) { grid-column: span 2; }
  .pdo-company-gallery img { height: 180px; }
  .pdo-card, .pdo-panel-card { padding: 20px; }
  .pdo-details-list > div { display: grid; gap: 4px; }
  .pdo-details-list strong { max-width: none; text-align: left; }
  .pdo-topbar { height: 68px; padding: 0 13px; }
  .pdo-panel-content { padding: 12px; }
  .pdo-dashboard-hero { padding: 24px; }
  .pdo-user-menu span { display: none; }
  .pdo-footer-grid { grid-template-columns: 1fr; }
  .pdo-footer-bottom { flex-direction: column; }
  .pdo-admin-gallery { grid-template-columns: repeat(2, 1fr); }
  .pdo-table th, .pdo-table td { padding: 11px 12px; }
}

@media (max-width: 430px) {
  .choice-chips { grid-template-columns: 1fr; }
  .pdo-destination-tabs { grid-template-columns: 1fr; }
  .pdo-company-gallery img { height: 145px; }
  .pdo-leader-card img { height: 390px; }
  .pdo-package-actions { flex-direction: column; }
}

/* Small additions for company and filters */
.pdo-filter-card {
  margin-bottom: 24px;
  padding: 22px;
  border: 1px solid var(--pdo-line);
  border-radius: 20px;
  background: #fff;
  box-shadow: var(--pdo-shadow-sm);
}
.pdo-filter-card .btn { margin-top: 16px; }
.pdo-social-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; }
.pdo-social-grid article { display: flex; align-items: center; gap: 14px; padding: 22px; border: 1px solid var(--pdo-line); border-radius: 18px; background: #fff; box-shadow: var(--pdo-shadow-sm); }
.pdo-social-grid i { width: 48px; height: 48px; display: grid; place-items: center; flex: 0 0 auto; border-radius: 15px; color: #fff; background: linear-gradient(135deg, var(--pdo-maroon), var(--pdo-maroon-2)); font-size: 1.2rem; }
.pdo-social-grid strong, .pdo-social-grid span { display: block; }
.pdo-social-grid strong { color: var(--pdo-maroon); }
.pdo-social-grid span { color: var(--pdo-muted); font-size: .9rem; overflow-wrap: anywhere; }
@media (max-width: 700px) { .pdo-social-grid { grid-template-columns: 1fr; } }
/* =========================================================
   AS SALIK PHP PDO V3 — Original HTML Layout Compatibility
   Backend components are fitted into the original V25 visual system.
   ========================================================= */
:root{--php-burgundy:#68111d;--php-burgundy-dark:#3d0710;--php-gold:#d4aa54;--php-cream:#fbf7ee;--php-ink:#23191b}
html{scroll-behavior:smooth}.php-flash-wrap{position:relative;z-index:40;padding-top:14px}.php-alert{padding:14px 18px;border-radius:14px;margin:0 0 14px;font-weight:700;border:1px solid rgba(0,0,0,.08);box-shadow:0 10px 28px rgba(35,8,13,.08)}.php-alert-success{background:#ecfdf3;color:#17643a}.php-alert-error{background:#fff0f1;color:#981b2c}.php-alert-warning{background:#fff8e6;color:#79560d}.php-alert-info{background:#edf7ff;color:#155b87}
.site-header .brand img{max-height:70px;width:auto}.main-nav-clean a{white-space:nowrap}.header-actions{flex-shrink:0}.site-footer a{color:inherit}.footer-logo-only img{max-height:90px;width:auto}
/* Keep original header usable with six menu items */
@media(min-width:1100px){.header-inner{gap:18px}.main-nav-clean{gap:3px}.main-nav-clean a{padding:10px 9px;font-size:.86rem}.brand{max-width:220px}.brand img{max-width:220px}}
/* PHP form controls inherit original form visuals */
.pdo-section{padding:72px 0}.pdo-card,.pdo-auth-card,.pdo-panel-card{background:#fff;border:1px solid rgba(91,26,35,.10);border-radius:22px;box-shadow:0 18px 48px rgba(48,10,16,.08);padding:26px}.pdo-page-banner{position:relative;padding:76px 0;background:linear-gradient(105deg,rgba(42,4,10,.94),rgba(104,17,29,.78)),url('../images/as-hero-kaaba.jpg') center/cover;color:#fff;overflow:hidden}.pdo-page-banner:after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 85% 20%,rgba(231,197,114,.24),transparent 28%);pointer-events:none}.pdo-page-banner .container{position:relative;z-index:1}.pdo-page-banner h1{font-family:"Playfair Display",serif;font-size:clamp(2.2rem,5vw,4rem);margin:8px 0 10px;color:#fff}.pdo-page-banner p{max-width:760px;color:rgba(255,255,255,.82);font-size:1.05rem}.pdo-company-banner{background-image:linear-gradient(105deg,rgba(42,4,10,.94),rgba(104,17,29,.78)),url('../images/as-gallery-09.jpg')}
.pdo-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.pdo-field{display:flex;flex-direction:column;gap:8px}.pdo-field.full{grid-column:1/-1}.pdo-field label,.form-label{font-weight:800;color:#3b2529;font-size:.92rem}.pdo-input,.pdo-select,.pdo-textarea{width:100%;min-height:48px;border:1px solid #dfd5d6;border-radius:12px;padding:11px 14px;background:#fff;color:#272023;font:inherit;transition:.2s}.pdo-textarea{min-height:120px;resize:vertical}.pdo-input:focus,.pdo-select:focus,.pdo-textarea:focus{outline:0;border-color:#9f2335;box-shadow:0 0 0 4px rgba(159,35,53,.11)}.pdo-field small,.pdo-muted{color:#7a6b6d}.pdo-form-section{padding:22px 0;border-bottom:1px solid #eee4e5}.pdo-form-section:first-child{padding-top:0}.pdo-form-section:last-of-type{border-bottom:0}.pdo-form-section h2{font-size:1.25rem;margin-bottom:16px}.pdo-booking-form{max-width:1040px;margin:auto}.pdo-account-note{display:flex;gap:12px;align-items:center;padding:14px 16px;border-radius:14px;background:#f2fbf5;color:#17643a}.pdo-account-note i{font-size:1.5rem}.pdo-account-note span{display:block;color:#5c7062}.pdo-notice{display:flex;gap:10px;align-items:flex-start;padding:14px;border-radius:14px;background:#fff8e6;color:#785812;margin-top:18px}.pdo-auth-section{min-height:72vh;display:grid;place-items:center;padding:72px 18px;background:linear-gradient(145deg,#fbf6ed,#fff)}.pdo-auth-card{width:min(100%,560px);text-align:center;padding:38px}.pdo-auth-card form{text-align:left}.pdo-auth-card h1{font-family:"Playfair Display",serif;font-size:2.2rem}.pdo-auth-icon{width:76px;height:76px;border-radius:22px;margin:0 auto 18px;display:grid;place-items:center;background:linear-gradient(145deg,#6a101d,#9c2438);color:#fff;font-size:2rem;box-shadow:0 16px 32px rgba(106,16,29,.22)}.pdo-auth-icon.success{background:linear-gradient(145deg,#167044,#27a568)}.pdo-secondary-form{margin-top:10px;text-align:center!important}.pdo-otp-input{text-align:center;letter-spacing:.45em;font-size:1.8rem;font-weight:900}.pdo-details-list{display:grid;gap:0;margin-top:15px}.pdo-details-list>div{display:grid;grid-template-columns:minmax(140px,.8fr) minmax(0,1.2fr);gap:20px;padding:14px 0;border-bottom:1px solid #eee4e5}.pdo-details-list span{color:#77686a}.pdo-details-list strong{text-align:right;color:#312326}.pdo-payment-grid,.pdo-contact-grid,.pdo-company-intro{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.72fr);gap:24px;align-items:start}.pdo-payment-progress{padding:18px;border-radius:18px;background:#faf6ed}.pdo-payment-progress>div:first-child{display:flex;justify-content:space-between;gap:15px}.pdo-progress-bar,.pdo-mini-progress{height:10px;border-radius:99px;background:#eadfe1;overflow:hidden;margin:12px 0 7px}.pdo-progress-bar span,.pdo-mini-progress span{display:block;height:100%;background:linear-gradient(90deg,#6a101d,#d3a951);border-radius:inherit}.pdo-bank-info{display:grid;gap:6px;padding:17px;border-radius:16px;background:#faf6ed;margin-bottom:18px}.pdo-success-card .pdo-details-list{text-align:left}
/* Original package cards populated by PHP */
.package-card .package-image img{display:block;width:100%;height:230px;object-fit:cover}.package-content h3 a{color:inherit;text-decoration:none}.package-card .badge{white-space:nowrap}.php-package-empty{grid-column:1/-1;text-align:center;padding:50px 20px;border-radius:18px;background:#fff;border:1px dashed #d6c8ca}.php-package-filter{align-items:center}.php-package-filter form{display:contents}.package-type-tabs,.search-category-tabs{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:18px}.package-type-tabs a,.search-category-tabs button{border:1px solid #ddd0d2;background:#fff;border-radius:13px;padding:12px 18px;font-weight:800;color:#4b3438;cursor:pointer}.package-type-tabs a.active,.search-category-tabs button.active{background:#68111d;border-color:#68111d;color:#fff}.travel-finder-panel{display:none}.travel-finder-panel.active,.umrah-finder-panel.active{display:block}.umrah-finder-panel{display:none}.search-category-tabs{justify-content:center;margin:-18px 0 25px;position:relative;z-index:2}.search-category-tabs button{min-width:190px;font-size:1rem}.search-category-tabs button i{margin-right:8px}.travel-destination-shell{background:#fff;border-radius:18px;padding:26px;box-shadow:0 20px 50px rgba(28,16,19,.12)}.travel-scope-tabs{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:24px}.travel-scope-tabs button{min-height:66px;border:1px solid #d7d7d7;border-radius:12px;background:#f8f8f8;font-size:1.1rem;font-weight:800;color:#333;cursor:pointer}.travel-scope-tabs button.active{border-color:#19a9e6;background:#e2f4ff;color:#149bd6;box-shadow:0 8px 18px rgba(25,169,230,.16)}.travel-fields{display:grid;grid-template-columns:1fr 1fr auto;gap:16px;align-items:end}.travel-fields .btn{min-height:48px;min-width:190px;background:#18a6df;border-color:#18a6df}.finder-category-title{font-size:.82rem;letter-spacing:.08em;text-transform:uppercase;font-weight:900;margin-bottom:12px}.hero-slide.php-hero-slide{min-height:650px;background-size:cover;background-position:center;position:relative}.hero-slide.php-hero-slide:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(28,1,6,.88),rgba(73,8,18,.56) 56%,rgba(35,2,8,.15))}.hero-slide.php-hero-slide .container{position:relative;z-index:1;min-height:650px;display:flex;align-items:center}.hero-copy{max-width:720px;color:#fff}.hero-copy h1{font-size:clamp(2.6rem,6vw,5.4rem);line-height:.98;margin:14px 0 20px;color:#fff}.hero-copy p{font-size:1.1rem;color:rgba(255,255,255,.85);max-width:620px}.hero-package-meta{display:flex;gap:10px;flex-wrap:wrap;margin:22px 0}.hero-package-meta span{padding:9px 13px;border:1px solid rgba(255,255,255,.24);border-radius:99px;background:rgba(255,255,255,.1);backdrop-filter:blur(8px)}.hero-price-line{display:flex;gap:15px;align-items:end;margin:18px 0}.hero-price-line small{display:block;color:#f0dca4}.hero-price-line strong{font-size:2rem;color:#fff}.hero-actions{display:flex;gap:12px;flex-wrap:wrap}.hero-admin-section .hero-side-card{width:100%}.hero-contact-layout-clean{display:grid;grid-template-columns:1.15fr .75fr auto;gap:24px;align-items:center}.hero-contact-profile{display:flex;gap:16px;align-items:center}.hero-contact-profile img{width:74px;height:74px;border-radius:18px;object-fit:cover}.hero-contact-profile h3{margin:3px 0}.hero-contact-info-clean{display:grid;gap:10px}.contact-info-card{display:flex;justify-content:space-between;gap:14px;align-items:center;padding:10px 13px;border-radius:12px;background:#faf6ef;color:inherit}.hero-contact-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}
/* Package detail & company */
.php-gallery-main{overflow:hidden;margin-bottom:18px}.php-gallery-main img{width:100%;aspect-ratio:16/9;object-fit:cover;display:block}.php-gallery-thumbs{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin-bottom:24px}.php-gallery-thumbs button{padding:0;border:0;background:transparent;cursor:pointer;border-radius:10px;overflow:hidden}.php-gallery-thumbs img{width:100%;height:82px;object-fit:cover;display:block}.pdo-company-intro .pdo-card{height:100%}.pdo-rich-content p{line-height:1.8}.pdo-vision-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.pdo-vision-grid article,.pdo-social-grid article{background:#fff;border-radius:20px;padding:26px;border:1px solid rgba(91,26,35,.08);box-shadow:0 15px 38px rgba(48,10,16,.06)}.pdo-vision-grid i,.pdo-social-grid i{font-size:1.8rem;color:#7b1422}.pdo-social-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.pdo-social-grid article{display:flex;gap:16px;align-items:center}.pdo-social-grid span{display:block;color:#7b6c6e}.pdo-leaders-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.pdo-leader-card{background:#fff;border-radius:24px;overflow:hidden;box-shadow:0 18px 45px rgba(44,10,16,.1)}.pdo-leader-card img{width:100%;height:580px;object-fit:cover;object-position:top}.pdo-leader-card div{padding:22px}.pdo-leader-card p{color:#7b1422;font-weight:800}.pdo-company-gallery{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.pdo-company-gallery button{border:0;padding:0;background:transparent;border-radius:16px;overflow:hidden;cursor:pointer}.pdo-company-gallery img{width:100%;height:230px;object-fit:cover;display:block;transition:.3s}.pdo-company-gallery button:hover img{transform:scale(1.04)}.pdo-lightbox{position:fixed;inset:0;background:rgba(15,3,6,.9);z-index:500;display:grid;place-items:center;padding:35px}.pdo-lightbox[hidden]{display:none}.pdo-lightbox img{max-width:94vw;max-height:88vh;border-radius:18px}.pdo-lightbox button{position:absolute;top:24px;right:24px;width:48px;height:48px;border:0;border-radius:50%;background:#fff;font-size:1.2rem}
/* News */
.pdo-news-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.pdo-news-card{background:#fff;border-radius:20px;overflow:hidden;border:1px solid rgba(91,26,35,.08);box-shadow:0 16px 42px rgba(48,10,16,.07)}.pdo-news-card img{width:100%;height:220px;object-fit:cover}.pdo-news-card>div{padding:22px}.pdo-news-card h3{margin:7px 0}.pdo-news-card a{font-weight:800;color:#7b1422}.pdo-rich-article{max-width:960px;margin:auto}.pdo-rich-article img{width:100%;max-height:540px;object-fit:cover;border-radius:20px;margin-bottom:24px}.pdo-rich-article .article-body{font-size:1.04rem;line-height:1.85}
/* Original panel shell with PHP content */
.panel-content>.panel-campaign{margin-bottom:24px}.sidebar-footer form{margin:0}.sidebar-footer button{width:100%}.panel-user .avatar{display:grid;place-items:center}.pdo-dashboard-hero{background:linear-gradient(135deg,#4a0913,#7f1726);color:#fff;border-radius:24px;padding:30px;position:relative;overflow:hidden;margin-bottom:22px}.pdo-dashboard-hero:after{content:"";position:absolute;width:230px;height:230px;border-radius:50%;right:-70px;top:-100px;border:35px solid rgba(255,255,255,.06)}.pdo-dashboard-hero h1{font-family:"Playfair Display",serif;color:#fff;margin:6px 0}.pdo-dashboard-hero p{color:rgba(255,255,255,.76);margin:0}.pdo-eyebrow{font-size:.76rem;text-transform:uppercase;letter-spacing:.13em;font-weight:900;color:#efd18a}.pdo-stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:22px}.pdo-stat-card,.stat-card{background:#fff;border-radius:18px;padding:20px;display:flex;justify-content:space-between;align-items:center;gap:14px;border:1px solid rgba(79,18,28,.08);box-shadow:0 12px 28px rgba(40,7,13,.06)}.pdo-stat-card>i{order:2;width:50px;height:50px;display:grid;place-items:center;border-radius:15px;background:#f7e9eb;color:#781321;font-size:1.25rem}.pdo-stat-card strong{display:block;font-size:1.45rem;color:#271b1d}.pdo-stat-card span{display:block;color:#776b6d;font-size:.87rem;margin-top:4px}.pdo-panel-grid{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:20px}.pdo-panel-card{padding:0;overflow:hidden}.pdo-toolbar,.panel-card-head,.table-toolbar{display:flex;justify-content:space-between;gap:18px;align-items:center;padding:20px 22px;border-bottom:1px solid #eee5e6}.pdo-toolbar h2,.pdo-panel-card h2{font-size:1.13rem;margin:0}.pdo-table-wrap,.table-responsive{overflow:auto}.pdo-table,.table-card table,.panel-card table{width:100%;border-collapse:collapse}.pdo-table th,.pdo-table td,.table-card th,.table-card td,.panel-card th,.panel-card td{padding:14px 16px;text-align:left;border-bottom:1px solid #f0e8e9;vertical-align:middle}.pdo-table th,.table-card th,.panel-card th{font-size:.76rem;text-transform:uppercase;letter-spacing:.06em;color:#78686b;background:#fcfaf8}.pdo-table tbody tr:hover,.table-card tbody tr:hover,.panel-card tbody tr:hover{background:#fffaf7}.pdo-quick-links{display:grid;padding:16px;gap:10px}.pdo-quick-links a{display:flex;gap:12px;align-items:center;padding:14px;border-radius:14px;background:#faf6ef;color:#3f292d;font-weight:800}.pdo-quick-links i{width:38px;height:38px;display:grid;place-items:center;border-radius:11px;background:#6a101d;color:#fff}.pdo-empty{text-align:center;color:#89797c;padding:34px!important}.pdo-actions-inline,.table-actions{display:flex;gap:7px;align-items:center;flex-wrap:wrap}.pdo-actions-inline form{display:flex;gap:7px;align-items:center}.pdo-actions-inline .pdo-select{min-height:38px;padding:7px 10px;width:auto}.pdo-panel-card>form,.pdo-panel-card>details,.pdo-panel-card>.pdo-form-grid,.pdo-panel-card>.pdo-admin-gallery{margin:20px}.pdo-panel-card details{border:1px solid #e8dcde;border-radius:16px;padding:16px}.pdo-panel-card details summary{cursor:pointer;font-weight:900}.pdo-editor-toolbar{display:flex;gap:7px;flex-wrap:wrap;padding:8px;background:#f7f2ee;border:1px solid #dfd5d6;border-bottom:0;border-radius:12px 12px 0 0}.pdo-editor-toolbar button{border:1px solid #d7c9cb;background:#fff;border-radius:7px;padding:6px 9px;cursor:pointer}.pdo-basic-editor{min-height:180px;border:1px solid #dfd5d6;border-radius:0 0 12px 12px;padding:14px;background:#fff}.pdo-admin-gallery{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}.pdo-admin-gallery article{border:1px solid #eadfe1;border-radius:12px;overflow:hidden;padding:7px}.pdo-admin-gallery img{width:100%;height:120px;object-fit:cover;border-radius:8px}.pdo-admin-gallery form{margin-top:7px}.pdo-profile-form{padding:24px}.points-hero{border-radius:24px;padding:30px;background:linear-gradient(135deg,#461019,#8b182a);color:#fff;display:flex;align-items:center;justify-content:space-between;margin-bottom:22px}.points-hero>i{font-size:5rem;color:#edcf84;opacity:.85}.points-hero strong{display:block;font-size:3.2rem}.reward-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:18px 0 26px}.table-card,.panel-card{background:#fff;border-radius:20px;border:1px solid rgba(70,14,23,.08);box-shadow:0 13px 32px rgba(43,8,14,.06);overflow:hidden;margin-bottom:22px}.panel-card-body{padding:22px}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.form-group{display:flex;flex-direction:column;gap:7px}.form-control,.form-select{font:inherit}
/* Modal compatibility */
.modal,.pdo-modal{position:fixed;inset:0;background:rgba(25,4,8,.66);z-index:400;display:none;align-items:center;justify-content:center;padding:20px}.modal.open,.pdo-modal.open{display:flex}.modal-dialog,.pdo-modal-dialog{width:min(960px,96vw);max-height:90vh;overflow:auto;background:#fff;border-radius:22px;box-shadow:0 30px 80px rgba(0,0,0,.28)}.modal-head,.pdo-modal-head{display:flex;justify-content:space-between;align-items:center;padding:19px 22px;border-bottom:1px solid #eee}.modal-body,.pdo-modal-body{padding:22px}
/* Responsive */
@media(max-width:1050px){.hero-contact-layout-clean{grid-template-columns:1fr 1fr}.hero-contact-actions{grid-column:1/-1;justify-content:flex-start}.pdo-stat-grid{grid-template-columns:repeat(2,1fr)}.pdo-panel-grid{grid-template-columns:1fr}.pdo-company-gallery{grid-template-columns:repeat(3,1fr)}.travel-fields{grid-template-columns:1fr 1fr}.travel-fields .btn{grid-column:1/-1}.pdo-news-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.pdo-section{padding:48px 0}.pdo-form-grid,.pdo-payment-grid,.pdo-contact-grid,.pdo-company-intro,.pdo-vision-grid,.pdo-leaders-grid,.pdo-social-grid,.form-grid{grid-template-columns:1fr}.pdo-field.full{grid-column:auto}.pdo-details-list>div{grid-template-columns:1fr;gap:5px}.pdo-details-list strong{text-align:left}.pdo-leader-card img{height:440px}.pdo-company-gallery{grid-template-columns:repeat(2,1fr)}.pdo-company-gallery img{height:160px}.pdo-news-grid{grid-template-columns:1fr}.pdo-stat-grid{grid-template-columns:1fr 1fr}.pdo-panel-grid{grid-template-columns:1fr}.pdo-admin-gallery{grid-template-columns:repeat(2,1fr)}.reward-grid{grid-template-columns:1fr}.hero-slide.php-hero-slide,.hero-slide.php-hero-slide .container{min-height:620px}.hero-copy h1{font-size:2.6rem}.hero-contact-layout-clean{grid-template-columns:1fr}.hero-contact-actions{grid-column:auto}.travel-scope-tabs{grid-template-columns:1fr 1fr}.travel-fields{grid-template-columns:1fr}.travel-fields .btn{grid-column:auto;width:100%}.search-category-tabs button{min-width:0;flex:1}.php-gallery-thumbs{grid-template-columns:repeat(4,1fr)}.php-gallery-thumbs img{height:64px}.pdo-page-banner{padding:54px 0}.pdo-auth-card{padding:28px 20px}.pdo-actions-inline form{align-items:stretch;flex-direction:column}.pdo-actions-inline .pdo-select{width:100%}}
@media(max-width:480px){.pdo-stat-grid{grid-template-columns:1fr}.pdo-company-gallery{grid-template-columns:1fr 1fr}.pdo-leader-card img{height:360px}.travel-scope-tabs button{min-height:56px;font-size:.95rem}.search-category-tabs{gap:7px}.search-category-tabs button{font-size:.88rem;padding:11px 8px}.hero-package-meta{gap:6px}.hero-package-meta span{font-size:.78rem}.floating-action-stack{right:10px;bottom:12px}.whatsapp-card{right:10px;left:10px;width:auto}}

/* =========================================================
   AS SALIK V3.1 — HERO 1:1 + UNIFIED PACKAGE FINDER
   ========================================================= */
[hidden]{display:none!important}

/* Keep the original two-column hero structure. */
.assalik-hero .hero-slide{position:relative!important}
.assalik-hero .hero-slide .container{position:relative!important;z-index:2!important}
.assalik-hero .hero-card-image{position:relative!important}
.assalik-hero .hero-card-image::after{content:"";position:absolute;inset:auto 0 0;height:42%;background:linear-gradient(180deg,transparent,rgba(36,3,8,.26));pointer-events:none}
.assalik-hero .hero-card-duration{z-index:3!important}
.assalik-hero .hero-info-grid span{display:grid!important;grid-template-columns:18px minmax(0,1fr)!important;grid-template-rows:auto auto!important;column-gap:8px!important;align-items:start!important;padding:9px 10px!important;border:1px solid #eadfdd!important;border-radius:12px!important;background:#fff!important;min-width:0!important}
.assalik-hero .hero-info-grid span i{grid-row:1 / 3!important;color:#d29b2d!important;margin-top:2px!important}
.assalik-hero .hero-info-grid span b{display:block!important;color:#89777b!important;text-transform:uppercase!important;letter-spacing:.055em!important}
.assalik-hero .hero-info-grid span:not(i):not(b){overflow-wrap:anywhere!important}
.assalik-hero .hero-card-footer span{min-width:0!important;overflow-wrap:anywhere!important}
.assalik-hero .hero-card-footer a{flex:none!important}
.assalik-hero .carousel-slide.active .hero-content,
.assalik-hero .carousel-slide.is-active .hero-content{animation:heroV31CopyIn .62s ease both}
.assalik-hero .carousel-slide.active .hero-card-preview,
.assalik-hero .carousel-slide.is-active .hero-card-preview{animation:heroV31CardIn .72s cubic-bezier(.2,.75,.25,1) .08s both}
@keyframes heroV31CopyIn{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
@keyframes heroV31CardIn{from{opacity:0;transform:translateX(28px)}to{opacity:1;transform:none}}

/* One finder card for both Umrah and Travel. */
.finder-category-tabs{margin:0 0 26px!important}
.finder-category-tabs button{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:9px!important;min-width:220px!important;min-height:58px!important;border-radius:16px!important}
.unified-finder-shell{display:grid!important;grid-template-columns:minmax(360px,.41fr) minmax(0,.59fr)!important;border-radius:30px!important}
.unified-finder-form{align-content:start!important}
.finder-travel-extra{display:grid;grid-template-columns:1fr;gap:18px}
.finder-travel-extra[hidden]{display:none!important}
.integrated-scope-tabs{margin:0!important}
.integrated-scope-tabs button{min-height:58px!important;background:#faf8f7!important;border-color:#ded4d5!important;color:#372a2c!important;font-size:1rem!important}
.integrated-scope-tabs button i{color:#8b0f22!important;margin-right:7px!important}
.integrated-scope-tabs button.active{background:#fff4d8!important;border-color:#dcae42!important;color:#71101e!important;box-shadow:0 9px 22px rgba(113,16,30,.1)!important}
.integrated-travel-selects{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.unified-finder-form .form-select,
.unified-finder-form .form-control{min-height:62px!important;border-radius:15px!important;background:#fff!important}
.unified-finder-form .quantity-control{min-height:62px!important;border-radius:15px!important;overflow:hidden!important}
.unified-finder-form .quantity-control input{min-height:60px!important}
.unified-finder-form .finder-submit-row{align-items:center!important}
.unified-finder-form .btn-finder{min-height:56px!important}
.finder-intro-v17 [data-finder-description]{max-width:430px}

@media(max-width:1050px){
  .unified-finder-shell{grid-template-columns:1fr!important}
  .finder-intro-v17{min-height:auto!important}
  .assalik-hero .hero-grid{grid-template-columns:minmax(0,1fr) 350px!important;gap:28px!important}
  .assalik-hero .hero-card-preview{max-width:350px!important}
}
@media(max-width:820px){
  .finder-category-tabs{display:grid!important;grid-template-columns:1fr 1fr!important}
  .finder-category-tabs button{min-width:0!important;width:100%!important;padding:11px 10px!important}
  .integrated-travel-selects{grid-template-columns:1fr!important}
  .unified-finder-form{grid-template-columns:1fr!important;padding:24px!important}
  .unified-finder-form .finder-span-2{grid-column:auto!important}
  .finder-travel-extra{grid-column:auto!important}
}
@media(max-width:700px){
  .assalik-hero .hero-card-preview{display:none!important}
  .assalik-hero .hero-grid{grid-template-columns:1fr!important}
  .assalik-hero .hero-content{padding:62px 0 100px!important}
  .assalik-hero .hero-title{font-size:clamp(2.55rem,12vw,3.45rem)!important}
  .assalik-hero .hero-trust{display:none!important}
  .finder-category-tabs button{font-size:.88rem!important}
  .finder-intro-v17{padding:28px 24px!important}
}
@media(max-width:480px){
  .finder-category-tabs{gap:8px!important}
  .finder-category-tabs button{min-height:52px!important;font-size:.8rem!important}
  .finder-category-tabs button i{display:none!important}
  .integrated-scope-tabs{grid-template-columns:1fr!important}
  .choice-chips{grid-template-columns:1fr!important}
}
