:root{
  --deep-green:#0B3B66;
  --deep-green-dark:#072A4D;
  --deep-green-light:#1B5A96;
  --emerald:#0C3B2E;
  --emerald-dark:#082922;
  --charcoal:#1B2430;
  --gold:#D98A3D;
  --gold-light:#F2B573;
  --ivory:#F7F9FC;
  --white:#FFFFFF;
  --radius:6px;
  --ease:cubic-bezier(.22,1,.36,1);
}

*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
::selection{ background:var(--gold); color:var(--charcoal); }

body{
  font-family:'Poppins', sans-serif;
  color:var(--charcoal);
  background:var(--white);
  line-height:1.65;
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}
main{ width:100%; overflow-x:hidden; }

#scrollProgress{
  position:fixed; top:0; left:0; height:3px;
  background:linear-gradient(90deg, var(--gold), var(--deep-green-light));
  z-index:1200; width:0%;
  transition:width .1s linear;
}

h1,h2,h3,h4,.display-font{
  font-family:'Sora', sans-serif;
  color:var(--charcoal);
  font-weight:700;
  letter-spacing:-0.02em;
}
h1,h2{ font-family:'Cormorant Garamond', serif; font-weight:700; letter-spacing:0; }
h2{ font-size:clamp(2.1rem, 3.4vw, 3.1rem); line-height:1.15; }
.font-serif{ font-family:'Cormorant Garamond', serif; }

a{ text-decoration:none; }
.text-green{ color:var(--deep-green) !important; }
.bg-green{ background:var(--deep-green) !important; }
.bg-ivory{ background:var(--ivory) !important; }
.text-gold{ color:var(--gold) !important; }
.bg-charcoal{ background:var(--charcoal) !important; }

.divider-gold{
  position:relative; width:72px; height:1px;
  background:linear-gradient(90deg, transparent, var(--gold), transparent);
  margin:0 0 1.5rem 0;
}
.divider-gold::before{
  content:""; position:absolute; top:50%; left:50%; width:7px; height:7px;
  background:var(--gold); transform:translate(-50%,-50%) rotate(45deg);
}
.section-label{ font-size:0.8rem; font-weight:600; color:var(--deep-green); margin-bottom:0.7rem; letter-spacing:0.08em; text-transform:uppercase; }

section{ padding:6.5rem 0; position:relative; }
@media (max-width:767px){
  .usp-tile,.custom-card{ display:flex; flex-direction:column; align-items:center; text-align:center !important; }
  section{ padding:3.75rem 0; }
}

/* subtle gold hairline marking the top edge of the darker luxury sections */
.hajj-section::before,.prive-section::before{
  content:""; position:absolute; top:0; left:0; right:0; height:1px; z-index:2;
  background:linear-gradient(90deg, transparent, rgba(217,138,61,0.7), transparent);
}

/* PAGE BANNER — consistent title + breadcrumb section used at the top of every inner page */
.page-banner{
  position:relative; overflow:hidden; text-align:center; color:#fff;
  padding:9.5rem 0 4rem;
  background:linear-gradient(160deg, var(--emerald) 0%, var(--emerald-dark) 60%, #061c17 100%);
}
.page-banner .breadcrumb-nav{
  display:flex; align-items:center; justify-content:center; gap:0.45rem;
  font-size:0.85rem; color:rgba(255,255,255,0.6); margin-bottom:1.1rem;
}
.page-banner .breadcrumb-nav a{ color:rgba(255,255,255,0.85); transition:color .25s ease; }
.page-banner .breadcrumb-nav a:hover{ color:var(--gold); }
.page-banner .breadcrumb-nav i{ font-size:0.65rem; color:rgba(255,255,255,0.4); }
.page-banner .breadcrumb-nav .current{ color:var(--gold-light); font-weight:600; }
.page-banner h1{ color:#fff; font-size:clamp(2.3rem, 4.2vw, 3.2rem); margin-bottom:0; }
.page-banner p{ color:rgba(255,255,255,0.75); max-width:620px; margin:1rem auto 0; }
@media (max-width:767px){ .page-banner{ padding:7.5rem 0 3rem; } }

/* NIHMA HOLIDAYS — infinite auto-sliding loop */
.holidays-slider-wrap{
  overflow:hidden;
  width:100%;
  -webkit-mask-image: linear-gradient(90deg, transparent, #000 4%, #000 96%, transparent);
  mask-image: linear-gradient(90deg, transparent, #000 4%, #000 96%, transparent);
}
.holidays-slider-track{
  display:flex;
  gap:1.5rem;
  width:max-content;
  animation: holidaysSlide 32s linear infinite;
}
.holidays-slider-track .dest-card{
  flex:0 0 auto;
  width:280px;
  height:300px;
}
@media (min-width:768px){
  .holidays-slider-track .dest-card{ width:320px; }
}
.holidays-slider-wrap:hover .holidays-slider-track{
  animation-play-state:paused;
}
@keyframes holidaysSlide{
  from{ transform:translateX(0); }
  to{ transform:translateX(-50%); }
}
@media (prefers-reduced-motion: reduce){
  .holidays-slider-track{ animation:none; }
}

/* NIHMA HOLIDAYS — package sliders inside the Domestic / International tabs */
.pkg-slider-wrap{
  overflow:hidden;
  width:100%;
  -webkit-mask-image: linear-gradient(90deg, transparent, #000 4%, #000 96%, transparent);
  mask-image: linear-gradient(90deg, transparent, #000 4%, #000 96%, transparent);
}
.pkg-slider-track{
  display:flex;
  gap:1.5rem;
  width:max-content;
  animation: pkgSlide 46s linear infinite;
}
.pkg-slider-track .pkg-card{
  flex:0 0 auto;
  width:300px;
}
@media (min-width:768px){
  .pkg-slider-track .pkg-card{ width:340px; }
}
.pkg-slider-wrap:hover .pkg-slider-track{
  animation-play-state:paused;
}
@keyframes pkgSlide{
  from{ transform:translateX(0); }
  to{ transform:translateX(-50%); }
}
@media (prefers-reduced-motion: reduce){
  .pkg-slider-track{ animation:none; }
}

/* Buttons */
.btn-nihma-primary,.btn-nihma-outline,.btn-whatsapp,.btn-gold-outline,.btn-outline-light{
  position:relative; overflow:hidden; isolation:isolate;
  display:inline-flex; align-items:center; gap:0.55rem;
  border-radius:50px !important;
  letter-spacing:0.02em;
}
.btn-nihma-primary::before,.btn-whatsapp::before,.btn-gold-solid::before{
  content:""; position:absolute; inset:0;
  background:linear-gradient(120deg, transparent, rgba(255,255,255,0.28), transparent);
  transform:translateX(-150%); transition:transform .6s var(--ease); z-index:1;
}
.btn-nihma-primary:hover::before,.btn-whatsapp:hover::before,.btn-gold-solid:hover::before{ transform:translateX(120%); }
.btn-nihma-primary span,.btn-whatsapp span,.btn-gold-solid span{ position:relative; z-index:2; }

.btn-nihma-primary::after,.btn-nihma-outline::after,.btn-whatsapp:not(.no-arrow)::after,.btn-outline-light::after,.btn-gold-outline::after,.btn-gold-solid::after{
  content:"\f135"; font-family:"bootstrap-icons"; font-size:0.72em;
  display:inline-flex; align-items:center; justify-content:center;
  width:1.9em; height:1.9em; border-radius:50%; position:relative; z-index:2; margin-left:0.2rem;
  transition:transform .35s var(--ease), background .35s var(--ease), color .35s var(--ease);
}
.btn-nihma-primary:hover::after,.btn-whatsapp:hover:not(.no-arrow)::after{ transform:translateX(4px) rotate(45deg); }
.btn-nihma-outline:hover::after,.btn-outline-light:hover::after,.btn-gold-outline:hover::after{ transform:translateX(4px) rotate(45deg); }
.btn-nihma-primary::after,.btn-whatsapp::after{ background:rgba(255,255,255,0.22); color:#fff; }
.btn-nihma-primary:hover::after,.btn-whatsapp:hover::after{ background:rgba(255,255,255,0.35); }
.btn-nihma-outline::after{ background:var(--deep-green); color:#fff; }
.btn-nihma-outline:hover::after{ background:#fff; color:var(--deep-green); }
.btn-outline-light::after{ background:rgba(255,255,255,0.18); color:#fff; }
.btn-outline-light:hover::after{ background:#fff; color:var(--deep-green); }
.btn-gold-outline::after{ background:var(--gold); color:var(--charcoal); }
.btn-gold-outline:hover::after{ background:var(--charcoal); color:var(--gold); }

.btn-nihma-primary{
  background:linear-gradient(135deg, var(--deep-green), var(--deep-green-light));
  border:1px solid var(--deep-green); color:#fff; font-weight:600;
  padding:0.85rem 1.75rem 0.85rem 1.9rem;
  transition:transform .3s var(--ease), box-shadow .3s var(--ease);
  box-shadow:0 8px 22px rgba(11,59,102,0.28);
}
.btn-nihma-primary:hover{ color:#fff; transform:translateY(-3px); box-shadow:0 16px 32px rgba(11,59,102,0.38); }
.btn-nihma-primary:active{ transform:translateY(-1px); }

.btn-nihma-outline{
  background:transparent; border:1.5px solid var(--deep-green); color:var(--deep-green); font-weight:600;
  padding:0.8rem 1.55rem 0.8rem 1.7rem; transition:all .35s var(--ease); z-index:1;
}
.btn-nihma-outline::before{
  content:""; position:absolute; inset:0; background:var(--deep-green);
  transform:scaleX(0); transform-origin:left; transition:transform .35s var(--ease); z-index:-1;
}
.btn-nihma-outline:hover{ color:#fff; transform:translateY(-2px); box-shadow:0 10px 22px rgba(11,59,102,0.18); }
.btn-nihma-outline:hover::before{ transform:scaleX(1); }

.btn-whatsapp{
  background:linear-gradient(135deg, #1f7a4d, #17603b); color:#fff; font-weight:600;
  padding:0.85rem 1.75rem 0.85rem 1.9rem; border:1px solid #1f7a4d;
  transition:transform .3s var(--ease), box-shadow .3s var(--ease);
  box-shadow:0 8px 22px rgba(31,122,77,0.32);
}
.btn-whatsapp:hover{ color:#fff; transform:translateY(-3px); box-shadow:0 16px 32px rgba(31,122,77,0.42); }

.btn-gold-outline{
  border:1.5px solid var(--gold); color:var(--gold); background:transparent; font-weight:600;
  padding:0.75rem 1.35rem 0.75rem 1.5rem; transition:all .3s var(--ease);
}
.btn-gold-outline:hover{ background:var(--gold); color:var(--charcoal); transform:translateY(-2px); box-shadow:0 10px 22px rgba(217,138,61,0.3); }

.btn-gold-solid{
  background:linear-gradient(135deg, var(--gold-light), var(--gold));
  border:1px solid var(--gold); color:var(--emerald-dark); font-weight:700;
  padding:0.85rem 1.75rem 0.85rem 1.9rem;
  box-shadow:0 10px 26px rgba(217,138,61,0.4);
  border-radius: 50px;
  overflow:hidden;
  transition:transform .3s var(--ease), box-shadow .3s var(--ease);
}
.btn-gold-solid:hover{ color:var(--emerald-dark); transform:translateY(-3px); box-shadow:0 18px 36px rgba(217,138,61,0.5); }
.btn-gold-solid::after{ background:rgba(8,41,34,0.18); color:var(--emerald-dark); }
.btn-gold-solid:hover::after{ background:rgba(8,41,34,0.3); }

.btn-outline-light{ transition:all .3s var(--ease); color:#fff; border:1.5px solid rgba(255,255,255,0.55); padding:0.75rem 1.35rem 0.75rem 1.5rem; }
.btn-outline-light:hover{ transform:translateY(-2px); box-shadow:0 10px 22px rgba(255,255,255,0.15); border-color:#fff; }

/* HEADER */
#mainHeader{
  position:fixed; top:0; left:0; right:0; z-index:1050;
  background:linear-gradient(180deg, rgba(0,0,0,0.35), rgba(0,0,0,0));
  transition:all .35s var(--ease); padding:6px 0;
}
#mainHeader.scrolled{
  background:#fff; backdrop-filter:blur(14px) saturate(160%); -webkit-backdrop-filter:blur(14px) saturate(160%);
  box-shadow:0 8px 30px rgba(12,25,20,0.08); padding:0px 0; border-bottom:1px solid rgba(11,59,102,0.06);
}
.logo{ display:none; transition:.5s; }
.scrolled .logo{ display:block; }
.logo-white{ display:block; transition:.5s; }
.scrolled .logo-white{ display:none; }
#mainHeader .navbar-brand{ font-family:'Sora', sans-serif; font-weight:800; font-size:1.4rem; color:#fff; transition:color .3s ease, letter-spacing .3s ease; }
.navbar-brand img{ width:150px; }
#mainHeader .navbar-brand:hover{ letter-spacing:0.3px; }
#mainHeader.scrolled .navbar-brand{ color:var(--deep-green); }
#mainHeader .nav-link{ position:relative; color:rgba(255,255,255,0.92); font-weight:500; font-size:0.85rem; margin:0 0rem; transition:color .25s ease; }
#mainHeader .nav-link::after{ content:""; position:absolute; left:0; bottom:-2px; width:0%; height:2px; background:var(--gold); transition:width .3s var(--ease); }
#mainHeader .nav-link:hover::after{ width:100%; }
#mainHeader.scrolled .nav-link{ color:var(--charcoal); }
#mainHeader .nav-link:hover{ color:var(--gold); }
#mainHeader .nav-link.active{ color:var(--gold); }
#mainHeader .nav-link.active::after{ width:100%; }
#mainHeader.scrolled .nav-link.active{ color:var(--gold); }
.navbar-toggler{ border:none; background:rgba(255,255,255,0.15); transition:background .25s ease; }
#mainHeader.scrolled .navbar-toggler{ background:rgba(11,59,102,0.08); }
.navbar-toggler i{ color:#fff; transition:color .3s ease; }
#mainHeader.scrolled .navbar-toggler i{ color:var(--charcoal); }

@media (max-width:991px){
  #mainHeader .navbar-collapse.show{ background:#fff; border-radius:10px; padding:1rem 1.25rem 1.25rem; margin-top:14px; box-shadow:0 20px 44px rgba(12,25,20,0.18); }
  #mainHeader .navbar-collapse.show .navbar-nav{ margin-left:0 !important; }
  #mainHeader .navbar-collapse.show .nav-link{ color:var(--charcoal); padding:0.55rem 0.1rem; }
  #mainHeader .navbar-collapse.show .nav-link:hover{ color:var(--deep-green); }
  #mainHeader .navbar-collapse.show .btn-nihma-primary{ width:100%; justify-content:center; }
}

/* HERO SLIDESHOW */
.split-hero{ position:relative; min-height:100vh; display:flex; padding-top:0; overflow:hidden; }
.hero-slideshow{ position:absolute; inset:0; z-index:0; overflow:hidden; }
.hero-slide{
  position:absolute; inset:0; background-size:cover; background-position:center;
  opacity:0; transform:scale(1); transition:opacity 1.8s ease-in-out;
  animation:heroZoom 16s ease-in-out infinite alternate;
}
.hero-slide.active{ opacity:1; }
@keyframes heroZoom{ 0%{ transform:scale(1); } 100%{ transform:scale(1.14); } }
@media (prefers-reduced-motion: reduce){ .hero-slide{ animation:none; } }
.hero-slideshow::after{
  content:""; position:absolute; inset:0; z-index:1;
  background:linear-gradient(180deg, rgba(6,20,17,0.55) 0%, rgba(6,20,17,0.68) 55%, rgba(6,20,17,0.8) 100%);
}
@media (max-width:991px){ .split-hero{ min-height:100vh; } }
.hero-overlay{ position:relative; z-index:2; width:100%; text-align:center; padding:0 1.5rem; }
.hero-center{
  position:absolute; top:0; left:0; right:0; bottom:0; z-index:5;
  display:flex; align-items:center; justify-content:center; pointer-events:none;
}
.hero-center-inner{ pointer-events:auto; text-align:center; max-width:860px; padding:2rem 1.75rem; }
.hero-eyebrow{
  display:inline-flex; align-items:center; gap:8px; color:var(--gold-light); font-weight:600; font-size:0.78rem;
  letter-spacing:0.12em; text-transform:uppercase; margin-bottom:1.4rem; padding:0.5rem 1.1rem; border:1px solid rgba(242,181,115,0.4);
  border-radius:50px; background:rgba(0,0,0,0.25);
}
.hero-eyebrow .dot{ width:6px;height:6px;border-radius:50%; background:var(--gold-light); animation:pulse 1.8s ease-in-out infinite; }
@keyframes pulse{ 0%,100%{ opacity:1; transform:scale(1); } 50%{ opacity:0.4; transform:scale(1.4); } }
@media (prefers-reduced-motion: reduce){ .hero-eyebrow .dot{ animation:none; } }
.split-hero h1{ color:#fff; font-size:clamp(2.5rem, 6.2vw, 3.4rem); line-height:1.12; margin-bottom:1.3rem; text-shadow:0 4px 30px rgba(0,0,0,0.45); }
@media (max-width:767px){ .btn{ font-size:0.9rem !important; } }
.split-hero p.lead-copy{ color:rgba(255,255,255,0.9); font-size:1rem; max-width:600px; margin:0 auto 2rem; }
.gate-row{ display:flex; flex-wrap:wrap; gap:0.85rem; justify-content:center; }

/* TRUST STRIP */
.trust-strip{ position:relative; background:linear-gradient(135deg, var(--deep-green-dark) 0%, var(--deep-green) 55%, var(--deep-green-light) 100%); padding:3.5rem 0; overflow:hidden; }
.trust-item{
    text-align:center;
  padding:1.35rem 1rem; border-radius:16px; height:100%; background:rgba(255,255,255,0.06); border:1px solid rgba(255,255,255,0.12);
  backdrop-filter:blur(6px); position:relative; z-index:1;
  transition:transform .4s var(--ease), background .4s var(--ease), border-color .4s var(--ease), box-shadow .4s var(--ease);
}
.trust-item:hover{ transform:translateY(-8px); background:rgba(255,255,255,0.12); border-color:rgba(217,138,61,0.5); box-shadow:0 18px 36px rgba(0,0,0,0.25); }
.trust-item i{
  font-size:1.4rem; color:var(--gold-light); margin-bottom:0.85rem; display:flex; align-items:center; justify-content:center;
  width:54px; height:54px; border-radius:50%; background:rgba(255,255,255,0.1); border:1px solid rgba(255,255,255,0.2);
  margin-left:auto; margin-right:auto; transition:transform .45s var(--ease), background .45s var(--ease), color .45s var(--ease);
}
.trust-item:hover i{ transform:scale(1.12) rotate(-8deg); background:linear-gradient(145deg, var(--gold), var(--gold-light)); color:var(--deep-green-dark); border-color:transparent; }
.trust-item h4{ font-size:1rem; margin-bottom:0.3rem; color:#fff; }
.trust-item p{ font-size:0.86rem; color:rgba(255,255,255,0.68); margin:0; }

/* Light ambient background used by several sections */
.light-ambient{ position:relative; overflow:hidden; }
.light-ambient > .container{ position:relative; z-index:1; }
.light-ambient-field{ position:absolute; inset:0; z-index:0; pointer-events:none; }
.light-ambient-field .lblob{ position:absolute; border-radius:50%; filter:blur(70px); }
.light-ambient img{ border-radius:22px; }
.light-ambient-field .lblob-gold{ background:radial-gradient(circle at 30% 30%, var(--gold-light), var(--gold) 70%); opacity:0.28; }
.light-ambient-field .lblob-green{ background:radial-gradient(circle at 30% 30%, var(--deep-green-light), var(--deep-green) 70%); opacity:0.24; }
.light-ambient-field .lgrid{
  position:absolute; inset:0; opacity:0.05;
  background-image:linear-gradient(rgba(11,59,102,0.7) 1px, transparent 1px), linear-gradient(90deg, rgba(11,59,102,0.7) 1px, transparent 1px);
  background-size:56px 56px;
  -webkit-mask-image:radial-gradient(ellipse 80% 60% at 50% 40%, #000 40%, transparent 90%);
  mask-image:radial-gradient(ellipse 80% 60% at 50% 40%, #000 40%, transparent 90%);
}

/* THREE PILLARS */
.service-card{ position:relative; background:#fff; border-radius:16px; overflow:hidden; border:1px solid #ece7d9; height:100%; transition:transform .4s var(--ease), box-shadow .4s var(--ease); }
.service-card:hover{ transform:translateY(-8px); box-shadow:0 24px 44px rgba(12,59,46,0.16); }
.service-card img{ height:230px; width:100%; object-fit:cover; }
.service-card .body{ padding:1.65rem; }
.service-card h5{ font-size:1.15rem; margin-bottom:0.6rem; }
.service-card p{ font-size:0.92rem; color:#5c584d; }
.service-card a{ font-weight:600; color:var(--deep-green); font-size:0.92rem; }
.service-card a i{ transition:transform .2s ease; }
.service-card a:hover i{ transform:translateX(3px); }
.pillar-tag{ font-size:0.72rem; font-weight:700; letter-spacing:0.04em; color:var(--gold); margin-bottom:0.4rem; display:block; }

/* gold corner-frame accent, revealed on hover — a small luxury flourish on key imagery */
.service-card::before,.service-card::after,.dest-card::before,.dest-card::after,.pkg-card::before,.pkg-card::after{
  content:""; position:absolute; width:28px; height:28px; opacity:0; z-index:4; pointer-events:none;
  transition:opacity .4s ease, width .4s ease, height .4s ease;
}
.service-card::before,.dest-card::before,.pkg-card::before{ top:12px; left:12px; border-top:2px solid var(--gold-light); border-left:2px solid var(--gold-light); }
.service-card::after,.dest-card::after,.pkg-card::after{ bottom:12px; right:12px; border-bottom:2px solid var(--gold-light); border-right:2px solid var(--gold-light); }
.service-card:hover::before,.service-card:hover::after,.dest-card:hover::before,.dest-card:hover::after,.pkg-card:hover::before,.pkg-card:hover::after{ opacity:1; width:34px; height:34px; }

/* DEST CARD (Holidays preview) */
.dest-card{ position:relative; border-radius:8px; overflow:hidden; height:300px; }
.dest-card img{ width:100%; height:100%; object-fit:cover; transition:transform .4s ease; }
.dest-card:hover img{ transform:scale(1.07); }
.dest-overlay{ position:absolute; inset:0; background:linear-gradient(180deg, rgba(0,0,0,0) 40%, rgba(0,0,0,0.75) 100%); display:flex; flex-direction:column; justify-content:flex-end; padding:1.5rem; }
.dest-overlay h5{ color:#fff; margin-bottom:0.25rem; }
.dest-overlay p{ color:rgba(255,255,255,0.85); font-size:0.85rem; margin-bottom:0.75rem; }
.dest-overlay a{ color:var(--gold); font-weight:600; font-size:0.88rem; }

/* HOLIDAY PACKAGE CARDS (Domestic / International grids) */
.pkg-card{ position:relative; border-radius:14px; overflow:hidden; height:340px; }
.pkg-card img{ width:100%; height:100%; object-fit:cover; transition:transform .5s var(--ease); }
.pkg-card:hover img{ transform:scale(1.08); }
.pkg-badge{ position:absolute; top:14px; left:14px; z-index:2; background:rgba(0,0,0,0.55); backdrop-filter:blur(4px); color:#fff; font-size:0.72rem; font-weight:600; letter-spacing:0.03em; padding:0.35rem 0.75rem; border-radius:50px; display:inline-flex; align-items:center; gap:0.35rem; }
.pkg-overlay{ position:absolute; inset:0; background:linear-gradient(180deg, rgba(0,0,0,0) 32%, rgba(0,0,0,0.85) 100%); display:flex; flex-direction:column; justify-content:flex-end; padding:1.5rem; }
.pkg-overlay h5{ color:#fff; margin-bottom:0.2rem; }
.pkg-overlay p.pkg-desc{ color:rgba(255,255,255,0.82); font-size:0.85rem; margin-bottom:0.6rem; }
.pkg-price{ color:var(--gold-light); font-weight:700; font-size:0.95rem; margin-bottom:0.85rem; display:block; }
.pkg-overlay a{ color:#fff; font-weight:600; font-size:0.86rem; display:inline-flex; align-items:center; gap:0.4rem; background:linear-gradient(135deg, var(--deep-green), var(--deep-green-light)); padding:0.55rem 1.05rem; border-radius:50px; width:fit-content; transition:transform .25s ease, box-shadow .25s ease; }
.pkg-overlay a:hover{ transform:translateY(-2px); box-shadow:0 10px 20px rgba(11,59,102,0.35); color:#fff; }
.pkg-tabs{ display:inline-flex; gap:0.6rem; background:#fff; border:1px solid #ece7d9; padding:0.4rem; border-radius:50px; box-shadow:0 8px 20px rgba(12,25,20,0.06); }
.pkg-tabs a,.pkg-tabs .nav-link{ padding:0.55rem 1.3rem; border-radius:50px; font-weight:600; font-size:0.88rem; color:var(--charcoal); transition:all .3s var(--ease); border:none; background:transparent; }
.pkg-tabs a:hover,.pkg-tabs .nav-link:hover{ background:var(--ivory); color:var(--charcoal); }
.pkg-tabs .nav-link.active{ background:linear-gradient(135deg, var(--deep-green), var(--deep-green-light)); color:#fff; box-shadow:0 8px 18px rgba(11,59,102,0.28); }
.pkg-tabs .nav-link.active:hover{ background:linear-gradient(135deg, var(--deep-green), var(--deep-green-light)); color:#fff; }

/* PILGRIMAGES — light blue band (2nd section) */
.hajj-section{
  position:relative;
  background:linear-gradient(160deg, #EAF2FB 0%, #ffffff 55%, #EAF2FB 100%);
}
.hajj-section h2{ color:var(--charcoal); }
.hajj-section p{ color:#5c584d; }
.pilgrim-feature{
  display:flex; align-items:flex-start; gap:0.85rem; text-align:left;
  padding:1.1rem 1.2rem; border-radius:12px; background:#fff; border:1px solid #dbe7f5;
  box-shadow:0 8px 20px rgba(11,59,102,0.06);
  height:100%; transition:transform .35s var(--ease), background .35s var(--ease), border-color .35s var(--ease), box-shadow .35s var(--ease);
}
.pilgrim-feature:hover{ transform:translateY(-6px); border-color:var(--deep-green-light); box-shadow:0 16px 32px rgba(11,59,102,0.16); }
.pilgrim-feature i{
  font-size:1.05rem; color:var(--deep-green); flex:0 0 auto; width:38px; height:38px; border-radius:50%;
  display:flex; align-items:center; justify-content:center; background:rgba(11,59,102,0.08); border:1px solid rgba(11,59,102,0.18);
  transition:transform .35s var(--ease), background .35s var(--ease), color .35s var(--ease), border-color .35s var(--ease);
}
.pilgrim-feature:hover i{ transform:scale(1.1) rotate(-6deg); background:linear-gradient(145deg, var(--deep-green), var(--deep-green-light)); color:#fff; border-color:transparent; }
.pilgrim-feature h6{ color:var(--charcoal); font-size:0.92rem; margin-bottom:0.2rem; font-family:'Sora', sans-serif; font-weight:700; }
.pilgrim-feature p{ color:#5c584d; font-size:0.83rem; margin:0; }

/* PILGRIMAGES — "What We Handle" band (3rd section) */
.care-section{ position:relative; background:linear-gradient(160deg, #ffffff 0%, #F0F6FC 100%); }
.care-card{
  position:relative; background:#fff; border:1px solid #dbe7f5; border-radius:16px; padding:1.75rem; height:100%;
  transition:transform .35s var(--ease), border-color .35s var(--ease), box-shadow .35s var(--ease);
}
.care-card:hover{ transform:translateY(-8px); border-color:var(--deep-green-light); box-shadow:0 18px 36px rgba(11,59,102,0.16); }
.care-icon{
  width:52px; height:52px; border-radius:14px; display:flex; align-items:center; justify-content:center;
  background:rgba(11,59,102,0.08); border:1px solid rgba(11,59,102,0.18); color:var(--deep-green); margin-bottom:1rem;
  transition:transform .35s var(--ease), background .35s var(--ease), color .35s var(--ease), border-color .35s var(--ease);
}
.care-card:hover .care-icon{ background:linear-gradient(145deg, var(--deep-green), var(--deep-green-light)); color:#fff; border-color:transparent; transform:rotate(-6deg) scale(1.06); }
.care-card h5{ font-size:1.05rem; margin-bottom:0.5rem; }
.care-card p{ font-size:0.9rem; color:#5c584d; margin:0; }
.care-tag{ font-size:0.72rem; font-weight:700; letter-spacing:0.04em; color:var(--deep-green); margin-bottom:0.4rem; display:block; text-transform:uppercase; }

/* PRIVÉ SECTION — light band, emerald gradient cards */
.prive-section{ position:relative; background:linear-gradient(160deg, #ffffff 0%, var(--ivory) 55%, #ffffff 100%); overflow:hidden; }
.prive-section .blob-field{ position:absolute; inset:0; overflow:hidden; z-index:0; pointer-events:none; }
.prive-section .blob{ position:absolute; border-radius:50%; filter:blur(70px); opacity:0.22; }
.prive-section .container{ position:relative; z-index:1; }
.prive-section h2{ color:var(--charcoal); }
.prive-card{
  position:relative; height:100%; padding:2.25rem 1.85rem; border-radius:18px;
  background:linear-gradient(150deg, var(--emerald), var(--emerald-dark)); border:1px solid rgba(217,138,61,0.28);
  box-shadow:0 8px 28px rgba(12,59,46,0.22);
  transition:transform .4s var(--ease), border-color .4s var(--ease), box-shadow .4s var(--ease);
}
.prive-card:hover{ transform:translateY(-8px); border-color:var(--gold); box-shadow:0 20px 40px rgba(12,59,46,0.32); }
.prive-card .tier-name{ font-family:'Cormorant Garamond', serif; font-weight:700; font-size:1.55rem; color:var(--gold-light); margin-bottom:0.15rem; }
.prive-card .tier-sub{ font-size:0.78rem; letter-spacing:0.05em; color:rgba(255,255,255,0.6); margin-bottom:1rem; text-transform:uppercase; }
.prive-card p{ color:rgba(255,255,255,0.85); font-size:0.93rem; margin-bottom:1.1rem; }
.prive-avail{
  display:inline-block; font-size:0.75rem; font-weight:600; color:var(--emerald-dark);
  background:linear-gradient(135deg, var(--gold), var(--gold-light)); padding:0.35rem 0.85rem; border-radius:50px;
}
.prive-cta-wrap{ text-align:center; margin-top:3rem; }

/* OPERATIONAL PILLARS — light ivory dominant (70%) / emerald accent (30%), matching the Privé emerald family */
.ops-section{ position:relative; background:linear-gradient(160deg, #ffffff 0%, var(--ivory) 55%, #ffffff 100%); overflow:hidden; }
.ops-section .blob-field{ position:absolute; inset:0; overflow:hidden; z-index:0; pointer-events:none; }
.ops-section .blob{ position:absolute; border-radius:50%; filter:blur(70px); opacity:0.16; }
.ops-section .container{ position:relative; z-index:1; }
.ops-section h2{ color:var(--charcoal); }
.ops-section > .container > .row > div > p{ color:#5c584d !important; }
.ops-card{
  position:relative; height:100%; text-align:left; border-radius:20px;
  background:linear-gradient(150deg, var(--deep-green), var(--deep-green-dark)); border:1px solid var(--deep-green-light);
  box-shadow:0 8px 28px rgba(11,59,102,0.18); overflow:hidden; display:flex; flex-direction:column;
  transition:transform .4s var(--ease), box-shadow .4s var(--ease), border-color .4s var(--ease);
}
.ops-card:hover{ transform:translateY(-10px); border-color:rgba(217,138,61,0.55); box-shadow:0 20px 40px rgba(11,59,102,0.28); }
.ops-card-img{ width:100%; height:170px; background-size:cover; background-position:center; flex-shrink:0; }
.ops-card-body{ padding:1.75rem 1.75rem 2.25rem; position:relative; }
.ops-icon-orb{
  width:64px; height:64px; border-radius:18px; display:flex; align-items:center; justify-content:center;
  background:linear-gradient(145deg, rgba(255,255,255,0.16), rgba(255,255,255,0.05)); border:1px solid rgba(255,255,255,0.28);
  margin-bottom:1.25rem; margin-top:-56px; position:relative; z-index:1; transition:transform .45s var(--ease), background .45s var(--ease), border-color .45s var(--ease);
  backdrop-filter:blur(6px);
}
.ops-icon-orb i{ font-size:1.6rem; color:#fff; transition:transform .45s var(--ease); }
.ops-card:hover .ops-icon-orb{ transform:rotate(-8deg) scale(1.08); background:linear-gradient(145deg, var(--gold), var(--gold-light)); border-color:transparent; }
.ops-card:hover .ops-icon-orb i{ color:var(--emerald-dark); transform:scale(1.05); }
.ops-card h5{ color:#fff; font-size:1.08rem; margin-bottom:0.6rem; position:relative; z-index:1; }
.ops-card p{ color:rgba(255,255,255,0.82); font-size:0.9rem; margin:0; position:relative; z-index:1; }

/* GUESTBOOK */
.guestbook-card{
  max-width:760px; margin:0 auto; text-align:center; padding:3rem 2.5rem; border-radius:18px;
  background:linear-gradient(150deg, var(--deep-green), var(--deep-green-dark)); border:1px solid var(--deep-green-light); position:relative;
}
.guestbook-card i.bi-quote{ font-size:2rem; color:var(--gold); display:block; margin-bottom:1rem; }
.guestbook-card p.quote{ font-family:'Cormorant Garamond', serif; font-style:italic; font-size:1.35rem; color:#fff; line-height:1.55; margin-bottom:1.25rem; }
.guestbook-card .cust-name{ font-weight:700; font-size:0.95rem; margin-bottom:0; color:#fff; }
.guestbook-card .cust-role{ font-size:0.82rem; color:rgba(255,255,255,0.75); }
#guestbookCarousel{ max-width:760px; margin:0 auto; }
#guestbookCarousel .carousel-indicators{ position:static; margin-top:1.5rem; }
#guestbookCarousel .carousel-indicators [data-bs-target]{
  width:9px; height:9px; border-radius:50%; background-color:#ddd6c4; border:none; opacity:1; margin:0 5px;
  transition:background-color .3s ease, transform .3s ease;
}
#guestbookCarousel .carousel-indicators .active{ background-color:var(--gold); transform:scale(1.2); }
#guestbookCarousel .carousel-control-prev, #guestbookCarousel .carousel-control-next{
  width:44px; height:44px; top:50%; transform:translateY(-50%); border-radius:50%;
  background:#fff; box-shadow:0 8px 20px rgba(11,59,102,0.14); opacity:1;
}
#guestbookCarousel .carousel-control-prev{ left:-22px; }
#guestbookCarousel .carousel-control-next{ right:-22px; }
#guestbookCarousel .carousel-control-prev-icon, #guestbookCarousel .carousel-control-next-icon{ filter:invert(1); width:1rem; height:1rem; }
@media (max-width:767px){ #guestbookCarousel .carousel-control-prev, #guestbookCarousel .carousel-control-next{ display:none; } }

/* FAQ */
.accordion-button{ font-weight:600; font-family:'Sora', sans-serif; font-size:1rem; color:var(--charcoal); }
.accordion-button:not(.collapsed){ background:var(--ivory); color:var(--deep-green); box-shadow:none; }
.accordion-button:focus{ box-shadow:none; border-color:#ece7d9; }
.accordion-item{ border-color:#ece7d9; margin-bottom:0.6rem; border-radius:6px !important; overflow:hidden; }

.map-frame{ border-radius:8px; overflow:hidden; border:1px solid #ece7d9; }

/* FINAL CTA */
.final-cta{ background:linear-gradient(120deg, var(--deep-green), var(--deep-green-dark)); color:#fff; position:relative; overflow:hidden; }
.final-cta .blob{ opacity:0.35; }
.final-cta h2{ color:#fff; }
.final-cta p{ color:rgba(255,255,255,0.85); }
.final-cta .small-heading{ color:var(--gold); font-weight:600; font-size:0.85rem; letter-spacing:0.03em; }

.blob-field{ position:absolute; inset:0; overflow:hidden; z-index:0; pointer-events:none; }
.blob{ position:absolute; border-radius:50%; filter:blur(60px); opacity:0.45; }
.blob-gold{ background:radial-gradient(circle at 30% 30%, var(--gold-light), var(--gold) 70%); }
.blob-green{ background:radial-gradient(circle at 30% 30%, var(--deep-green-light), var(--deep-green) 70%); }
.grain-lines{ position:absolute; inset:0; z-index:0; opacity:0.06; background-image:repeating-linear-gradient(115deg, #fff 0px, #fff 1px, transparent 1px, transparent 64px); }

/* FOOTER */
footer{ background:var(--charcoal); color:rgba(255,255,255,0.75); }
footer h6{ color:#fff; font-family:'Sora', sans-serif; font-weight:700; margin-bottom:1.1rem; font-size:0.95rem; }
footer a{ color:rgba(255,255,255,0.65); font-size:0.9rem; }
footer a:hover{ color:var(--gold); }
footer ul{ list-style:none; padding:0; margin:0; }
footer li{ margin-bottom:0.6rem; }
.footer-legal{ font-size:0.78rem; color:rgba(255,255,255,0.45); margin-top:0.75rem; }
.footer-social a{ display:inline-flex; align-items:center; justify-content:center; width:36px; height:36px; border-radius:50%; border:1px solid rgba(255,255,255,0.2); margin-right:0.5rem; transition:all .25s ease; }
.footer-social a:hover{ background:var(--gold); border-color:var(--gold); color:var(--charcoal); }
.footer-bottom{ border-top:1px solid rgba(255,255,255,0.1); padding-top:1.25rem; margin-top:2.5rem; font-size:0.82rem; }

/* MOBILE STICKY BAR */
.mobile-sticky-bar{ position:fixed; bottom:0; left:0; right:0; z-index:1100; background:#fff; box-shadow:0 -4px 16px rgba(0,0,0,0.12); display:flex; gap:10px; padding:8px 10px; height:auto; }
.mobile-sticky-bar a{ flex:1; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:2px; font-size:0.72rem; font-weight:600; color:#fff; border-radius:50px; padding:8px 4px; border:none; transition:transform .25s var(--ease), box-shadow .25s var(--ease); }
.mobile-sticky-bar a:active{ transform:scale(0.96); }
.mobile-sticky-bar a i{ font-size:1.1rem; }
.mobile-sticky-bar a.call{ background:var(--deep-green); box-shadow:0 6px 14px rgba(11,59,102,0.3); }
.mobile-sticky-bar a.wa{ background:#1f7a4d; box-shadow:0 6px 14px rgba(31,122,77,0.3); }
.mobile-sticky-bar a.quote{ background:linear-gradient(135deg, var(--gold), var(--gold-light)); color:var(--deep-green-dark); box-shadow:0 6px 14px rgba(217,138,61,0.35); }
@media (min-width:768px){ .mobile-sticky-bar{ display:none; } }

.floating-cta{ position:fixed; bottom:28px; right:28px; z-index:1090; display:flex; flex-direction:column; gap:12px; }
.floating-cta a{ width:52px; height:52px; border-radius:50%; display:flex; align-items:center; justify-content:center; color:#fff; font-size:1.35rem; box-shadow:0 8px 20px rgba(0,0,0,0.25); }
.floating-cta a.wa{ background:#1f7a4d; }
.floating-cta a.call{ background:var(--deep-green); }
@media (max-width:767px){ .floating-cta a{ width:46px; height:46px; font-size:1.15rem; } }

#enquiryModal .modal-content{ border-radius:10px; border:none; }
#enquiryModal .modal-header{ border-bottom:none; padding-bottom:0; }
#enquiryModal .modal-body{ padding-top:0.5rem; }
.form-label-sm{ font-size:0.85rem; font-weight:600; }

.reveal{ opacity:0; transform:translateY(20px); transition:opacity .5s ease, transform .5s ease; }
.reveal.is-visible{ opacity:1; transform:translateY(0); }
@media (prefers-reduced-motion: reduce){ .reveal{ opacity:1; transform:none; transition:none; } html{ scroll-behavior:auto; } }
