/* i47 premium public website and release polish: local assets only, no CDN dependency. */
:root {
  --premium-ink: #14120f;
  --premium-copper: #a65f1b;
  --premium-sand: #fff7ed;
  --premium-mist: #eef2ff;
  --premium-ring: rgba(180,83,9,.24);
}
.skip-link {
  position: fixed;
  left: 16px;
  top: -80px;
  z-index: 1000;
  padding: 12px 16px;
  border-radius: 999px;
  background: #111827;
  color: #fff;
  font-weight: 900;
  transition: top .16s ease;
}
.skip-link:focus { top: 14px; outline: 3px solid #f59e0b; outline-offset: 3px; }
.public-layout .topbar { background: rgba(255,255,255,.84); }
.public-layout .hero { padding: 34px 0 24px; }
.public-layout .hero-panel {
  min-height: 640px;
  border: 1px solid rgba(255,255,255,.74);
  background:
    linear-gradient(135deg, rgba(255,255,255,.92), rgba(255,247,237,.76) 30%, rgba(240,253,250,.72) 64%, rgba(238,242,255,.9)),
    var(--hero-gradient);
  overflow: hidden;
}
.public-layout .hero-panel h1 { max-width: 840px; letter-spacing: -.07em; }
.public-layout .hero-panel:after {
  width: min(48%, 360px);
  height: 220px;
  opacity: .34;
  filter: drop-shadow(0 24px 44px rgba(76,29,11,.16));
}
.premium-trip-search {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(160px,1.2fr) minmax(150px,1fr) minmax(150px,.9fr) auto;
  gap: 10px;
  margin: 28px 0 14px;
  padding: 12px;
  border: 1px solid rgba(255,255,255,.72);
  border-radius: 28px;
  background: rgba(255,255,255,.82);
  box-shadow: 0 22px 60px rgba(15,23,42,.10);
  backdrop-filter: blur(18px);
}
.premium-search-field {
  min-width: 0;
  display: grid;
  gap: 5px;
  padding: 9px 12px;
  border: 1px solid rgba(148,163,184,.24);
  border-radius: 20px;
  background: rgba(255,255,255,.88);
}
.premium-search-field label { font-size: 11px; color: #64748b; font-weight: 950; text-transform: uppercase; letter-spacing: .08em; }
.premium-search-field select,
.premium-search-field input { border: 0; outline: 0; background: transparent; color: #1f2937; font-weight: 900; min-height: 28px; }
.premium-trust-strip {
  position: relative;
  z-index: 1;
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
  margin: 16px 0 4px;
}
.premium-trust-strip span {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
  padding: 9px 13px;
  border-radius: 999px;
  border: 1px solid rgba(180,83,9,.16);
  background: rgba(255,255,255,.74);
  color: #4c1d0b;
  font-size: 13px;
  font-weight: 950;
  box-shadow: 0 10px 25px rgba(15,23,42,.06);
}
.premium-trust-strip span:before { content: "✓"; margin-right: 8px; color: #047857; font-weight: 950; }
.premium-login-panel { box-shadow: 0 26px 80px rgba(15,23,42,.14); }
.premium-assurance,
.premium-lanes { background: linear-gradient(135deg, rgba(255,255,255,.96), rgba(248,250,252,.88)); }
.premium-assurance-grid,
.premium-lane-grid { display: grid; gap: 16px; }
.premium-assurance-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.premium-lane-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.premium-assurance-card,
.premium-lane {
  min-height: 190px;
  padding: 22px;
  border: 1px solid rgba(148,163,184,.22);
  border-radius: 28px;
  background:
    radial-gradient(circle at top right, rgba(245,158,11,.14), transparent 44%),
    rgba(255,255,255,.92);
  box-shadow: 0 18px 48px rgba(15,23,42,.08);
}
.premium-assurance-card span {
  display: inline-grid;
  place-items: center;
  width: 46px;
  height: 46px;
  border-radius: 16px;
  color: #fff;
  background: linear-gradient(135deg, var(--primary), var(--secondary));
  font-weight: 950;
  box-shadow: 0 12px 30px var(--premium-ring);
}
.premium-assurance-card h3,
.premium-lane strong { display: block; margin: 16px 0 8px; font-size: 20px; color: #1f2937; }
.premium-assurance-card p,
.premium-lane p { margin: 0; color: #64748b; line-height: 1.72; font-weight: 650; }
.premium-lane { min-height: 170px; }
.btn, .portal-tabs button, .mini-btn, .admin-menu a { min-height: 44px; }
button:focus-visible, a:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible {
  outline: 3px solid color-mix(in srgb, var(--accent) 55%, white);
  outline-offset: 3px;
}
.status-note[role="status"] { border-left: 4px solid var(--primary); }
.admin-body .admin-hero { background: linear-gradient(135deg, rgba(255,255,255,.96), rgba(255,247,237,.82), rgba(240,253,250,.72)); }
.admin-body .sidebar { background: rgba(255,255,255,.92); }
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; animation-duration: .01ms !important; }
}
@media (max-width: 1080px) {
  .premium-trip-search { grid-template-columns: 1fr 1fr; }
  .premium-assurance-grid, .premium-lane-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
}
@media (max-width: 640px) {
  .public-layout .hero-panel { min-height: auto; }
  .premium-trip-search, .premium-assurance-grid, .premium-lane-grid { grid-template-columns: 1fr; }
  .premium-trip-search { border-radius: 22px; }
}

/* i58 premium separation: public site is discovery only; login moves to dedicated role pages. */
.public-layout {
  background:
    radial-gradient(circle at 12% 4%, rgba(245,158,11,.16), transparent 32%),
    radial-gradient(circle at 82% 2%, rgba(20,184,166,.15), transparent 30%),
    linear-gradient(180deg, #fffaf0 0%, #f8fafc 48%, #ffffff 100%);
}
.public-layout .topbar {
  position: sticky;
  top: 0;
  z-index: 100;
  border-bottom: 1px solid rgba(148,163,184,.18);
  box-shadow: 0 16px 44px rgba(15,23,42,.06);
  backdrop-filter: blur(20px);
}
.public-layout .hero-grid { grid-template-columns: minmax(0,1.35fr) minmax(340px,430px); }
.public-layout .hero-panel {
  background:
    radial-gradient(circle at 10% 0%, rgba(255,255,255,.96), transparent 30%),
    radial-gradient(circle at 80% 18%, rgba(251,191,36,.22), transparent 30%),
    linear-gradient(135deg, rgba(255,255,255,.97), rgba(255,247,237,.84) 42%, rgba(236,253,245,.82));
}
.public-layout .hero-panel h1 {
  font-size: clamp(44px, 6.6vw, 84px);
  line-height: .92;
}
.premium-journey-card,
.auth-card,
.auth-story {
  border: 1px solid rgba(255,255,255,.74);
  border-radius: 34px;
  background: rgba(255,255,255,.88);
  box-shadow: 0 28px 90px rgba(15,23,42,.12);
  backdrop-filter: blur(18px);
}
.premium-journey-card {
  position: relative;
  overflow: hidden;
  padding: 30px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  min-height: 640px;
}
.premium-journey-card:before {
  content: "";
  position: absolute;
  inset: auto -80px -110px auto;
  width: 260px;
  height: 260px;
  border-radius: 999px;
  background: radial-gradient(circle, rgba(245,158,11,.26), transparent 70%);
}
.access-path-list {
  position: relative;
  display: grid;
  gap: 14px;
  margin: 24px 0;
}
.access-path-list a {
  display: grid;
  gap: 6px;
  padding: 18px;
  border-radius: 22px;
  border: 1px solid rgba(148,163,184,.20);
  background: linear-gradient(135deg, rgba(255,255,255,.94), rgba(255,251,235,.78));
  color: #111827;
  text-decoration: none;
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.access-path-list a:hover,
.access-path-list a:focus-visible {
  transform: translateY(-2px);
  border-color: rgba(180,83,9,.34);
  box-shadow: 0 18px 48px rgba(15,23,42,.10);
}
.access-path-list strong { font-size: 17px; }
.access-path-list span { color: #64748b; line-height: 1.55; font-weight: 650; }
.premium-route-ticket {
  position: relative;
  display: grid;
  gap: 6px;
  padding: 18px;
  border-radius: 24px;
  background: linear-gradient(135deg, #431407, #9a3412 55%, #f59e0b);
  color: white;
  box-shadow: 0 24px 60px rgba(154,52,18,.24);
}
.premium-route-ticket span { opacity: .82; font-weight: 800; }
.premium-route-ticket strong { font-size: 22px; line-height: 1.2; }
.auth-page {
  min-height: 100vh;
  display: grid;
  place-items: center;
  padding: clamp(18px, 3vw, 42px);
  background:
    radial-gradient(circle at 18% 12%, rgba(245,158,11,.22), transparent 30%),
    radial-gradient(circle at 78% 10%, rgba(20,184,166,.20), transparent 28%),
    linear-gradient(135deg, #fff7ed 0%, #f8fafc 52%, #ecfeff 100%);
}
.admin-auth-page { background: linear-gradient(135deg, #0f172a 0%, #1e293b 48%, #92400e 100%); }
.partner-auth-page { background: linear-gradient(135deg, #042f2e 0%, #134e4a 44%, #f59e0b 100%); }
.premium-auth-shell {
  width: min(1180px, 100%);
  display: grid;
  grid-template-columns: minmax(0,1.05fr) minmax(360px,460px);
  gap: 22px;
  align-items: stretch;
}
.auth-story {
  min-height: 670px;
  padding: clamp(26px, 4vw, 48px);
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  overflow: hidden;
}
.auth-story .brand-mark { align-self: flex-start; }
.admin-auth-page .auth-story,
.partner-auth-page .auth-story { color: white; background: rgba(15,23,42,.40); border-color: rgba(255,255,255,.18); }
.admin-auth-page .auth-story .brand-mark,
.partner-auth-page .auth-story .brand-mark { color: white; }
.admin-auth-page .auth-story p,
.partner-auth-page .auth-story p { color: rgba(255,255,255,.82); }
.auth-copy-block h1 {
  margin: 16px 0;
  font-size: clamp(42px, 6vw, 76px);
  line-height: .93;
  letter-spacing: -.065em;
}
.auth-copy-block p { max-width: 720px; color: #475569; font-size: 18px; line-height: 1.75; font-weight: 700; }
.auth-assurance-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap: 12px;
  margin-top: 28px;
}
.auth-assurance-grid article {
  min-height: 132px;
  padding: 16px;
  border-radius: 22px;
  background: rgba(255,255,255,.78);
  border: 1px solid rgba(255,255,255,.30);
  box-shadow: 0 18px 46px rgba(15,23,42,.08);
}
.admin-auth-page .auth-assurance-grid article,
.partner-auth-page .auth-assurance-grid article { background: rgba(255,255,255,.12); }
.auth-assurance-grid strong { display: block; margin-bottom: 8px; font-size: 17px; }
.auth-assurance-grid span { color: #64748b; line-height: 1.55; font-weight: 650; }
.admin-auth-page .auth-assurance-grid span,
.partner-auth-page .auth-assurance-grid span { color: rgba(255,255,255,.78); }
.auth-card {
  padding: clamp(24px, 3.6vw, 36px);
  align-self: center;
}
.auth-card h2 { margin: 10px 0 8px; font-size: clamp(30px, 4vw, 46px); line-height: 1.02; letter-spacing: -.045em; }
.auth-card .form-grid { margin-top: 18px; }
.auth-card .field input,
.auth-card .field select {
  min-height: 52px;
  border-radius: 18px;
  border: 1px solid rgba(148,163,184,.30);
  background: rgba(255,255,255,.94);
  font-weight: 800;
}
.role-choice-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap: 8px;
  margin: 14px 0 10px;
}
.role-choice-grid button {
  min-height: 46px;
  border: 1px solid rgba(148,163,184,.24);
  border-radius: 999px;
  background: #fff;
  color: #334155;
  font-weight: 950;
  cursor: pointer;
}
.role-choice-grid button.active,
.role-choice-grid button:hover,
.role-choice-grid button:focus-visible {
  background: linear-gradient(135deg, var(--primary), var(--secondary));
  color: white;
  border-color: transparent;
}
.selected-role-note { margin: 6px 0 10px; color: #64748b; font-weight: 800; }
.auth-switch-row {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  flex-wrap: wrap;
  margin-top: 18px;
}
.auth-switch-row a { color: var(--primary); font-weight: 950; text-decoration: none; }
.admin-redirect-panel { text-align: center; }
@media (max-width: 960px) {
  .premium-auth-shell,
  .public-layout .hero-grid { grid-template-columns: 1fr; }
  .auth-story,
  .premium-journey-card { min-height: auto; }
  .auth-assurance-grid { grid-template-columns: 1fr; }
}
@media (max-width: 620px) {
  .auth-page { padding: 12px; }
  .premium-auth-shell { gap: 12px; }
  .auth-story,
  .auth-card,
  .premium-journey-card { border-radius: 24px; }
  .role-choice-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
  .nav-actions { width: 100%; }
}

/* i59 customer marketplace: OTA-style package discovery, filters and trust-visible cards. */
.marketplace-summary {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
  margin: 18px 0;
}
.marketplace-summary article {
  padding: 18px;
  border-radius: 24px;
  border: 1px solid rgba(148,163,184,.22);
  background: linear-gradient(135deg, rgba(255,255,255,.95), rgba(255,247,237,.72));
  box-shadow: 0 16px 42px rgba(15,23,42,.07);
}
.marketplace-summary span { display: block; color: #64748b; font-size: 12px; font-weight: 950; text-transform: uppercase; letter-spacing: .08em; }
.marketplace-summary strong { display: block; margin-top: 6px; color: #111827; font-size: clamp(22px, 2.2vw, 34px); letter-spacing: -.04em; }
.marketplace-filter-panel {
  position: relative;
  top: auto;
  z-index: 7;
  border-radius: 30px;
  border: 1px solid rgba(255,255,255,.72);
  background: rgba(255,255,255,.90);
  box-shadow: 0 24px 80px rgba(15,23,42,.10);
  backdrop-filter: blur(18px);
}
.marketplace-filter-grid { grid-template-columns: 1.35fr repeat(4, minmax(145px, 1fr)); }
.quick-chip-row {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-bottom: 12px;
}
.quick-chip {
  border: 1px solid rgba(180,83,9,.20);
  border-radius: 999px;
  padding: 10px 14px;
  background: #fff7ed;
  color: #7c2d12;
  font-weight: 950;
  cursor: pointer;
}
.quick-chip:hover,
.quick-chip:focus-visible { transform: translateY(-1px); box-shadow: 0 12px 30px rgba(15,23,42,.10); }
.marketplace-layout {
  display: grid;
  grid-template-columns: 280px minmax(0, 1fr);
  gap: 18px;
  align-items: start;
  margin-top: 20px;
}
.marketplace-facets {
  position: sticky;
  top: 310px;
  padding: 20px;
  border-radius: 28px;
  border: 1px solid rgba(148,163,184,.22);
  background: rgba(255,255,255,.92);
  box-shadow: 0 18px 48px rgba(15,23,42,.08);
}
.marketplace-facets h3 { margin-top: 0; }
.facet-block { display: grid; gap: 8px; padding: 12px 0; border-top: 1px solid rgba(148,163,184,.18); }
.facet-block:first-child { border-top: 0; }
.facet-block > strong { color: #111827; }
.facet-block span {
  display: flex;
  justify-content: space-between;
  gap: 8px;
  color: #475569;
  font-weight: 800;
  font-size: 13px;
}
.facet-block em { font-style: normal; color: #92400e; }
.marketplace-result-grid { align-items: stretch; }
.marketplace-package-card {
  min-height: 390px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  border: 1px solid rgba(148,163,184,.20);
  background:
    radial-gradient(circle at top right, rgba(245,158,11,.12), transparent 40%),
    linear-gradient(180deg, #ffffff, #fffaf0);
}
.package-card-topline,
.marketplace-price-row,
.care-badge-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  flex-wrap: wrap;
}
.package-card-topline > span:last-child {
  color: #92400e;
  font-weight: 950;
  background: #fffbeb;
  border: 1px solid rgba(180,83,9,.16);
  border-radius: 999px;
  padding: 8px 10px;
}
.marketplace-price-row strong { color: #111827; font-size: 26px; letter-spacing: -.04em; }
.marketplace-price-row small { color: #64748b; font-weight: 850; }
.marketplace-service-pills { margin: 10px 0; }
.care-badge-row { justify-content: flex-start; }
.care-badge-row span {
  border-radius: 999px;
  padding: 7px 10px;
  background: #ecfdf5;
  color: #047857;
  border: 1px solid rgba(5,150,105,.16);
  font-size: 12px;
  font-weight: 950;
}
.marketplace-empty { min-height: 210px; }
@media (max-width: 1160px) {
  .marketplace-filter-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .marketplace-layout { grid-template-columns: 1fr; }
  .marketplace-facets { position: static; }
}
@media (max-width: 760px) {
  .marketplace-summary { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .marketplace-filter-panel { position: static; }
}
@media (max-width: 560px) {
  .marketplace-summary, .marketplace-filter-grid { grid-template-columns: 1fr; }
}

/* i60 complete booking funnel: checkout-style preview, price breakdown and policy review. */
.package-booking-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(320px, .75fr);
  gap: 18px;
  align-items: start;
}
.booking-action-row { display: flex; gap: 12px; align-items: center; flex-wrap: wrap; }
.booking-review-panel {
  position: sticky;
  top: 92px;
  padding: 22px;
  border-radius: 28px;
  border: 1px solid rgba(148,163,184,.22);
  background: linear-gradient(180deg, rgba(255,255,255,.98), rgba(255,247,237,.86));
  box-shadow: 0 22px 68px rgba(15,23,42,.10);
}
.booking-review-panel.review-stale { border-color: rgba(245,158,11,.45); }
.checkout-review-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 14px; margin-bottom: 14px; }
.checkout-review-head h3 { margin-bottom: 4px; }
.checkout-review-head strong { font-size: clamp(24px, 2.4vw, 36px); letter-spacing: -.05em; color: #111827; white-space: nowrap; }
.checkout-stepper { display: grid; gap: 8px; margin: 14px 0 18px; }
.checkout-step {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 10px 12px;
  border-radius: 16px;
  background: rgba(248,250,252,.92);
  border: 1px solid rgba(148,163,184,.22);
  color: #475569;
  font-size: 13px;
  font-weight: 850;
}
.checkout-step b { width: 28px; height: 28px; display: grid; place-items: center; border-radius: 10px; background: #fff; color: #92400e; box-shadow: 0 6px 16px rgba(15,23,42,.07); }
.checkout-step.done { background: rgba(236,253,245,.90); color: #047857; border-color: rgba(5,150,105,.18); }
.checkout-step.current { background: rgba(255,251,235,.96); color: #92400e; border-color: rgba(245,158,11,.26); }
.checkout-step.next,
.checkout-step.action_required { background: rgba(239,246,255,.92); color: #1d4ed8; border-color: rgba(59,130,246,.20); }
.checkout-step.post_submission { background: rgba(241,245,249,.92); }
.checkout-price-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; margin-bottom: 14px; }
.checkout-price-grid article { padding: 13px; border-radius: 18px; background: rgba(255,255,255,.86); border: 1px solid rgba(148,163,184,.18); }
.checkout-price-grid span { display: block; color: #64748b; font-size: 11px; font-weight: 950; text-transform: uppercase; letter-spacing: .08em; }
.checkout-price-grid strong { display: block; margin-top: 4px; color: #111827; font-size: 20px; }
.compact-table table { min-width: 620px; }
.checkout-confirmations { display: flex; flex-wrap: wrap; gap: 8px; margin: 14px 0; }
.checkout-confirmations span { padding: 8px 10px; border-radius: 999px; background: rgba(236,253,245,.9); border: 1px solid rgba(5,150,105,.15); color: #047857; font-size: 12px; font-weight: 900; }
.checkout-alert { padding: 13px 15px; border-radius: 18px; background: rgba(255,251,235,.92); border: 1px solid rgba(245,158,11,.22); color: #92400e; margin: 12px 0; }
.checkout-alert.error { background: rgba(254,242,242,.92); border-color: rgba(220,38,38,.20); color: #b91c1c; }
.checkout-alert ul { margin: 8px 0 0 18px; padding: 0; }
.traveller-grid { display: grid; gap: 10px; }
.traveller-row {
  display: grid;
  grid-template-columns: 120px 1.2fr 84px 110px 130px 150px repeat(2, minmax(118px, auto));
  gap: 8px;
  align-items: center;
  padding: 10px;
  border-radius: 18px;
  background: rgba(248,250,252,.78);
  border: 1px solid rgba(148,163,184,.18);
}
.traveller-row input,
.traveller-row select { min-height: 40px; border-radius: 12px; padding: 9px 10px; }
.addon-qty-row { display: grid; grid-template-columns: auto 90px auto 100px; gap: 8px; align-items: center; margin: 7px 0 12px 28px; }
@media (max-width: 1180px) {
  .package-booking-layout { grid-template-columns: 1fr; }
  .booking-review-panel { position: static; }
  .traveller-row { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 620px) {
  .checkout-review-head { flex-direction: column; }
  .checkout-price-grid, .traveller-row, .addon-qty-row { grid-template-columns: 1fr; }
}

/* i61 partner extranet workspace */
.partner-workspace-main { max-width: 1380px; }
.partner-hero-panel { overflow: hidden; position: relative; }
.partner-hero-panel::after { content: ''; position: absolute; right: -90px; top: -120px; width: 320px; height: 320px; border-radius: 50%; background: rgba(255,255,255,.12); pointer-events: none; }
.role-chip-row { display: flex; flex-wrap: wrap; gap: .5rem; margin-top: 1rem; }
.role-chip { border: 1px solid rgba(255,255,255,.28); border-radius: 999px; padding: .42rem .72rem; font-size: .78rem; letter-spacing: .02em; background: rgba(255,255,255,.1); color: #fff; }
.role-chip.active { background: #fff; color: #723308; font-weight: 800; }
.partner-status-strip { display: grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap: 1rem; margin: 1rem 0; }
.partner-stat-card, .partner-mini-stat { border-radius: 22px; background: #fff; box-shadow: 0 18px 40px rgba(73, 35, 8, .08); border: 1px solid rgba(128, 72, 22, .12); padding: 1rem; }
.partner-stat-card span, .partner-mini-stat span { color: #8b6a45; font-size: .78rem; text-transform: uppercase; letter-spacing: .08em; font-weight: 800; }
.partner-stat-card strong, .partner-mini-stat strong { display: block; color: #2d1706; font-size: clamp(1.55rem, 3vw, 2.25rem); line-height: 1.1; margin: .35rem 0; }
.partner-stat-card p { margin: 0; color: #735b41; }
.partner-grid-layout { display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(320px, .85fr); gap: 1rem; margin: 1rem 0; align-items: start; }
.partner-profile-panel { color: #3e2a17; }
.partner-definition-list { display: grid; gap: .8rem; margin: 0; }
.partner-definition-list div { display: grid; gap: .2rem; padding-bottom: .72rem; border-bottom: 1px solid rgba(128,72,22,.1); }
.partner-definition-list dt { color: #906b3f; font-size: .75rem; text-transform: uppercase; letter-spacing: .08em; font-weight: 800; }
.partner-definition-list dd { margin: 0; color: #2d1706; font-weight: 700; }
.document-mini-list { list-style: none; padding: 0; margin: 1rem 0 0; display: grid; gap: .55rem; }
.document-mini-list li { border: 1px solid rgba(128,72,22,.12); border-radius: 16px; padding: .7rem .85rem; background: #fffaf3; display: grid; gap: .18rem; }
.document-mini-list strong { color: #2d1706; }
.document-mini-list span { color: #775d42; font-size: .88rem; }
.compact-toolbar { gap: .55rem; flex-wrap: wrap; }
.compact-toolbar select { min-height: 42px; border-radius: 14px; border: 1px solid rgba(128,72,22,.18); padding: .58rem .75rem; background: #fff; color: #33200f; }
.partner-assignment-board { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; }
.partner-assignment-card { border: 1px solid rgba(128,72,22,.14); border-radius: 24px; background: linear-gradient(180deg,#fff,#fffaf5); box-shadow: 0 18px 42px rgba(73,35,8,.07); padding: 1rem; display: grid; gap: .85rem; }
.assignment-card-head { display: flex; justify-content: space-between; gap: 1rem; align-items: flex-start; }
.assignment-card-head h3 { margin: .18rem 0 0; color: #251306; }
.status-pill.assigned { background: #fff3cf; color: #8a5300; }
.status-pill.accepted { background: #e5f8e7; color: #1f6f36; }
.status-pill.declined { background: #ffe7e7; color: #9a2424; }
.assignment-meta-grid { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: .55rem; }
.assignment-meta-grid span { background: rgba(252,242,229,.75); border-radius: 14px; padding: .6rem; color: #634b34; font-size: .86rem; }
.assignment-meta-grid strong { display: block; color: #2d1706; font-size: .75rem; text-transform: uppercase; letter-spacing: .05em; margin-bottom: .16rem; }
.assignment-actions { display: flex; flex-wrap: wrap; gap: .5rem; }
.partner-response-panel { margin-top: 1rem; border: 1px solid rgba(128,72,22,.14); border-radius: 24px; padding: 1rem; background: #fffaf4; }
.dense-form-grid { grid-template-columns: repeat(4, minmax(0,1fr)); }
.module-dashboard-frame { margin-top: 1rem; border-radius: 20px; background: #fffaf5; border: 1px solid rgba(128,72,22,.12); padding: 1rem; }
.partner-module-summary { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: .75rem; }
.module-data-list { margin-top: 1rem; display: grid; gap: .45rem; }
.module-data-list h3 { margin: 0; color: #2d1706; }
.module-data-list p { margin: 0; padding: .65rem .8rem; border-radius: 14px; background: #fff; color: #4f3924; border: 1px solid rgba(128,72,22,.1); }
.partner-table-wrap table td, .partner-table-wrap table th { white-space: nowrap; }
.empty-state-card { border: 1px dashed rgba(128,72,22,.28); border-radius: 24px; padding: 1.5rem; background: #fffaf4; grid-column: 1 / -1; }
.empty-state-card h3 { margin-top: 0; color: #2d1706; }
@media (max-width: 980px){ .partner-status-strip, .partner-grid-layout, .partner-assignment-board, .dense-form-grid { grid-template-columns: 1fr; } .assignment-meta-grid, .partner-module-summary { grid-template-columns: repeat(2,minmax(0,1fr)); } }
@media (max-width: 620px){ .assignment-card-head { display: grid; } .assignment-meta-grid, .partner-module-summary { grid-template-columns: 1fr; } .partner-stat-card strong { font-size: 1.6rem; } }

/* Iteration 62: admin operations command center */
.operations-command-card .card.danger,
.operations-command-card tr.danger td { border-color: rgba(185, 28, 28, .35); background: rgba(254, 242, 242, .72); }
.operations-command-card .card.warn,
.operations-command-card tr.warn td { border-color: rgba(180, 83, 9, .30); background: rgba(255, 251, 235, .72); }
.operations-command-card .card.info { border-color: rgba(37, 99, 235, .28); background: rgba(239, 246, 255, .72); }
.ops-command-layout { display: grid; grid-template-columns: minmax(0, 1fr) 320px; gap: 1rem; align-items: start; }
.ops-queue-table table td { vertical-align: top; }
.ops-action-select { min-width: 150px; margin-right: .4rem; }
.ops-escalation-panel { border: 1px solid rgba(15, 23, 42, .10); border-radius: 22px; padding: 1rem; background: rgba(255,255,255,.84); box-shadow: 0 12px 28px rgba(15, 23, 42, .07); position: sticky; top: 1rem; }
.stacked-notes { display: grid; gap: .65rem; }
.stacked-notes p { margin: 0; padding: .7rem .8rem; border-radius: 14px; background: rgba(15, 23, 42, .045); color: #475569; font-size: .88rem; line-height: 1.35; }
@media (max-width: 980px) { .ops-command-layout { grid-template-columns: 1fr; } .ops-escalation-panel { position: static; } }

/* i63 revenue inventory command center */
.grid-2 { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
.auth-bar.left-align { justify-content: flex-start; flex-wrap: wrap; }
.compact-input.wide { min-width: min(460px, 100%); flex: 1 1 320px; }
#revenueInventory .table-wrap { margin-top: 16px; }
#revenueInventory .clean-copy-banner { margin: 16px 0; }
@media (max-width: 920px) { .grid-2 { grid-template-columns: 1fr; } }

/* i64 post-booking desk */
.post-booking-page .standalone-main { max-width: 1480px; }
.post-booking-command .card h3 { font-size: 1.8rem; }
.post-booking-grid { align-items: start; gap: 1rem; }
.timeline-list { display: grid; gap: .75rem; }
.timeline-item { position: relative; padding: 1rem 1rem 1rem 1.25rem; border: 1px solid rgba(15, 23, 42, .08); border-radius: 18px; background: rgba(255,255,255,.78); box-shadow: 0 12px 35px rgba(15,23,42,.05); }
.timeline-item:before { content: ''; position: absolute; left: .35rem; top: 1rem; bottom: 1rem; width: 3px; border-radius: 99px; background: linear-gradient(180deg, rgba(13,148,136,.7), rgba(37,99,235,.45)); }
.timeline-item span { display: inline-flex; font-size: .72rem; letter-spacing: .08em; text-transform: uppercase; color: #0f766e; font-weight: 800; }
.timeline-item h3 { margin: .25rem 0; font-size: 1rem; }
.timeline-item p { margin: 0; color: #475569; }
.timeline-item small { display: block; margin-top: .4rem; color: #64748b; }
.danger-soft-panel { border: 1px solid rgba(185,28,28,.14); border-radius: 20px; padding: 1rem; background: rgba(254,242,242,.55); margin-top: 1rem; }
.field-check { display: flex; align-items: center; gap: .55rem; color: #334155; font-weight: 700; }
@media (max-width: 900px) { .post-booking-grid { grid-template-columns: 1fr; } .post-booking-page .admin-hero { grid-template-columns: 1fr; } }

/* i65 finance analytics cockpit: export toolbar, two-column insight grids and dense finance tables. */
.analytics-toolbar {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin: 12px 0 16px;
  align-items: center;
}
.finance-analytics-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
  margin: 16px 0;
}
.finance-analytics-grid > div {
  min-width: 0;
  padding: 16px;
  border-radius: 22px;
  background: rgba(255,255,255,.76);
  border: 1px solid rgba(148,163,184,.20);
  box-shadow: 0 18px 48px rgba(15,23,42,.06);
}
.finance-analytics-grid h3 {
  margin: 0 0 10px;
  font-size: 15px;
  letter-spacing: -.01em;
}
@media (max-width: 980px) {
  .finance-analytics-grid { grid-template-columns: 1fr; }
}

/* i66 mobile-first UX and frontend modularization shell */
.mobile-menu-toggle,
.mobile-shell-overlay,
.admin-mobile-rail,
.mobile-bottom-nav,
.mobile-filter-toggle { display: none; }

.admin-lazy-shell .admin-menu a.active,
.admin-mobile-rail a.active { background: rgba(180, 83, 9, .14); color: #7c2d12; border-color: rgba(180, 83, 9, .28); }
.admin-section-active { outline: 2px solid rgba(245, 158, 11, .18); outline-offset: 6px; }
.table-wrap:focus { outline: 3px solid rgba(245,158,11,.28); outline-offset: 3px; }

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; animation-duration: .001ms !important; transition-duration: .001ms !important; }
}

@media (max-width: 1100px) {
  .admin-shell { grid-template-columns: 1fr; }
  .admin-sidebar {
    position: fixed;
    inset: 0 auto 0 0;
    width: min(86vw, 340px);
    z-index: 1200;
    transform: translateX(-105%);
    transition: transform .22s ease;
    overflow-y: auto;
    border-radius: 0 28px 28px 0;
    box-shadow: 24px 0 55px rgba(15,23,42,.22);
  }
  .admin-sidebar.is-open { transform: translateX(0); }
  .mobile-menu-toggle {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    position: sticky;
    top: 10px;
    z-index: 1180;
    margin: 10px 12px 0;
    border: 1px solid rgba(180,83,9,.22);
    border-radius: 999px;
    padding: 10px 14px;
    background: rgba(255,255,255,.94);
    color: #7c2d12;
    font-weight: 900;
    box-shadow: 0 16px 32px rgba(15,23,42,.12);
  }
  .mobile-menu-toggle span { display: block; width: 15px; height: 2px; border-radius: 99px; background: currentColor; }
  .mobile-shell-overlay {
    position: fixed;
    inset: 0;
    z-index: 1190;
    background: rgba(15,23,42,.42);
    border: 0;
  }
  body:not(.mobile-menu-open) .mobile-shell-overlay { display: none; }
  body.mobile-menu-open .mobile-shell-overlay { display: block; }
  .admin-main { padding: 14px; }
  .admin-hero { grid-template-columns: 1fr; gap: 16px; border-radius: 26px; }
  .admin-card { border-radius: 24px; padding: 16px; }
  .admin-card-head { align-items: flex-start; gap: 12px; }
  .form-grid,
  .form-grid.two-col,
  .form-grid.compact-form,
  .dense-form-grid { grid-template-columns: 1fr !important; }
  .auth-bar { justify-content: flex-start; }
  .compact-page-links { overflow-x: auto; flex-wrap: nowrap; padding-bottom: 6px; }
  .compact-page-links .btn { white-space: nowrap; }
}

@media (max-width: 820px) {
  body.public-layout { padding-bottom: 72px; }
  .topbar { position: sticky; top: 0; z-index: 1000; background: rgba(255,255,255,.92); backdrop-filter: blur(12px); }
  .nav-inner { gap: 10px; }
  .nav-links { display: none; }
  .nav-actions { width: 100%; overflow-x: auto; justify-content: flex-start; padding-bottom: 4px; }
  .nav-actions .btn { flex: 0 0 auto; }
  .hero { padding-top: 34px; }
  .hero-grid,
  .grid-2,
  .grid-3,
  .grid-4,
  .premium-lane-grid,
  .premium-assurance-grid,
  .finance-analytics-grid,
  .marketplace-layout { grid-template-columns: 1fr !important; }
  .hero-panel,
  .premium-journey-card,
  .card,
  .admin-card { min-width: 0; }
  .premium-trip-search { grid-template-columns: 1fr; padding: 12px; }
  .premium-search-field select,
  .premium-search-field input,
  input, select, textarea, button, .btn { min-height: 44px; }
  .marketplace-summary { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .marketplace-filter-panel {
    display: none;
    position: relative;
    top: auto;
    z-index: 50;
    padding: 14px;
    border-radius: 24px;
    box-shadow: 0 24px 50px rgba(15,23,42,.16);
  }
  .marketplace-filter-panel.is-open { display: block; }
  .mobile-filter-toggle { display: inline-flex; margin-top: 10px; }
  .quick-chip, .marketplace-service-pills span { min-height: 36px; align-items: center; }
  .table-wrap { overflow-x: auto; -webkit-overflow-scrolling: touch; border-radius: 18px; }
  .table-wrap table { min-width: 720px; }
  .mobile-bottom-nav,
  .admin-mobile-rail {
    display: grid;
    position: fixed;
    left: 10px;
    right: 10px;
    bottom: 10px;
    z-index: 1150;
    grid-template-columns: repeat(4, 1fr);
    gap: 6px;
    padding: 8px;
    border: 1px solid rgba(148,163,184,.22);
    border-radius: 22px;
    background: rgba(255,255,255,.94);
    backdrop-filter: blur(16px);
    box-shadow: 0 22px 50px rgba(15,23,42,.18);
  }
  .admin-mobile-rail { grid-template-columns: repeat(5, 1fr); }
  .mobile-bottom-nav a,
  .admin-mobile-rail a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 44px;
    border-radius: 16px;
    color: #7c2d12;
    font-size: 12px;
    font-weight: 950;
    text-decoration: none;
    background: rgba(255,247,237,.78);
    border: 1px solid rgba(180,83,9,.12);
  }
  .admin-body { padding-bottom: 78px; }
  .admin-main > section[id] { scroll-margin-top: 72px; }
}

@media (max-width: 560px) {
  .container { width: min(100% - 24px, 1180px); }
  .hero-panel h1, .admin-hero h1 { font-size: clamp(30px, 10vw, 44px); }
  .section { padding: 34px 0; }
  .section-head.split-head, .admin-card-head { display: grid; }
  .marketplace-summary { grid-template-columns: 1fr; }
  .marketplace-package-card { border-radius: 24px; padding: 16px; }
  .marketplace-price-row { align-items: flex-start; }
  .status-note { overflow-wrap: anywhere; }
}

/* i67 SaaS operator and tenant hardening */
.tenant-operator-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
    gap: 14px;
    margin: 16px 0;
}
.tenant-risk-card {
    border: 1px solid rgba(148, 163, 184, 0.28);
    border-radius: 20px;
    padding: 16px;
    background: rgba(255, 255, 255, 0.78);
    box-shadow: 0 14px 34px rgba(15, 23, 42, 0.08);
}
.tenant-risk-card strong { display: block; margin-bottom: 6px; }
.tenant-risk-card small { color: var(--muted, #64748b); }
.tenant-saas-form .full-span,
.form-grid .full-span { grid-column: 1 / -1; }
.action-row {
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
    align-items: center;
    margin: 12px 0 18px;
}
.badge.badge-risk { background: rgba(245, 158, 11, 0.12); color: #92400e; border-color: rgba(245, 158, 11, 0.24); }
.badge.badge-blocked { background: rgba(239, 68, 68, 0.12); color: #991b1b; border-color: rgba(239, 68, 68, 0.25); }
.badge.badge-ok { background: rgba(34, 197, 94, 0.12); color: #166534; border-color: rgba(34, 197, 94, 0.24); }
@media (max-width: 720px) {
    .tenant-operator-grid { grid-template-columns: 1fr; }
    .tenant-saas-form { grid-template-columns: 1fr; }
}

/* i70 public website redesign: premium booking-site experience. */
.public-luxury-v2 {
  --luxury-deep: #241005;
  --luxury-amber: #f59e0b;
  --luxury-gold: #facc15;
  --luxury-teal: #0f766e;
  --luxury-cream: #fff7ed;
  background:
    radial-gradient(circle at 8% 2%, rgba(250,204,21,.22), transparent 30%),
    radial-gradient(circle at 88% 10%, rgba(20,184,166,.18), transparent 34%),
    radial-gradient(circle at 52% 44%, rgba(251,146,60,.12), transparent 34%),
    linear-gradient(180deg, #fffdf7 0%, #fff7ed 28%, #f8fafc 64%, #ffffff 100%);
}
.public-luxury-v2 .topbar {
  background: rgba(255,255,255,.72);
  border-bottom-color: rgba(180,83,9,.14);
  transition: box-shadow .18s ease, background .18s ease, transform .18s ease;
}
.public-luxury-v2 .topbar.scrolled {
  background: rgba(255,255,255,.92);
  box-shadow: 0 20px 60px rgba(15,23,42,.10);
}
.public-luxury-v2 .brand-symbol {
  background: conic-gradient(from 140deg, #facc15, #f97316, #7c2d12, #facc15);
  box-shadow: 0 18px 42px rgba(180,83,9,.28);
}
.public-luxury-v2 .nav-links {
  padding: 7px;
  border-radius: 999px;
  background: rgba(255,255,255,.58);
  border: 1px solid rgba(148,163,184,.22);
}
.public-luxury-v2 .nav-links a:hover {
  background: linear-gradient(135deg, rgba(255,247,237,.96), rgba(254,243,199,.9));
}
.public-hero-redesign { padding-top: clamp(28px, 5vw, 56px); }
.public-hero-grid { grid-template-columns: minmax(0,1.45fr) minmax(330px,440px); gap: 28px; }
.public-hero-panel {
  min-height: 690px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  background:
    linear-gradient(115deg, rgba(255,255,255,.96) 0%, rgba(255,248,232,.91) 35%, rgba(236,253,245,.86) 70%, rgba(238,242,255,.90) 100%),
    radial-gradient(circle at 80% 16%, rgba(250,204,21,.28), transparent 34%);
  border: 1px solid rgba(255,255,255,.86);
}
.public-hero-panel:before {
  inset: -170px -100px auto auto;
  width: 470px;
  height: 470px;
  background: radial-gradient(circle, rgba(245,158,11,.30), rgba(20,184,166,.12) 44%, transparent 70%);
}
.public-hero-panel:after {
  width: min(46%, 390px);
  height: 260px;
  opacity: .40;
}
.hero-copy-block { position: relative; z-index: 1; max-width: 900px; }
.public-luxury-v2 h1 {
  font-size: clamp(46px, 6vw, 86px);
  letter-spacing: -.075em;
  max-width: 980px;
}
.public-luxury-v2 .hero-subtitle { font-size: clamp(16px, 1.6vw, 21px); color: #3f4756; }
.luxury-booking-search {
  grid-template-columns: minmax(240px, 1.5fr) minmax(155px, .82fr) minmax(150px,.74fr) minmax(135px,.68fr) auto;
  border-radius: 34px;
  padding: 14px;
  background: rgba(255,255,255,.88);
  border: 1px solid rgba(255,255,255,.94);
  box-shadow: 0 30px 82px rgba(15,23,42,.13), inset 0 1px 0 rgba(255,255,255,.96);
}
.luxury-booking-search .wide-field { min-width: 250px; }
.luxury-booking-search .premium-search-field {
  border-radius: 24px;
  padding: 12px 14px;
  background: linear-gradient(180deg, rgba(255,255,255,.98), rgba(248,250,252,.92));
}
.luxury-booking-search .premium-search-field:focus-within {
  border-color: rgba(180,83,9,.42);
  box-shadow: 0 0 0 4px rgba(245,158,11,.14);
}
.search-main-cta { min-width: 154px; box-shadow: 0 22px 46px rgba(180,83,9,.26); }
.home-chip-row {
  position: relative;
  z-index: 1;
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
  margin: 6px 0 18px;
}
.home-chip-row button {
  border: 1px solid rgba(180,83,9,.18);
  border-radius: 999px;
  padding: 10px 14px;
  color: #4c1d0b;
  background: rgba(255,255,255,.72);
  font-weight: 950;
  box-shadow: 0 10px 25px rgba(15,23,42,.06);
}
.home-chip-row button:hover { transform: translateY(-1px); background: rgba(255,247,237,.95); }
.luxury-trust-strip span {
  min-height: 46px;
  background: rgba(255,255,255,.82);
  border-color: rgba(15,118,110,.20);
}
.public-hero-actions { margin-top: 22px; }
.luxury-metrics .metric {
  background: linear-gradient(180deg, rgba(255,255,255,.88), rgba(255,251,235,.78));
  border-color: rgba(180,83,9,.16);
}
.luxury-metrics .metric:nth-child(3) strong { font-size: 22px; margin-top: 5px; }
.luxury-journey-card {
  min-height: 690px;
  background:
    linear-gradient(180deg, rgba(36,16,5,.94), rgba(76,29,11,.92)),
    radial-gradient(circle at 70% 10%, rgba(250,204,21,.24), transparent 40%);
  color: #fff;
  border-color: rgba(250,204,21,.22);
  box-shadow: 0 34px 100px rgba(76,29,11,.28);
}
.luxury-journey-card p,
.luxury-journey-card small,
.luxury-journey-card .access-path-list span { color: rgba(255,255,255,.74); }
.luxury-journey-card .eyebrow { background: rgba(250,204,21,.14); color: #fde68a; }
.journey-preview-stack { display: grid; gap: 13px; margin: 24px 0; position: relative; z-index: 1; }
.journey-preview-stack article {
  display: grid;
  grid-template-columns: 48px 1fr;
  gap: 4px 14px;
  align-items: center;
  padding: 16px;
  border-radius: 24px;
  background: rgba(255,255,255,.08);
  border: 1px solid rgba(255,255,255,.14);
  backdrop-filter: blur(12px);
}
.journey-preview-stack span {
  grid-row: span 2;
  width: 44px;
  height: 44px;
  display: grid;
  place-items: center;
  border-radius: 16px;
  background: linear-gradient(135deg,#facc15,#f97316);
  color: #4c1d0b;
  font-weight: 950;
}
.journey-preview-stack strong { font-size: 17px; }
.luxury-route-ticket {
  background: linear-gradient(135deg, rgba(250,204,21,.96), rgba(245,158,11,.92));
  color: #3b1f05;
}
.luxury-route-ticket small { color: rgba(59,31,5,.72); font-weight: 900; }
.luxury-experience-grid {
  display: grid;
  grid-template-columns: 1.1fr repeat(3, minmax(0,1fr));
  gap: 16px;
}
.experience-card {
  min-height: 210px;
  padding: 24px;
  border-radius: 30px;
  border: 1px solid rgba(148,163,184,.22);
  background:
    radial-gradient(circle at top right, rgba(250,204,21,.20), transparent 42%),
    linear-gradient(180deg, rgba(255,255,255,.96), rgba(248,250,252,.91));
  box-shadow: 0 22px 54px rgba(15,23,42,.08);
}
.experience-card.tall-card {
  background:
    linear-gradient(160deg, rgba(36,16,5,.94), rgba(124,45,18,.88)),
    radial-gradient(circle at 80% 20%, rgba(250,204,21,.26), transparent 45%);
  color: #fff;
}
.experience-card span {
  display: inline-flex;
  padding: 8px 11px;
  border-radius: 999px;
  background: rgba(250,204,21,.16);
  color: #92400e;
  font-size: 11px;
  font-weight: 950;
  text-transform: uppercase;
  letter-spacing: .08em;
}
.experience-card.tall-card span { color: #fde68a; background: rgba(255,255,255,.10); }
.experience-card h3 { font-size: 24px; margin-top: 18px; }
.experience-card.tall-card p { color: rgba(255,255,255,.76); }
.planner-track {
  display: grid;
  grid-template-columns: repeat(4, minmax(0,1fr));
  gap: 14px;
  position: relative;
}
.planner-track article {
  position: relative;
  min-height: 190px;
  padding: 24px;
  border-radius: 30px;
  background: rgba(255,255,255,.90);
  border: 1px solid rgba(148,163,184,.22);
  box-shadow: 0 20px 52px rgba(15,23,42,.08);
}
.planner-track b {
  width: 46px;
  height: 46px;
  display: grid;
  place-items: center;
  border-radius: 17px;
  background: linear-gradient(135deg, var(--primary), var(--secondary));
  color: #fff;
  box-shadow: 0 14px 32px rgba(180,83,9,.22);
}
.planner-track strong { display: block; margin: 18px 0 8px; font-size: 21px; }
.premium-marketplace-section {
  background:
    linear-gradient(180deg, rgba(255,255,255,.95), rgba(255,247,237,.72)),
    radial-gradient(circle at 10% 0%, rgba(245,158,11,.16), transparent 34%);
  border-color: rgba(255,255,255,.84);
}
.marketplace-summary article {
  background: linear-gradient(180deg, #ffffff, #fff7ed);
  border: 1px solid rgba(180,83,9,.16);
  border-radius: 26px;
  box-shadow: 0 18px 44px rgba(15,23,42,.07);
}
.marketplace-filter-panel {
  position: relative;
  top: auto;
  z-index: 20;
  border-radius: 30px;
  background: rgba(255,255,255,.92);
  backdrop-filter: blur(18px);
}
.marketplace-layout {
  grid-template-columns: minmax(260px, 310px) minmax(0,1fr);
  align-items: start;
}
.marketplace-facets {
  position: sticky;
  top: 236px;
  border-radius: 28px;
  background: linear-gradient(180deg, rgba(36,16,5,.94), rgba(76,29,11,.92));
  color: #fff;
  border-color: rgba(250,204,21,.20);
}
.marketplace-facets p,
.marketplace-facets small { color: rgba(255,255,255,.72); }
.marketplace-result-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
.luxury-package-card {
  padding: 0;
  overflow: hidden;
  display: grid;
  grid-template-rows: 156px 1fr;
  background: #fff;
  border-radius: 32px;
  border: 1px solid rgba(148,163,184,.20);
  box-shadow: 0 24px 64px rgba(15,23,42,.10);
}
.luxury-package-card:hover { transform: translateY(-4px); box-shadow: 0 34px 85px rgba(15,23,42,.14); }
.package-visual {
  position: relative;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  padding: 20px;
  color: #fff;
  background:
    linear-gradient(135deg, rgba(36,16,5,.75), rgba(124,45,18,.42)),
    radial-gradient(circle at 15% 20%, rgba(250,204,21,.72), transparent 24%),
    radial-gradient(circle at 86% 18%, rgba(20,184,166,.48), transparent 26%),
    linear-gradient(135deg, #7c2d12, #f97316 55%, #0f766e);
}
.package-visual:after {
  content: "";
  position: absolute;
  right: 16px;
  bottom: 8px;
  width: 170px;
  height: 95px;
  background: url('/assets/images/teerath-route-art.svg') center/contain no-repeat;
  opacity: .46;
}
.package-visual span,
.package-visual strong {
  position: relative;
  z-index: 1;
  display: inline-flex;
  padding: 8px 12px;
  border-radius: 999px;
  background: rgba(255,255,255,.14);
  border: 1px solid rgba(255,255,255,.22);
  backdrop-filter: blur(10px);
  font-weight: 950;
}
.package-content { padding: 22px; display: grid; gap: 12px; }
.luxury-price-row { border-radius: 22px; padding: 15px; background: #fff7ed; border: 1px solid rgba(180,83,9,.12); }
.luxury-price-row strong { font-size: 25px; }
.package-card-footer { display: grid; gap: 14px; margin-top: auto; }
.primary-mini { background: linear-gradient(135deg, var(--primary), var(--secondary)); color: #fff; border-color: transparent; }
.luxury-empty { grid-column: 1 / -1; text-align: center; padding: 34px; }
.luxury-service-section,
.luxury-destination-section,
#contentPages,
#trustPublicPanel,
#b2b {
  background: linear-gradient(135deg, rgba(255,255,255,.96), rgba(248,250,252,.90));
}
.premium-service-grid .card,
.public-service-card,
.public-destination-card,
.destination-showcase-grid .card,
.premium-trust-card-grid .card,
#b2b .card {
  border-radius: 30px;
  background:
    radial-gradient(circle at top right, rgba(250,204,21,.14), transparent 44%),
    rgba(255,255,255,.94);
  box-shadow: 0 22px 56px rgba(15,23,42,.08);
}
.destination-showcase-grid { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 16px; }
.public-destination-card { min-height: 240px; }
#cmsWebsitePanel { background: linear-gradient(135deg, rgba(255,247,237,.96), rgba(255,255,255,.88)); }
.public-luxury-v2 .footer {
  background: linear-gradient(135deg, #241005, #7c2d12);
  color: rgba(255,255,255,.86);
  border-top: 0;
}
@media (max-width: 1180px) {
  .public-hero-grid,
  .marketplace-layout { grid-template-columns: 1fr; }
  .luxury-booking-search { grid-template-columns: 1fr 1fr; }
  .marketplace-facets,
  .marketplace-filter-panel { position: relative; top: auto; }
  .luxury-experience-grid,
  .planner-track { grid-template-columns: repeat(2, minmax(0,1fr)); }
}
@media (max-width: 760px) {
  .public-luxury-v2 .nav-actions .btn-secondary,
  .public-luxury-v2 .nav-actions .btn-primary[href="/login/devotee"] { display: none; }
  .public-hero-panel,
  .luxury-journey-card { min-height: auto; }
  .luxury-booking-search,
  .luxury-experience-grid,
  .planner-track,
  .marketplace-result-grid,
  .destination-showcase-grid { grid-template-columns: 1fr; }
  .luxury-booking-search { border-radius: 26px; }
  .public-luxury-v2 h1 { font-size: 42px; }
  .home-chip-row { overflow-x: auto; flex-wrap: nowrap; padding-bottom: 4px; }
  .home-chip-row button { white-space: nowrap; }
  .marketplace-filter-grid { grid-template-columns: 1fr; }
  .luxury-package-card { grid-template-rows: 135px 1fr; }
}


/* i71 public website religious premium repair: non-overlapping filters and devotional visual atmosphere. */
.public-spiritual-v3 {
  --sacred-maroon: #3a1206;
  --sacred-deep: #170905;
  --sacred-saffron: #d97706;
  --sacred-gold: #f7c948;
  --sacred-cream: #fff4dc;
  --sacred-lotus: #fff8eb;
  background:
    radial-gradient(circle at 8% 5%, rgba(247,201,72,.32) 0 130px, transparent 290px),
    radial-gradient(circle at 86% 8%, rgba(153,27,27,.22) 0 160px, transparent 340px),
    radial-gradient(circle at 50% 120%, rgba(217,119,6,.20) 0 280px, transparent 620px),
    linear-gradient(180deg, #fff0cf 0%, #fff8eb 34%, #fef3c7 66%, #fff7ed 100%);
  position: relative;
}
.public-spiritual-v3::before {
  content: "";
  position: fixed;
  inset: 0;
  pointer-events: none;
  opacity: .34;
  z-index: -1;
  background-image:
    radial-gradient(circle at center, rgba(124,45,18,.12) 0 2px, transparent 2.5px),
    repeating-linear-gradient(45deg, rgba(180,83,9,.045) 0 1px, transparent 1px 22px);
  background-size: 34px 34px, 44px 44px;
}
.public-spiritual-v3::after {
  content: "ॐ  श्री  यात्रा  दर्शन  सेवा  भक्त  ॐ  श्री  यात्रा";
  position: fixed;
  left: -5vw;
  right: -5vw;
  top: 108px;
  z-index: -1;
  color: rgba(124,45,18,.045);
  font-family: "Noto Sans Devanagari", Inter, sans-serif;
  font-size: clamp(56px, 8vw, 142px);
  font-weight: 950;
  letter-spacing: .08em;
  white-space: nowrap;
  pointer-events: none;
  transform: rotate(-6deg);
}
.public-spiritual-v3 .topbar {
  background: linear-gradient(180deg, rgba(58,18,6,.92), rgba(92,32,8,.88));
  border-bottom: 1px solid rgba(247,201,72,.24);
  box-shadow: 0 18px 52px rgba(58,18,6,.22);
}
.public-spiritual-v3 .brand-mark strong,
.public-spiritual-v3 .nav-links a,
.public-spiritual-v3 .brand-mark small { color: rgba(255,248,235,.92); }
.public-spiritual-v3 .nav-links {
  background: rgba(255,244,220,.08);
  border-color: rgba(247,201,72,.20);
}
.public-spiritual-v3 .nav-links a:hover { color: #3a1206; background: linear-gradient(135deg,#fff4dc,#f7c948); }
.public-spiritual-v3 .brand-symbol {
  background: radial-gradient(circle at 35% 25%, #fff4dc, #f7c948 36%, #d97706 70%, #7c2d12);
  color: #3a1206;
  box-shadow: 0 18px 42px rgba(247,201,72,.30);
}
.public-spiritual-v3 .public-hero-redesign {
  position: relative;
  overflow: hidden;
  padding-top: clamp(34px, 5vw, 70px);
}
.public-spiritual-v3 .public-hero-redesign::before {
  content: "";
  position: absolute;
  inset: 0 0 auto 0;
  height: 210px;
  opacity: .32;
  pointer-events: none;
  background:
    radial-gradient(circle at 18% 40%, rgba(247,201,72,.42), transparent 26%),
    radial-gradient(circle at 82% 32%, rgba(180,83,9,.30), transparent 25%);
}
.public-spiritual-v3 .public-hero-panel {
  min-height: 720px;
  border: 1px solid rgba(247,201,72,.42);
  background:
    linear-gradient(115deg, rgba(58,18,6,.94) 0%, rgba(124,45,18,.88) 44%, rgba(217,119,6,.76) 100%),
    radial-gradient(circle at 82% 14%, rgba(247,201,72,.35), transparent 36%);
  color: #fff8eb;
  box-shadow: 0 34px 100px rgba(58,18,6,.30);
}
.public-spiritual-v3 .public-hero-panel::before {
  background: radial-gradient(circle, rgba(247,201,72,.36), rgba(217,119,6,.20) 45%, transparent 72%);
  filter: blur(2px);
}
.public-spiritual-v3 .public-hero-panel::after {
  content: "";
  right: 2%;
  bottom: 0;
  width: min(54%, 520px);
  height: 330px;
  opacity: .28;
  background:
    linear-gradient(to top, rgba(23,9,5,.90) 0 18px, transparent 18px),
    linear-gradient(to top, rgba(23,9,5,.86) 0 92px, transparent 92px),
    linear-gradient(135deg, transparent 0 46%, rgba(23,9,5,.86) 47% 53%, transparent 54%) 48% 64%/120px 130px no-repeat,
    linear-gradient(135deg, transparent 0 46%, rgba(23,9,5,.70) 47% 53%, transparent 54%) 25% 72%/96px 105px no-repeat,
    linear-gradient(135deg, transparent 0 46%, rgba(23,9,5,.70) 47% 53%, transparent 54%) 72% 72%/96px 105px no-repeat;
  border-radius: 0;
}
.public-spiritual-v3 .hero-copy-block,
.public-spiritual-v3 .premium-trip-search,
.public-spiritual-v3 .home-chip-row,
.public-spiritual-v3 .premium-trust-strip,
.public-spiritual-v3 .hero-actions,
.public-spiritual-v3 .metrics { position: relative; z-index: 2; }
.public-spiritual-v3 .public-hero-panel h1,
.public-spiritual-v3 .public-hero-panel .hero-subtitle,
.public-spiritual-v3 .public-hero-panel p { color: #fff8eb; }
.public-spiritual-v3 .public-hero-panel .hindi { color: #fde68a; }
.spiritual-hero-cues {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin: 16px 0 8px;
}
.spiritual-hero-cues span {
  padding: 9px 13px;
  border-radius: 999px;
  background: rgba(255,248,235,.12);
  border: 1px solid rgba(247,201,72,.22);
  color: #fde68a;
  font-size: 13px;
  font-weight: 950;
}
.public-spiritual-v3 .luxury-booking-search {
  background: linear-gradient(180deg, rgba(255,248,235,.97), rgba(255,244,220,.92));
  border-color: rgba(247,201,72,.55);
  box-shadow: 0 28px 76px rgba(23,9,5,.28);
}
.public-spiritual-v3 .luxury-booking-search .premium-search-field {
  background: #fffdf7;
  border-color: rgba(180,83,9,.18);
}
.public-spiritual-v3 .home-chip-row button,
.public-spiritual-v3 .premium-trust-strip span {
  background: rgba(255,248,235,.14);
  border-color: rgba(247,201,72,.24);
  color: #fff4dc;
}
.public-spiritual-v3 .luxury-metrics .metric {
  background: rgba(255,248,235,.12);
  border-color: rgba(247,201,72,.25);
}
.public-spiritual-v3 .luxury-metrics .metric strong,
.public-spiritual-v3 .luxury-metrics .metric span { color: #fff8eb; }
.public-spiritual-v3 .luxury-journey-card {
  background:
    radial-gradient(circle at 68% 10%, rgba(247,201,72,.28), transparent 34%),
    linear-gradient(180deg, rgba(23,9,5,.96), rgba(58,18,6,.94) 52%, rgba(124,45,18,.90));
  border-color: rgba(247,201,72,.28);
}
.sacred-route-visual {
  position: relative;
  min-height: 150px;
  margin: 10px 0 18px;
  border-radius: 28px;
  overflow: hidden;
  border: 1px solid rgba(247,201,72,.26);
  background: linear-gradient(180deg, rgba(255,244,220,.10), rgba(247,201,72,.08));
}
.sacred-route-visual .sun-disc {
  position: absolute;
  width: 112px;
  height: 112px;
  border-radius: 50%;
  left: 50%;
  top: 14px;
  transform: translateX(-50%);
  background: radial-gradient(circle, #fff4dc 0 20%, #f7c948 21% 58%, rgba(247,201,72,.05) 59% 100%);
  box-shadow: 0 0 46px rgba(247,201,72,.45);
}
.sacred-route-visual .temple-silhouette {
  position: absolute;
  left: 12%;
  right: 12%;
  bottom: 28px;
  height: 76px;
  display: flex;
  align-items: end;
  justify-content: center;
  gap: 14px;
}
.sacred-route-visual .temple-silhouette span {
  display: block;
  width: 28%;
  height: 54px;
  background: linear-gradient(180deg, #2a0d04, #120705);
  border-radius: 10px 10px 0 0;
  position: relative;
}
.sacred-route-visual .temple-silhouette span:nth-child(2) { height: 76px; width: 34%; }
.sacred-route-visual .temple-silhouette span::before {
  content: "";
  position: absolute;
  left: 50%;
  top: -32px;
  transform: translateX(-50%);
  width: 0;
  height: 0;
  border-left: 28px solid transparent;
  border-right: 28px solid transparent;
  border-bottom: 34px solid #2a0d04;
}
.sacred-route-visual .ghat-lines {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 26px;
  background: repeating-linear-gradient(180deg, rgba(247,201,72,.34) 0 2px, rgba(247,201,72,.02) 2px 8px);
}
.public-spiritual-v3 .section {
  border-color: rgba(247,201,72,.22);
  background:
    radial-gradient(circle at top right, rgba(247,201,72,.16), transparent 34%),
    linear-gradient(180deg, rgba(255,253,247,.94), rgba(255,244,220,.88));
}
.public-spiritual-v3 .luxury-experience,
.public-spiritual-v3 .luxury-planner,
.public-spiritual-v3 .premium-marketplace-section,
.public-spiritual-v3 .luxury-service-section,
.public-spiritual-v3 .luxury-destination-section,
.public-spiritual-v3 #trustPublicPanel,
.public-spiritual-v3 #b2b {
  position: relative;
  overflow: hidden;
}
.public-spiritual-v3 .luxury-experience::before,
.public-spiritual-v3 .premium-marketplace-section::before,
.public-spiritual-v3 .luxury-destination-section::before,
.public-spiritual-v3 #trustPublicPanel::before {
  content: "";
  position: absolute;
  inset: -120px auto auto -120px;
  width: 280px;
  height: 280px;
  border-radius: 50%;
  border: 28px solid rgba(217,119,6,.055);
  box-shadow: 0 0 0 20px rgba(247,201,72,.035), 0 0 0 56px rgba(124,45,18,.025);
  pointer-events: none;
}
.public-spiritual-v3 .experience-card,
.public-spiritual-v3 .planner-track article,
.public-spiritual-v3 .card,
.public-spiritual-v3 .marketplace-summary article {
  background: linear-gradient(180deg, rgba(255,253,247,.96), rgba(255,248,235,.92));
  border-color: rgba(180,83,9,.16);
}
.public-spiritual-v3 .experience-card.tall-card {
  background:
    radial-gradient(circle at 80% 18%, rgba(247,201,72,.24), transparent 34%),
    linear-gradient(160deg, rgba(58,18,6,.96), rgba(124,45,18,.90));
}
.public-spiritual-v3 .premium-marketplace-section {
  scroll-margin-top: 98px;
  background:
    radial-gradient(circle at 10% 0%, rgba(247,201,72,.22), transparent 36%),
    linear-gradient(180deg, rgba(255,248,235,.96), rgba(255,244,220,.86));
}
.public-spiritual-v3 .filter-panel-title {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  gap: 16px;
  margin-bottom: 14px;
  border-bottom: 1px solid rgba(180,83,9,.14);
  padding-bottom: 12px;
}
.public-spiritual-v3 .filter-panel-title h3 { margin: 0; font-size: 24px; color: #3a1206; }
.public-spiritual-v3 .filter-panel-title small { color: #7c2d12; font-weight: 850; max-width: 340px; line-height: 1.5; }
.public-spiritual-v3 .marketplace-filter-panel {
  position: relative !important;
  top: auto !important;
  z-index: 1;
  display: block !important;
  overflow: visible;
  margin: 20px 0 24px;
  background: linear-gradient(180deg, rgba(255,253,247,.98), rgba(255,244,220,.92));
  border: 1px solid rgba(180,83,9,.20);
  box-shadow: 0 18px 48px rgba(58,18,6,.10);
  transform: none !important;
}
.public-spiritual-v3 .marketplace-filter-panel.is-open { display: block !important; }
.public-spiritual-v3 .marketplace-filter-grid {
  grid-template-columns: minmax(230px, 1.4fr) repeat(3, minmax(150px, 1fr));
}
.public-spiritual-v3 .marketplace-layout { margin-top: 12px; }
.public-spiritual-v3 .marketplace-facets {
  position: relative !important;
  top: auto !important;
  background:
    radial-gradient(circle at 80% 10%, rgba(247,201,72,.18), transparent 38%),
    linear-gradient(180deg, rgba(58,18,6,.96), rgba(124,45,18,.92));
  border-color: rgba(247,201,72,.22);
}
.public-spiritual-v3 .mobile-filter-toggle { display: none !important; }
.public-spiritual-v3 .package-visual {
  background:
    linear-gradient(180deg, rgba(58,18,6,.18), rgba(58,18,6,.72)),
    radial-gradient(circle at 70% 20%, rgba(247,201,72,.48), transparent 28%),
    linear-gradient(135deg, #f7c948, #d97706 56%, #7c2d12);
  color: #fff8eb;
  position: relative;
}
.public-spiritual-v3 .package-visual::after {
  content: "🛕";
  position: absolute;
  right: 18px;
  bottom: 14px;
  font-size: 46px;
  opacity: .42;
}
.public-spiritual-v3 .luxury-package-card {
  border-color: rgba(180,83,9,.16);
  box-shadow: 0 22px 60px rgba(58,18,6,.13);
}
.public-spiritual-v3 .luxury-package-card:hover { box-shadow: 0 30px 82px rgba(58,18,6,.20); }
.public-spiritual-v3 .footer { background: linear-gradient(135deg, #170905, #3a1206 48%, #7c2d12); }
@media (max-width: 1180px) {
  .public-spiritual-v3 .marketplace-filter-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
}
@media (max-width: 760px) {
  .public-spiritual-v3 .public-hero-panel { min-height: auto; }
  .public-spiritual-v3 .filter-panel-title { display: block; }
  .public-spiritual-v3 .marketplace-filter-grid { grid-template-columns: 1fr; }
  .spiritual-hero-cues { overflow-x: auto; flex-wrap: nowrap; padding-bottom: 4px; }
  .spiritual-hero-cues span { white-space: nowrap; }
}

/* i72 public realistic image layer: local pilgrimage visuals across the public booking website. */
.public-image-rich-v4 {
  background:
    linear-gradient(180deg, rgba(58,18,6,.12), rgba(255,244,220,.62) 34%, rgba(124,45,18,.16)),
    url('/assets/img/public/hero-ganga-aarti.jpg') center top / 100% auto no-repeat,
    #fff4dc;
}
.public-image-rich-v4::before {
  content: "";
  position: fixed;
  inset: 0;
  z-index: -2;
  background:
    linear-gradient(180deg, rgba(58,18,6,.42), rgba(255,248,235,.80) 520px, rgba(255,244,220,.92)),
    url('/assets/img/public/route-govardhan-hills.jpg') center bottom / cover no-repeat;
  opacity: .92;
  pointer-events: none;
}
.public-image-rich-v4 .public-hero-redesign {
  background:
    linear-gradient(180deg, rgba(23,9,5,.50), rgba(58,18,6,.32)),
    url('/assets/img/public/hero-ganga-aarti.jpg') center / cover no-repeat !important;
  border-bottom: 1px solid rgba(247,201,72,.24);
}
.public-image-rich-v4 .public-hero-redesign::after {
  content: "";
  position: absolute;
  inset: 0;
  background:
    radial-gradient(circle at 18% 18%, rgba(247,201,72,.28), transparent 28%),
    linear-gradient(90deg, rgba(23,9,5,.70), rgba(23,9,5,.26) 54%, rgba(23,9,5,.60));
  pointer-events: none;
}
.public-image-rich-v4 .public-hero-redesign > .container { position: relative; z-index: 1; }
.public-image-rich-v4 .public-hero-panel {
  background: linear-gradient(120deg, rgba(58,18,6,.82), rgba(124,45,18,.62) 52%, rgba(217,119,6,.42)) !important;
  backdrop-filter: blur(8px);
}
.public-photo-stack { display: grid; gap: 14px; position: relative; z-index: 2; }
.public-photo-card {
  margin: 0;
  overflow: hidden;
  border-radius: 32px;
  border: 1px solid rgba(247,201,72,.34);
  box-shadow: 0 26px 70px rgba(23,9,5,.36);
  background: #170905;
}
.public-photo-card img { display: block; width: 100%; height: 250px; object-fit: cover; }
.public-photo-card figcaption {
  display: grid;
  gap: 5px;
  padding: 14px 16px 16px;
  color: #fff8eb;
  background: linear-gradient(180deg, rgba(23,9,5,.92), rgba(58,18,6,.96));
}
.public-photo-card figcaption strong { color: #fde68a; font-size: 16px; }
.public-photo-card figcaption span { color: rgba(255,248,235,.76); font-size: 13px; line-height: 1.45; }
.public-mini-photo-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.public-mini-photo-grid span {
  min-height: 132px;
  border-radius: 26px;
  background-size: cover;
  background-position: center;
  border: 1px solid rgba(247,201,72,.24);
  box-shadow: inset 0 -70px 60px rgba(23,9,5,.36), 0 18px 48px rgba(23,9,5,.24);
}
.public-image-rich-v4 .sacred-route-visual { display: none; }
.public-image-rich-v4 .section {
  background:
    linear-gradient(180deg, rgba(255,253,247,.90), rgba(255,244,220,.84)) !important;
  backdrop-filter: blur(2px);
}
.public-image-rich-v4 .image-band-section {
  background-size: cover !important;
  background-position: center !important;
  color: #fff8eb;
  border-color: rgba(247,201,72,.24) !important;
  box-shadow: 0 30px 90px rgba(58,18,6,.17);
}
.public-image-rich-v4 .image-band-section::after {
  content: "";
  position: absolute;
  inset: 0;
  background:
    radial-gradient(circle at 16% 18%, rgba(247,201,72,.18), transparent 28%),
    linear-gradient(105deg, rgba(23,9,5,.82), rgba(58,18,6,.62) 46%, rgba(23,9,5,.42));
  pointer-events: none;
}
.public-image-rich-v4 .image-band-section > * { position: relative; z-index: 1; }
.public-image-rich-v4 .image-band-section h2,
.public-image-rich-v4 .image-band-section h3,
.public-image-rich-v4 .image-band-section p,
.public-image-rich-v4 .image-band-section .eyebrow { color: #fff8eb; }
.public-image-rich-v4 .image-band-section .eyebrow { color: #fde68a; }
.public-image-rich-v4 .service-image-band { background: url('/assets/img/public/service-guide-devotees.jpg') center / cover no-repeat !important; }
.public-image-rich-v4 .destination-image-band { background: url('/assets/img/public/destination-himalayan-temple.jpg') center / cover no-repeat !important; }
.public-image-rich-v4 .trust-image-band { background: url('/assets/img/public/trust-family-darshan.jpg') center / cover no-repeat !important; }
.public-image-rich-v4 .partner-image-band { background: url('/assets/img/public/partner-operations-desk.jpg') center / cover no-repeat !important; }
.public-image-rich-v4 .image-card,
.public-image-rich-v4 .visual-planner-track article,
.public-image-rich-v4 .visual-service-card,
.public-image-rich-v4 .visual-destination-card,
.public-image-rich-v4 .visual-b2b-card {
  overflow: hidden;
  position: relative;
  background:
    linear-gradient(180deg, rgba(255,253,247,.96), rgba(255,244,220,.88)) !important;
}
.public-image-rich-v4 .image-card::before,
.public-image-rich-v4 .visual-planner-track article::before,
.public-image-rich-v4 .visual-b2b-card::before {
  content: "";
  display: block;
  height: 138px;
  margin: -24px -24px 18px;
  background: linear-gradient(180deg, rgba(23,9,5,.08), rgba(23,9,5,.54)), var(--card-photo) center / cover no-repeat;
}
.public-image-rich-v4 .public-card-photo {
  height: 142px;
  margin: -24px -24px 18px;
  background-size: cover;
  background-position: center;
  box-shadow: inset 0 -80px 64px rgba(23,9,5,.44);
}
.public-image-rich-v4 .destination-photo { height: 170px; }
.public-image-rich-v4 .visual-service-card,
.public-image-rich-v4 .visual-destination-card,
.public-image-rich-v4 .visual-b2b-card,
.public-image-rich-v4 .premium-trust-card-grid .card {
  border: 1px solid rgba(247,201,72,.25) !important;
  box-shadow: 0 18px 46px rgba(23,9,5,.18);
}
.public-image-rich-v4 .premium-trust-card-grid .card {
  background: linear-gradient(180deg, rgba(255,248,235,.95), rgba(255,244,220,.86)) !important;
  color: #3a1206;
}
.public-image-rich-v4 .premium-trust-card-grid .card h3,
.public-image-rich-v4 .premium-trust-card-grid .card p { color: #3a1206; }
.public-image-rich-v4 .premium-marketplace-section {
  background:
    linear-gradient(180deg, rgba(255,248,235,.93), rgba(255,244,220,.88)),
    url('/assets/img/public/route-vrindavan-temple-street.jpg') center / cover no-repeat !important;
}
.public-image-rich-v4 .marketplace-filter-panel {
  background:
    linear-gradient(180deg, rgba(255,253,247,.98), rgba(255,244,220,.94)),
    url('/assets/img/public/service-meals-prasad.jpg') right center / 42% auto no-repeat !important;
}
.public-image-rich-v4 .package-visual {
  min-height: 168px;
  background-size: cover !important;
  background-position: center !important;
  align-content: end;
  gap: 8px;
  box-shadow: inset 0 -105px 80px rgba(23,9,5,.58);
}
.public-image-rich-v4 .package-visual::after { content: "" !important; }
.public-image-rich-v4 #contentPages,
.public-image-rich-v4 #cmsWebsitePanel,
@media (max-width: 920px) {
  .public-image-rich-v4 .public-photo-card img { height: 210px; }
  .public-image-rich-v4 .image-band-section::after { background: linear-gradient(180deg, rgba(23,9,5,.82), rgba(58,18,6,.66)); }
  .public-image-rich-v4 .marketplace-filter-panel { background: linear-gradient(180deg, rgba(255,253,247,.98), rgba(255,244,220,.94)) !important; }
}
@media (max-width: 640px) {
  .public-mini-photo-grid { grid-template-columns: 1fr; }
  .public-mini-photo-grid span { min-height: 110px; }
  .public-image-rich-v4 .image-card::before,
  .public-image-rich-v4 .visual-planner-track article::before,
  .public-image-rich-v4 .visual-b2b-card::before,
  .public-image-rich-v4 .public-card-photo { height: 118px; }
}

/* i73 public contrast repair: dark readable text over image-rich religious UI. */
.public-image-rich-v4 .topbar {
  background: linear-gradient(90deg, rgba(255,248,235,.98), rgba(255,241,208,.96), rgba(255,248,235,.98)) !important;
  border-bottom: 1px solid rgba(180,83,9,.24) !important;
  box-shadow: 0 16px 42px rgba(58,18,6,.14) !important;
  backdrop-filter: blur(18px);
}
.public-image-rich-v4 .brand-mark strong,
.public-image-rich-v4 .brand-mark small,
.public-image-rich-v4 .nav-links a {
  color: #3a1206 !important;
  text-shadow: none !important;
}
.public-image-rich-v4 .brand-mark small { color: #6b2b0b !important; }
.public-image-rich-v4 .nav-links {
  background: rgba(255,253,247,.80) !important;
  border: 1px solid rgba(180,83,9,.16) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.78), 0 10px 28px rgba(58,18,6,.08);
}
.public-image-rich-v4 .nav-links a:hover,
.public-image-rich-v4 .nav-links a:focus {
  color: #fff8eb !important;
  background: linear-gradient(135deg, #92400e, #4c1d0b) !important;
}
.public-image-rich-v4 .topbar .btn-secondary {
  color: #2f1808 !important;
  background: rgba(255,253,247,.96) !important;
  border-color: rgba(180,83,9,.20) !important;
}
.public-image-rich-v4 .topbar .btn-primary {
  color: #fffaf0 !important;
  background: linear-gradient(135deg, #0f766e, #164e63) !important;
}
.public-image-rich-v4 .section:not(.image-band-section),
.public-image-rich-v4 .premium-marketplace-section,
.public-image-rich-v4 .marketplace-filter-panel,
.public-image-rich-v4 .marketplace-facets,
.public-image-rich-v4 .luxury-package-card,
.public-image-rich-v4 .package-content,
.public-image-rich-v4 .image-card,
.public-image-rich-v4 .visual-service-card,
.public-image-rich-v4 .visual-destination-card,
.public-image-rich-v4 .visual-b2b-card,
.public-image-rich-v4 .premium-trust-card-grid .card,
.public-image-rich-v4 .experience-card,
.public-image-rich-v4 .destination-card,
.public-image-rich-v4 #contentPages,
.public-image-rich-v4 #cmsWebsitePanel,
.public-image-rich-v4 .section:not(.image-band-section) h1,
.public-image-rich-v4 .section:not(.image-band-section) h2,
.public-image-rich-v4 .section:not(.image-band-section) h3,
.public-image-rich-v4 .premium-marketplace-section h2,
.public-image-rich-v4 .premium-marketplace-section h3,
.public-image-rich-v4 .marketplace-filter-panel h3,
.public-image-rich-v4 .marketplace-facets h3,
.public-image-rich-v4 .package-content h3,
.public-image-rich-v4 .visual-service-card h3,
.public-image-rich-v4 .visual-destination-card h3,
.public-image-rich-v4 .visual-b2b-card h3,
.public-image-rich-v4 .premium-trust-card-grid .card h3,
.public-image-rich-v4 .image-card h3,
.public-image-rich-v4 .experience-card h3,
.public-image-rich-v4 .destination-card h3 {
  color: #2b1105 !important;
  text-shadow: none !important;
}
.public-image-rich-v4 .section:not(.image-band-section) p,
.public-image-rich-v4 .premium-marketplace-section p,
.public-image-rich-v4 .marketplace-filter-panel p,
.public-image-rich-v4 .marketplace-facets p,
.public-image-rich-v4 .package-content p,
.public-image-rich-v4 .visual-service-card p,
.public-image-rich-v4 .visual-destination-card p,
.public-image-rich-v4 .visual-b2b-card p,
.public-image-rich-v4 .premium-trust-card-grid .card p,
.public-image-rich-v4 .image-card p,
.public-image-rich-v4 .experience-card p,
.public-image-rich-v4 .destination-card p {
  color: #573018 !important;
  text-shadow: none !important;
}
.public-image-rich-v4 .section:not(.image-band-section) small,
.public-image-rich-v4 .marketplace-facets small,
.public-image-rich-v4 .package-content small,
.public-image-rich-v4 .visual-service-card small,
.public-image-rich-v4 .visual-destination-card small,
.public-image-rich-v4 .visual-b2b-card small,
.public-image-rich-v4 .destination-card small,
.public-image-rich-v4 .card small {
  color: #6b3a19 !important;
  text-shadow: none !important;
}
.public-image-rich-v4 .visual-service-card,
.public-image-rich-v4 .visual-destination-card,
.public-image-rich-v4 .visual-b2b-card,
.public-image-rich-v4 .image-card,
.public-image-rich-v4 .experience-card,
.public-image-rich-v4 .destination-card,
.public-image-rich-v4 .premium-trust-card-grid .card,
.public-image-rich-v4 .luxury-package-card {
  background: linear-gradient(180deg, rgba(255,253,247,.98), rgba(255,244,220,.95)) !important;
  border-color: rgba(180,83,9,.22) !important;
  box-shadow: 0 22px 56px rgba(58,18,6,.16) !important;
}
.public-image-rich-v4 .card-icon,
.public-image-rich-v4 .package-card-topline span,
.public-image-rich-v4 .option-pill,
.public-image-rich-v4 .care-badge-row span,
.public-image-rich-v4 .home-chip-row button,
.public-image-rich-v4 .marketplace-summary article span,
.public-image-rich-v4 .marketplace-summary article strong {
  color: #2f1808 !important;
  text-shadow: none !important;
}
.public-image-rich-v4 .package-card-topline > span:last-child,
.public-image-rich-v4 .card-icon,
.public-image-rich-v4 .option-pill,
.public-image-rich-v4 .care-badge-row span {
  background: #fff4dc !important;
  border-color: rgba(180,83,9,.20) !important;
}
.public-image-rich-v4 .luxury-price-row,
.public-image-rich-v4 .marketplace-summary article,
.public-image-rich-v4 .status-note,
.public-image-rich-v4 .filter-panel-title,
.public-image-rich-v4 .field input,
.public-image-rich-v4 .field select,
.public-image-rich-v4 .field textarea {
  color: #321507 !important;
  background: rgba(255,253,247,.96) !important;
}
.public-image-rich-v4 .field label,
.public-image-rich-v4 .premium-search-field label {
  color: #4a1f09 !important;
}
.public-image-rich-v4 .image-band-section .visual-service-card,
.public-image-rich-v4 .image-band-section .visual-destination-card,
.public-image-rich-v4 .image-band-section .visual-b2b-card,
.public-image-rich-v4 .image-band-section .card {
  background: linear-gradient(180deg, rgba(255,253,247,.98), rgba(255,244,220,.95)) !important;
  color: #321507 !important;
}
.public-image-rich-v4 .image-band-section .visual-service-card h3,
.public-image-rich-v4 .image-band-section .visual-destination-card h3,
.public-image-rich-v4 .image-band-section .visual-b2b-card h3,
.public-image-rich-v4 .image-band-section .card h3 {
  color: #2b1105 !important;
}
.public-image-rich-v4 .image-band-section .visual-service-card p,
.public-image-rich-v4 .image-band-section .visual-destination-card p,
.public-image-rich-v4 .image-band-section .visual-b2b-card p,
.public-image-rich-v4 .image-band-section .card p {
  color: #573018 !important;
}
.public-image-rich-v4 .image-band-section .visual-service-card small,
.public-image-rich-v4 .image-band-section .visual-destination-card small,
.public-image-rich-v4 .image-band-section .visual-b2b-card small,
.public-image-rich-v4 .image-band-section .card small {
  color: #6b3a19 !important;
}
.public-image-rich-v4 .package-visual span,
.public-image-rich-v4 .package-visual strong {
  color: #fffaf0 !important;
  background: rgba(23,9,5,.62) !important;
  border-color: rgba(255,248,235,.34) !important;
  text-shadow: 0 2px 12px rgba(0,0,0,.50);
}
.public-image-rich-v4 .public-photo-card figcaption,
.public-image-rich-v4 .image-band-section > .section-head,
.public-image-rich-v4 .image-band-section > .section-head * {
  color: #fff8eb !important;
}
.public-image-rich-v4 .image-band-section > .section-head p { color: rgba(255,248,235,.88) !important; }

/* i77 admin production UI shell cleanup */
.admin-main { min-height: 100vh; }
.admin-topbar {
  position: sticky;
  top: 0;
  z-index: 30;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  padding: 16px 22px;
  margin: 0 0 22px;
  border: 1px solid rgba(148, 163, 184, .22);
  border-radius: 0 0 26px 26px;
  background: linear-gradient(135deg, rgba(255,255,255,.96), rgba(255,247,237,.94));
  box-shadow: 0 18px 44px rgba(15, 23, 42, .08);
  backdrop-filter: blur(16px);
}
.topbar-left,
.admin-profile-chip,
.topbar-nav { display: flex; align-items: center; gap: 12px; }
.topbar-left strong { display:block; color:#1f2937; font-size:18px; }
.topbar-left .eyebrow { color:#9a3412; }
.topbar-nav { flex-wrap: wrap; justify-content: center; }
.topbar-nav a {
  text-decoration: none;
  color: #334155;
  font-weight: 850;
  padding: 9px 13px;
  border-radius: 999px;
  background: rgba(255,255,255,.72);
  border: 1px solid rgba(148,163,184,.20);
}
.topbar-nav a:hover { color:#7c2d12; border-color:rgba(217,119,6,.34); background:#fff7ed; }
.admin-profile-chip {
  min-width: 260px;
  justify-content: flex-end;
  padding: 8px;
  border-radius: 999px;
  background: #fff;
  border: 1px solid rgba(148, 163, 184, .22);
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.8);
}
.profile-avatar {
  width: 34px;
  height: 34px;
  display: inline-grid;
  place-items: center;
  border-radius: 50%;
  background: radial-gradient(circle at 35% 25%, #fde68a, #f59e0b 60%, #7c2d12);
  color: #431407;
  font-weight: 950;
}
.btn.compact { padding: 8px 12px; min-height: 36px; }
.admin-footer {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  margin: 28px 0 0;
  padding: 18px 22px;
  border-radius: 24px 24px 0 0;
  background: linear-gradient(135deg, #431407, #7c2d12);
  color: #fffbeb;
  font-weight: 800;
  box-shadow: 0 -12px 36px rgba(67,20,7,.16);
}
.admin-footer span:last-child { color:#fed7aa; text-align:right; }
.admin-page-shell { padding-top: 0; }
.standalone-topbar { margin-top: 0; }
.module-hero { background: linear-gradient(135deg, #fff7ed, #fff 45%, #fef3c7); border: 1px solid rgba(217,119,6,.20); }
.workspace-data-card .card h3 { color:#1f2937; }
.workspace-data-card .card p { color:#475569; }
.admin-menu a[href="#tracker"],
.admin-role-hidden { display:none !important; }
@media (max-width: 980px) {
  .admin-topbar { flex-direction: column; align-items: stretch; border-radius: 0 0 22px 22px; }
  .topbar-left, .topbar-nav, .admin-profile-chip { justify-content: flex-start; }
  .admin-profile-chip { min-width: 0; flex-wrap: wrap; border-radius: 22px; }
  .admin-footer { flex-direction: column; align-items: flex-start; }
  .admin-footer span:last-child { text-align:left; }
}

/* i78 partner portal premium shell */
.partner-portal-body {
  margin: 0;
  min-height: 100vh;
  color: #241306;
  background:
    linear-gradient(115deg, rgba(29, 12, 3, .86), rgba(83, 35, 8, .60) 34%, rgba(255, 246, 229, .94) 68%),
    url('/assets/img/public/partner-operations-desk.jpg') center / cover fixed no-repeat;
  font-family: Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}
.partner-portal-body::before {
  content: '';
  position: fixed;
  inset: 0;
  pointer-events: none;
  opacity: .38;
  background:
    radial-gradient(circle at 18% 12%, rgba(255, 195, 84, .32), transparent 28%),
    radial-gradient(circle at 85% 20%, rgba(255, 255, 255, .45), transparent 22%),
    linear-gradient(90deg, rgba(255,255,255,.06) 1px, transparent 1px),
    linear-gradient(180deg, rgba(255,255,255,.05) 1px, transparent 1px);
  background-size: auto, auto, 46px 46px, 46px 46px;
}
.partner-topbar {
  position: sticky;
  top: 0;
  z-index: 40;
  display: grid;
  grid-template-columns: minmax(220px, 1fr) auto auto auto;
  gap: 1rem;
  align-items: center;
  padding: .85rem clamp(1rem, 2.5vw, 2rem);
  background: rgba(255, 250, 241, .94);
  border-bottom: 1px solid rgba(122, 64, 12, .14);
  box-shadow: 0 18px 42px rgba(41, 18, 2, .12);
  backdrop-filter: blur(18px);
}
.partner-brand { display: inline-flex; gap: .72rem; align-items: center; color: #2b1605; text-decoration: none; }
.partner-brand-symbol { width: 46px; height: 46px; display: grid; place-items: center; border-radius: 18px; background: radial-gradient(circle at 30% 20%, #fff7d3, #f59e0b 62%, #7c2d12); color: #5a2102; font-size: 1.3rem; box-shadow: 0 10px 25px rgba(124, 45, 18, .24); }
.partner-brand strong { display: block; font-size: 1rem; letter-spacing: -.02em; }
.partner-brand small { display: block; color: #7b5a39; font-weight: 700; }
.partner-topnav { display: flex; align-items: center; gap: .35rem; padding: .35rem; border-radius: 999px; background: rgba(255, 242, 220, .88); border: 1px solid rgba(146, 86, 20, .14); }
.partner-topnav a { color: #503013; font-weight: 850; text-decoration: none; font-size: .86rem; padding: .65rem .85rem; border-radius: 999px; }
.partner-topnav a:hover { background: #fff; box-shadow: 0 10px 24px rgba(94, 46, 7, .12); }
.partner-profile-chip { display: inline-flex; align-items: center; gap: .62rem; min-width: 190px; border-radius: 999px; padding: .42rem .75rem .42rem .42rem; background: #fff; border: 1px solid rgba(146,86,20,.14); box-shadow: 0 10px 28px rgba(41,18,2,.08); }
.partner-avatar { width: 40px; height: 40px; border-radius: 50%; display: grid; place-items: center; background: linear-gradient(135deg, #0f766e, #14532d); color: white; font-weight: 950; }
.partner-profile-chip strong { display: block; color: #2b1605; font-size: .9rem; max-width: 135px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.partner-profile-chip small { display: block; color: #7b5a39; font-weight: 750; max-width: 135px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.partner-top-actions { display: flex; gap: .55rem; align-items: center; }
.partner-layout-shell { position: relative; z-index: 1; display: grid; grid-template-columns: 290px minmax(0, 1fr); gap: 1.25rem; width: min(1500px, calc(100% - 2rem)); margin: 1.25rem auto 2rem; }
.partner-sidebar { position: sticky; top: 5.7rem; align-self: start; display: grid; gap: .7rem; padding: 1rem; border-radius: 30px; background: rgba(43, 21, 5, .78); border: 1px solid rgba(255, 224, 175, .22); box-shadow: 0 26px 70px rgba(24, 10, 1, .32); backdrop-filter: blur(16px); color: white; }
.partner-sidebar-card { padding: .85rem; border-radius: 22px; background: rgba(255,255,255,.12); border: 1px solid rgba(255,255,255,.14); }
.partner-sidebar .eyebrow { color: #ffe4b8; }
.partner-side-link { display: flex; align-items: center; gap: .7rem; text-decoration: none; color: rgba(255,255,255,.88); font-weight: 850; padding: .82rem .9rem; border-radius: 18px; }
.partner-side-link span { color: #fbbf24; font-size: .78rem; letter-spacing: .08em; }
.partner-side-link:hover, .partner-side-link.active { background: rgba(255,255,255,.16); color: #fff; }
.partner-help-card { margin-top: .4rem; padding: .95rem; border-radius: 22px; background: linear-gradient(135deg, rgba(20,83,45,.92), rgba(15,118,110,.82)); border: 1px solid rgba(255,255,255,.16); }
.partner-help-card strong { display: block; margin-bottom: .3rem; }
.partner-help-card p { margin: 0; color: rgba(255,255,255,.84); line-height: 1.5; }
.partner-main-shell { min-width: 0; display: grid; gap: 1rem; }
.partner-breadcrumb { margin: 0; color: #fff7ed; }
.partner-breadcrumb a, .partner-breadcrumb strong { color: #fff7ed; }
.partner-hero-v2 { position: relative; overflow: hidden; min-height: 280px; display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(280px, .8fr); gap: 1rem; align-items: stretch; padding: clamp(1.3rem, 3vw, 2.3rem); border-radius: 34px; background:
    linear-gradient(110deg, rgba(53, 19, 2, .93), rgba(95, 42, 8, .72) 48%, rgba(20, 83, 45, .58)),
    url('/assets/img/public/trust-family-darshan.jpg') center / cover no-repeat; border: 1px solid rgba(255, 224, 178, .25); box-shadow: 0 35px 80px rgba(38, 16, 2, .30); color: #fff; }
.partner-hero-v2::after { content: ''; position: absolute; inset: auto -10% -35% 35%; height: 75%; border-radius: 50%; background: rgba(251,191,36,.20); filter: blur(35px); }
.partner-hero-copy { position: relative; z-index: 1; display: grid; align-content: center; gap: .8rem; max-width: 790px; }
.partner-hero-copy .eyebrow { color: #fde68a; }
.partner-hero-copy h1 { margin: 0; color: #fff; font-size: clamp(2.1rem, 5vw, 4.2rem); letter-spacing: -.06em; line-height: .96; }
.partner-hero-copy p { margin: 0; color: rgba(255,255,255,.86); max-width: 760px; font-size: 1.03rem; line-height: 1.6; }
.partner-hero-actions, .partner-form-actions { display: flex; flex-wrap: wrap; gap: .7rem; align-items: center; }
.partner-hero-visual { position: relative; z-index: 1; display: grid; align-content: center; gap: .9rem; }
.partner-visual-card { border-radius: 28px; padding: 1.1rem; background: rgba(255, 251, 235, .92); color: #2b1605; border: 1px solid rgba(255,255,255,.40); box-shadow: 0 24px 55px rgba(20, 9, 1, .22); }
.partner-visual-card.primary { background: linear-gradient(135deg, #fff7ed, #fef3c7); }
.partner-visual-card span { color: #8b4a11; text-transform: uppercase; letter-spacing: .09em; font-size: .76rem; font-weight: 900; }
.partner-visual-card strong { display: block; font-size: clamp(2rem, 4vw, 3.2rem); line-height: 1; margin: .28rem 0; color: #241306; }
.partner-visual-card small { color: #76532e; font-weight: 800; }
.partner-card, .partner-stat-card, .partner-mini-stat, .partner-tool-card { border-radius: 30px; background: rgba(255, 250, 241, .96); box-shadow: 0 24px 60px rgba(43,18,2,.14); border: 1px solid rgba(128, 72, 22, .15); color: #2b1605; }
.partner-card { padding: 1.15rem; }
.partner-card-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 1rem; margin-bottom: 1rem; }
.partner-card-head h2, .partner-card-head h3 { margin: .15rem 0; color: #241306; }
.partner-card-head p { margin: .25rem 0 0; color: #76532e; font-weight: 650; }
.partner-two-column { display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(330px, .95fr); gap: 1rem; align-items: start; }
.partner-status-strip { display: grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap: 1rem; margin: 0; }
.partner-stat-card, .partner-mini-stat { padding: 1rem; }
.partner-stat-card span, .partner-mini-stat span { color: #8b4a11; font-size: .78rem; text-transform: uppercase; letter-spacing: .08em; font-weight: 900; }
.partner-stat-card strong, .partner-mini-stat strong { display: block; color: #241306; font-size: clamp(1.5rem, 3vw, 2.2rem); line-height: 1.1; margin: .35rem 0; }
.partner-stat-card p { margin: 0; color: #76532e; }
.partner-profile-panel { color: #3e2a17; }
.partner-definition-list { display: grid; gap: .78rem; margin: 0; }
.partner-definition-list div { display: grid; gap: .2rem; padding: .74rem .8rem; border-radius: 18px; background: #fff7ed; border: 1px solid rgba(128,72,22,.08); }
.partner-definition-list dt { color: #8b4a11; font-size: .74rem; text-transform: uppercase; letter-spacing: .08em; font-weight: 900; }
.partner-definition-list dd { margin: 0; color: #241306; font-weight: 800; }
.document-mini-list { list-style: none; padding: 0; margin: .85rem 0 0; display: grid; gap: .55rem; }
.document-mini-list li { display: grid; gap: .1rem; padding: .75rem; border-radius: 16px; background: #fff; border: 1px solid rgba(128,72,22,.10); }
.document-mini-list span { color: #76532e; font-weight: 700; }
.partner-assignment-board { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; }
.partner-assignment-card { border: 1px solid rgba(128,72,22,.14); border-radius: 26px; background: linear-gradient(180deg,#fff,#fff7ed); box-shadow: 0 18px 42px rgba(73,35,8,.08); padding: 1rem; display: grid; gap: .85rem; }
.assignment-card-head { display: flex; justify-content: space-between; gap: .8rem; align-items: flex-start; }
.assignment-card-head h3 { margin: .2rem 0 0; color: #241306; }
.assignment-meta-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .55rem; }
.assignment-meta-grid span { display: grid; gap: .15rem; padding: .62rem; border-radius: 15px; background: #fff; color: #2b1605; border: 1px solid rgba(128,72,22,.09); font-weight: 750; }
.assignment-meta-grid strong { color: #8b4a11; font-size: .72rem; text-transform: uppercase; letter-spacing: .06em; }
.assignment-actions { display: flex; flex-wrap: wrap; gap: .55rem; }
.partner-response-panel { margin-top: 1rem; border: 1px solid rgba(128,72,22,.14); border-radius: 26px; padding: 1rem; background: #fff7ed; }
.partner-tool-grid { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: .8rem; }
.partner-tool-card { padding: 1rem; display: grid; gap: .45rem; }
.partner-tool-card h3 { margin: 0; color: #241306; }
.partner-tool-card p { margin: 0; color: #76532e; line-height: 1.5; }
.tool-badge { width: 44px; height: 44px; display: grid; place-items: center; border-radius: 16px; background: linear-gradient(135deg, #f59e0b, #7c2d12); color: white; font-weight: 950; }
.partner-module-dashboard { margin-top: 1rem; padding: 1rem; border-radius: 24px; background: #fff7ed; border: 1px solid rgba(128,72,22,.12); }
.partner-module-summary { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: .75rem; }
.module-data-list { margin-top: .8rem; padding: .8rem; border-radius: 18px; background: #fff; border: 1px solid rgba(128,72,22,.10); }
.module-data-list h3 { margin: 0 0 .45rem; color: #241306; }
.module-data-list p { color: #5a3413; font-weight: 650; }
.partner-table-wrap table { background: #fff; }
.partner-table-wrap table td, .partner-table-wrap table th { white-space: nowrap; color: #2b1605; }
.partner-footer { display: flex; justify-content: space-between; gap: 1rem; color: #fff7ed; padding: 1rem .25rem 0; font-weight: 800; }
.partner-auth-page { background:
    linear-gradient(125deg, rgba(28, 12, 2, .82), rgba(20, 83, 45, .66)),
    url('/assets/img/public/partner-operations-desk.jpg') center / cover fixed no-repeat !important; }
.partner-auth-page .auth-card { box-shadow: 0 30px 80px rgba(24, 10, 1, .26); border: 1px solid rgba(146, 86, 20, .16); }
.partner-auth-page .auth-story { background: rgba(39, 16, 3, .54); backdrop-filter: blur(14px); }
@media (max-width: 1180px){
  .partner-topbar { grid-template-columns: 1fr auto; }
  .partner-topnav, .partner-profile-chip { display: none; }
  .partner-layout-shell { grid-template-columns: 1fr; }
  .partner-sidebar { position: static; grid-template-columns: repeat(3, minmax(0,1fr)); }
  .partner-sidebar-card, .partner-help-card { grid-column: 1 / -1; }
}
@media (max-width: 980px){
  .partner-hero-v2, .partner-two-column, .partner-status-strip, .partner-assignment-board, .dense-form-grid, .partner-tool-grid { grid-template-columns: 1fr; }
  .assignment-meta-grid, .partner-module-summary { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .partner-top-actions { display: none; }
}
@media (max-width: 620px){
  .partner-topbar { padding: .7rem; }
  .partner-layout-shell { width: min(100% - .8rem, 1500px); margin-top: .7rem; }
  .partner-sidebar { display: none; }
  .partner-hero-v2 { border-radius: 24px; min-height: auto; }
  .partner-card { border-radius: 22px; }
  .partner-card-head, .assignment-card-head, .partner-footer { display: grid; }
  .assignment-meta-grid, .partner-module-summary { grid-template-columns: 1fr; }
  .partner-stat-card strong { font-size: 1.6rem; }
}

/* i79 production shell cleanup */
.production-admin-page {
  background:
    radial-gradient(circle at 8% 5%, rgba(245, 158, 11, .20), transparent 34%),
    radial-gradient(circle at 92% 3%, rgba(120, 53, 15, .18), transparent 32%),
    linear-gradient(135deg, #fff7ed 0%, #fffaf2 42%, #fdf2e5 100%);
}
.production-page-shell { min-height: 100vh; }
.production-module-hero {
  border: 1px solid rgba(146, 64, 14, .18);
  background:
    linear-gradient(120deg, rgba(69, 26, 3, .88), rgba(127, 29, 29, .78)),
    url('/assets/img/public/hero-ganga-aarti.jpg') center/cover;
  color: #fff8e8;
  box-shadow: 0 30px 70px rgba(69, 26, 3, .22);
}
.production-module-hero .eyebrow,
.production-module-hero p { color: rgba(255, 248, 232, .88); }
.production-workspace-section {
  border: 1px solid rgba(146, 64, 14, .16);
  background: rgba(255, 251, 235, .94);
  box-shadow: 0 22px 56px rgba(92, 38, 5, .10);
}
.production-workspace-section .admin-card-head p { margin: 7px 0 0; color: #704214; font-weight: 650; }
.production-summary-grid { margin: 18px 0; }
.production-metric-card {
  background: linear-gradient(145deg, #fffaf0, #fef3c7);
  border: 1px solid rgba(180, 83, 9, .18);
  color: #2f1608;
}
.production-metric-card h3 { color: #5f1f06; font-size: 24px; }
.production-table th { background: rgba(120, 53, 15, .08); color: #3b1d0b; }
.production-table td { color: #3b1d0b; }
.production-admin-page .status-note { background: rgba(255, 247, 237, .94); color: #5f1f06; border-color: rgba(180, 83, 9, .22); }
.production-admin-page .status-note.error { background: #fff1f2; color: #9f1239; border-color: rgba(225, 29, 72, .30); }
.customer-portal-body {
  min-height: 100vh;
  background:
    linear-gradient(120deg, rgba(69, 26, 3, .78), rgba(127, 29, 29, .60)),
    url('/assets/img/public/trust-family-darshan.jpg') center/cover fixed;
  color: #2f1608;
}
.customer-topbar,
.customer-footer {
  width: min(1180px, calc(100% - 32px));
  margin: 18px auto;
  border: 1px solid rgba(255, 237, 213, .34);
  background: rgba(255, 251, 235, .90);
  box-shadow: 0 20px 54px rgba(45, 20, 4, .22);
  backdrop-filter: blur(18px);
  border-radius: 28px;
  padding: 14px 18px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
}
.customer-brand,
.customer-profile-chip { display:flex; align-items:center; gap:12px; color:#321708; text-decoration:none; }
.customer-brand-symbol,
.customer-avatar {
  width: 48px; height: 48px; border-radius: 17px; display:grid; place-items:center;
  background: radial-gradient(circle at 30% 25%, #fef3c7, #f59e0b 52%, #7c2d12);
  color:#3b1103; font-weight:900; box-shadow:0 12px 24px rgba(120,53,15,.28);
}
.customer-brand small,
.customer-profile-chip small { display:block; color:#7c2d12; font-weight:700; }
.customer-topnav { display:flex; gap:10px; flex-wrap:wrap; justify-content:center; }
.customer-topnav a { text-decoration:none; color:#4b230b; font-weight:850; padding:10px 13px; border-radius:999px; background:rgba(255,247,237,.68); border:1px solid rgba(146,64,14,.12); }
.customer-main-shell { width:min(1180px, calc(100% - 32px)); margin: 0 auto 24px; }
.customer-main-shell .admin-hero,
.customer-main-shell .admin-card,
.customer-main-shell .card {
  background: rgba(255, 251, 235, .94);
  border-color: rgba(180, 83, 9, .18);
  box-shadow: 0 24px 58px rgba(45, 20, 4, .16);
}
.customer-main-shell .admin-hero { color:#3b1d0b; }
.customer-main-shell .admin-hero p,
.customer-main-shell .muted { color:#704214; }
.customer-footer { margin-bottom: 28px; color:#5f1f06; font-weight:800; }
.admin-hero .compact-page-links a { min-width: 176px; justify-content:center; }
@media (max-width: 860px) {
  .customer-topbar,
  .customer-footer { flex-direction: column; align-items: stretch; border-radius: 22px; }
  .customer-topnav { justify-content:flex-start; overflow-x:auto; flex-wrap:nowrap; padding-bottom:4px; }
  .customer-main-shell { width:min(100% - 20px, 1180px); }
}

/* i80 Product Experience Hardening: visible UI gate polish */
:root {
  --i80-ink:#24120a;
  --i80-muted:#72513c;
  --i80-saffron:#e77a18;
  --i80-maroon:#6d1d17;
  --i80-gold:#d9a441;
  --i80-cream:#fff6e7;
  --i80-paper:#fffaf0;
  --i80-deep:#1d0d08;
  --i80-shadow:0 24px 70px rgba(64, 24, 8, .18);
}
.i80-product-experience { color: var(--i80-ink); }
.i80-product-experience .btn { min-height: 42px; font-weight: 850; letter-spacing: -.01em; }
.i80-product-experience .btn-primary { background: linear-gradient(135deg, #f08b20, #a72f22); border-color: transparent; color:#fff; box-shadow: 0 16px 34px rgba(167,47,34,.28); }
.i80-product-experience .btn-secondary { background: rgba(255,250,240,.92); border-color: rgba(109,29,23,.18); color:#522016; }
.i80-product-experience .eyebrow { color:#a64713; letter-spacing:.11em; font-weight:900; }
.i80-product-experience .status-note { background: rgba(255,246,231,.9); color:#5c301c; border:1px solid rgba(167,47,34,.16); }

/* Public booking-site composition */
.public-layout.i80-product-experience {
  background:
    radial-gradient(circle at top left, rgba(255,184,75,.35), transparent 33rem),
    radial-gradient(circle at 90% 18%, rgba(132,42,24,.18), transparent 30rem),
    linear-gradient(180deg, #fff0d3 0%, #fff9ef 42%, #f6ead8 100%);
}
.public-layout.i80-product-experience::before {
  content:""; position:fixed; inset:0; pointer-events:none; z-index:-1;
  background-image:
    linear-gradient(rgba(109,29,23,.035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(109,29,23,.035) 1px, transparent 1px),
    radial-gradient(circle at 20% 10%, rgba(255,255,255,.62), transparent 18rem);
  background-size:48px 48px, 48px 48px, auto;
}
.public-layout.i80-product-experience .topbar { background: rgba(255,250,240,.9); backdrop-filter: blur(18px); border-bottom: 1px solid rgba(109,29,23,.12); box-shadow:0 14px 45px rgba(88,36,14,.10); }
.public-layout.i80-product-experience .brand-mark strong,
.public-layout.i80-product-experience .nav-links a { color:#3a170f; }
.public-layout.i80-product-experience .brand-mark small { color:#7d5134; }
.public-layout.i80-product-experience .hero.public-hero-redesign { padding:42px 0 58px; background:linear-gradient(135deg, rgba(255,243,220,.86), rgba(255,248,236,.5)); position:relative; overflow:hidden; }
.public-layout.i80-product-experience .hero.public-hero-redesign::before { content:""; position:absolute; inset:0; background:linear-gradient(90deg, rgba(36,18,10,.58), rgba(36,18,10,.14)), url('/assets/img/public/hero-ganga-aarti.jpg') center/cover; opacity:.92; }
.public-layout.i80-product-experience .hero.public-hero-redesign::after { content:""; position:absolute; inset:auto -10% -8rem -10%; height:14rem; background:linear-gradient(180deg, transparent, #fff6e8 70%); }
.public-layout.i80-product-experience .public-hero-grid { position:relative; z-index:1; }
.public-layout.i80-product-experience .public-hero-panel,
.public-layout.i80-product-experience .luxury-journey-card { background: rgba(255,250,240,.92); border:1px solid rgba(255,255,255,.54); box-shadow: var(--i80-shadow); border-radius:34px; }
.public-layout.i80-product-experience .hero-copy-block h1 { color:#321209; font-size:clamp(2.4rem, 4.8vw, 5.2rem); line-height:.94; letter-spacing:-.07em; }
.public-layout.i80-product-experience .hero-subtitle { color:#5f3a24; font-size:1.08rem; }
.public-layout.i80-product-experience .spiritual-hero-cues span,
.public-layout.i80-product-experience .premium-trust-strip span { background:#fff3df; color:#522016; border:1px solid rgba(167,47,34,.14); }
.public-layout.i80-product-experience .premium-trip-search { background:linear-gradient(135deg, #fffdf8, #fff1dc); border:1px solid rgba(167,47,34,.18); box-shadow:0 24px 54px rgba(75,29,10,.17); }
.public-layout.i80-product-experience .premium-search-field { background:#fffaf2; border:1px solid rgba(109,29,23,.14); }
.public-layout.i80-product-experience .premium-search-field label { color:#7f351a; font-weight:900; }
.public-layout.i80-product-experience input,
.public-layout.i80-product-experience select,
.public-layout.i80-product-experience textarea { background:#fffef9; color:#251107; border-color:rgba(109,29,23,.2); }
.public-layout.i80-product-experience .section { position:relative; z-index:1; }
.public-layout.i80-product-experience .section-head h2 { color:#2f1209; font-size:clamp(1.75rem, 2.6vw, 3rem); letter-spacing:-.045em; }
.public-layout.i80-product-experience .section-head p { color:#6f4a35; }
.public-layout.i80-product-experience .admin-card,
.public-layout.i80-product-experience .experience-card,
.public-layout.i80-product-experience .lane-card,
.public-layout.i80-product-experience .package-card,
.public-layout.i80-product-experience .marketplace-filter-panel,
.public-layout.i80-product-experience .marketplace-facets { background: rgba(255,250,240,.94); border:1px solid rgba(151,64,24,.14); border-radius:28px; box-shadow:0 18px 54px rgba(83,34,12,.10); color:#2c130a; }
.public-layout.i80-product-experience .marketplace-filter-panel { position:relative !important; top:auto !important; z-index:auto !important; }
.public-layout.i80-product-experience .marketplace-layout { align-items:start; }
.public-layout.i80-product-experience .marketplace-result-grid { gap:24px; }
.public-layout.i80-product-experience .marketplace-summary .metric,
.public-layout.i80-product-experience .metric { background:linear-gradient(135deg, #fffdf6, #fde9c6); border:1px solid rgba(151,64,24,.16); color:#2d1209; }
.public-layout.i80-product-experience .package-card h3,
.public-layout.i80-product-experience .package-card strong { color:#2a1008; }
.public-layout.i80-product-experience .package-card small,
.public-layout.i80-product-experience .package-card p,
.public-layout.i80-product-experience .muted { color:#6e4d38 !important; }
.sacred-inspiration-panel { margin-top:18px; }
.sacred-inspiration-hero { display:flex; justify-content:space-between; gap:24px; align-items:end; padding:34px; border-radius:34px; background:linear-gradient(135deg, rgba(85,26,18,.94), rgba(179,82,25,.88)), url('/assets/img/public/route-vrindavan-temple-street.jpg') center/cover; color:#fff7e8; box-shadow:var(--i80-shadow); position:relative; overflow:hidden; }
.sacred-inspiration-hero::after { content:"ॐ"; position:absolute; right:32px; top:4px; font-size:9rem; opacity:.09; font-weight:900; }
.sacred-inspiration-hero h2 { max-width:820px; font-size:clamp(1.9rem,3.2vw,3.6rem); line-height:.98; letter-spacing:-.055em; margin:8px 0 12px; color:#fffaf0; }
.sacred-inspiration-hero p { max-width:760px; color:rgba(255,250,240,.84); font-weight:650; }
.sacred-photo-tiles { display:grid; grid-template-columns:repeat(3, minmax(0,1fr)); gap:18px; margin-top:18px; }
.sacred-photo-tiles article { min-height:245px; border-radius:30px; padding:22px; display:flex; flex-direction:column; justify-content:flex-end; color:#fff; position:relative; overflow:hidden; box-shadow:0 22px 54px rgba(75,29,10,.17); background:#4b1c11; }
.sacred-photo-tiles article::before { content:""; position:absolute; inset:0; background:linear-gradient(180deg, rgba(31,14,8,.05), rgba(31,14,8,.86)), var(--tile-photo) center/cover; transition:transform .35s ease; }
.sacred-photo-tiles article:hover::before { transform:scale(1.04); }
.sacred-photo-tiles article > * { position:relative; z-index:1; }
.sacred-photo-tiles span { color:#ffdca2; font-weight:900; text-transform:uppercase; letter-spacing:.08em; font-size:.76rem; }
.sacred-photo-tiles strong { font-size:1.28rem; margin-top:4px; }
.sacred-photo-tiles small { color:rgba(255,250,240,.86); line-height:1.45; margin-top:6px; }

/* Customer travel desk */
.customer-portal-body.i80-product-experience { background:radial-gradient(circle at 18% 0, rgba(255,179,75,.32), transparent 28rem), linear-gradient(180deg,#fff2d8,#fffaf1 45%,#f7ead5); min-height:100vh; }
.customer-topbar,
.partner-topbar,
.admin-topbar { background:rgba(255,250,240,.92) !important; backdrop-filter:blur(18px); border-bottom:1px solid rgba(109,29,23,.13); box-shadow:0 12px 38px rgba(64,24,8,.08); color:#2b1209; }
.customer-brand strong,
.customer-topnav a,
.partner-brand strong,
.partner-topnav a,
.admin-topbar a { color:#321409; }
.customer-brand small,
.partner-brand small { color:#77452b; }
.customer-main-shell { max-width:1240px; margin:0 auto; padding:28px 18px 44px; }
.customer-hero-i80 { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:28px; align-items:end; padding:38px; border-radius:34px; color:#fff7e8; background:linear-gradient(105deg, rgba(72,25,17,.96), rgba(135,51,21,.78)), url('/assets/img/public/trust-family-darshan.jpg') center/cover; box-shadow:var(--i80-shadow); margin-bottom:18px; }
.customer-hero-i80 h1 { color:#fff9ec; font-size:clamp(2rem,3.5vw,4rem); line-height:.98; letter-spacing:-.055em; margin:8px 0 12px; }
.customer-hero-i80 p { max-width:760px; color:rgba(255,248,236,.86); font-size:1.05rem; }
.customer-journey-strip { display:flex; flex-wrap:wrap; gap:10px; margin-top:18px; }
.customer-journey-strip span { padding:9px 13px; border-radius:999px; color:#fff8ed; background:rgba(255,255,255,.14); border:1px solid rgba(255,255,255,.18); font-weight:900; }
.customer-experience-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; margin:18px 0; }
.customer-experience-grid article { min-height:180px; border-radius:28px; padding:20px; display:flex; flex-direction:column; justify-content:flex-end; color:#fff; position:relative; overflow:hidden; box-shadow:0 16px 42px rgba(83,34,12,.14); background:#4e1e12; }
.customer-experience-grid article::before { content:""; position:absolute; inset:0; background:linear-gradient(180deg, transparent, rgba(35,16,9,.82)), var(--tile-photo) center/cover; }
.customer-experience-grid article > * { position:relative; z-index:1; }
.customer-experience-grid strong { font-size:1.16rem; }
.customer-experience-grid span { color:rgba(255,250,240,.86); margin-top:6px; }
.customer-portal-body .admin-card { background:rgba(255,250,240,.95); border-color:rgba(138,56,20,.14); border-radius:28px; box-shadow:0 18px 48px rgba(86,34,12,.1); }
.customer-footer { background:#341409; color:#ffe8c6; border-radius:24px 24px 0 0; padding:18px 22px; }

/* Partner extranet */
.partner-portal-body.i80-product-experience { background:radial-gradient(circle at 86% 0, rgba(240,139,32,.28), transparent 28rem), linear-gradient(135deg,#1e0c07,#402014 36%,#fff2dc 36%,#fff8ed); min-height:100vh; }
.partner-layout-shell { max-width:1360px; margin:0 auto; }
.partner-sidebar { background:rgba(51,20,10,.92); color:#ffe9cb; box-shadow:0 20px 60px rgba(31,14,8,.2); }
.partner-side-link { color:#fff1db; }
.partner-side-link.active, .partner-side-link:hover { background:rgba(255,210,138,.18); color:#fff; }
.partner-main-shell { padding:28px; }
.partner-extranet-strip { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; margin-bottom:20px; }
.partner-extranet-strip article { min-height:172px; border-radius:28px; padding:20px; display:flex; flex-direction:column; justify-content:flex-end; position:relative; overflow:hidden; color:#fff; box-shadow:0 18px 48px rgba(31,14,8,.18); }
.partner-extranet-strip article::before { content:""; position:absolute; inset:0; background:linear-gradient(180deg, rgba(30,12,7,.02), rgba(30,12,7,.86)), var(--tile-photo) center/cover; }
.partner-extranet-strip article > * { position:relative; z-index:1; }
.partner-extranet-strip strong { font-size:1.15rem; }
.partner-extranet-strip span { color:rgba(255,247,232,.86); margin-top:7px; line-height:1.45; }
.partner-card,
.partner-status-strip article,
.partner-profile-card { background:rgba(255,250,240,.95) !important; border:1px solid rgba(154,64,22,.15) !important; box-shadow:0 18px 48px rgba(83,34,12,.12); color:#2c130a; }
.partner-hero-v2 { background:linear-gradient(135deg, rgba(72,25,17,.95), rgba(188,84,24,.82)), url('/assets/img/public/partner-operations-desk.jpg') center/cover; color:#fff7e8; border-radius:34px; box-shadow:var(--i80-shadow); }
.partner-hero-v2 h1 { color:#fff9ef; }
.partner-hero-v2 p { color:rgba(255,249,236,.86); }
.partner-footer { background:#2a1108; color:#ffe7c4; border-radius:24px; }

/* Admin/operator experience */
.admin-body.i80-product-experience { background:radial-gradient(circle at 0 0, rgba(255,177,76,.22), transparent 28rem), linear-gradient(135deg,#fff2dc,#fffaf1 48%,#f2e3cc); color:#2c130a; }
.admin-body.i80-product-experience .admin-main,
.admin-body.i80-product-experience .standalone-main { max-width:1380px; margin-inline:auto; }
.admin-body.i80-product-experience .admin-hero,
.admin-body.i80-product-experience .production-module-hero { background:linear-gradient(135deg, rgba(74,25,16,.94), rgba(151,59,22,.84)), url('/assets/img/public/route-govardhan-hills.jpg') center/cover; color:#fff8eb; border-radius:34px; box-shadow:var(--i80-shadow); }
.admin-body.i80-product-experience .admin-hero h1 { color:#fff9ef; font-size:clamp(2rem,3.3vw,3.8rem); letter-spacing:-.05em; }
.admin-body.i80-product-experience .admin-hero p { color:rgba(255,249,236,.86); max-width:790px; }
.admin-body.i80-product-experience .admin-card,
.admin-body.i80-product-experience .production-workspace-section { background:rgba(255,250,240,.96); border:1px solid rgba(151,64,24,.14); border-radius:28px; box-shadow:0 18px 48px rgba(83,34,12,.10); }
.admin-body.i80-product-experience .production-table th { color:#7a3418; background:#fff1dc; }
.admin-body.i80-product-experience .production-table td { color:#2d130a; }
.admin-body.i80-product-experience .topbar-nav a { border-radius:999px; padding:9px 12px; background:rgba(255,243,220,.72); border:1px solid rgba(151,64,24,.12); text-decoration:none; font-weight:850; }
.admin-body.i80-product-experience .admin-profile-chip { background:#fff7e8; color:#2f1309; border:1px solid rgba(151,64,24,.16); }
.admin-body.i80-product-experience .admin-footer { background:#2c1208; color:#ffe6c2; border-radius:24px; padding:18px 22px; margin-top:28px; }
.module-page.i80-product-experience .breadcrumb { margin:20px 0; }
.module-page.i80-product-experience .grid-3.production-summary-grid > * { background:linear-gradient(135deg,#fffdf7,#ffefd6); border:1px solid rgba(151,64,24,.14); box-shadow:0 12px 28px rgba(83,34,12,.08); }

/* Auth visual lift */
.auth-page.i80-product-experience { background:linear-gradient(135deg, rgba(45,17,9,.94), rgba(136,47,20,.76)), url('/assets/img/public/hero-ganga-aarti.jpg') center/cover fixed; }
.auth-page.i80-product-experience .auth-card { background:rgba(255,250,240,.96); color:#291209; box-shadow:var(--i80-shadow); border:1px solid rgba(255,255,255,.58); }
.auth-page.i80-product-experience .auth-story { background:rgba(55,19,10,.55); backdrop-filter:blur(12px); border:1px solid rgba(255,255,255,.16); color:#fff6e8; }
.auth-page.i80-product-experience .auth-copy-block h1 { color:#fff8eb; }
.auth-page.i80-product-experience .auth-copy-block p { color:rgba(255,248,236,.84); }

@media (max-width: 980px) {
  .sacred-photo-tiles, .customer-experience-grid, .partner-extranet-strip { grid-template-columns:1fr; }
  .sacred-inspiration-hero, .customer-hero-i80 { grid-template-columns:1fr; align-items:start; }
  .partner-main-shell { padding:18px; }
}
@media (max-width: 720px) {
  .public-layout.i80-product-experience .hero-copy-block h1 { font-size:2.35rem; }
  .public-layout.i80-product-experience .premium-trip-search { grid-template-columns:1fr; }
  .public-layout.i80-product-experience .topbar .nav-inner { gap:10px; }
  .sacred-inspiration-hero { padding:24px; }
  .customer-hero-i80 { padding:24px; }
}


/* i81 visible product-grade hardening */
.i81-visible-product-grade {
  --i81-ink:#231205;
  --i81-deep:#4a1707;
  --i81-saffron:#d97706;
  --i81-gold:#facc15;
  --i81-cream:#fff7ed;
  --i81-card:#fffaf0;
  --i81-border:rgba(120,53,15,.18);
}
.public-layout.i81-visible-product-grade {
  background:
    radial-gradient(circle at 8% 8%, rgba(250,204,21,.30), transparent 24%),
    radial-gradient(circle at 92% 22%, rgba(220,38,38,.18), transparent 30%),
    linear-gradient(180deg, #fff7ed 0%, #fff1cf 38%, #fef3c7 64%, #fff7ed 100%);
  color: var(--i81-ink);
}
.public-layout.i81-visible-product-grade .topbar {
  background: rgba(255,247,237,.92);
  border-bottom: 1px solid rgba(120,53,15,.16);
  box-shadow: 0 14px 40px rgba(69,26,3,.08);
  backdrop-filter: blur(18px);
}
.i81-booking-confidence {
  display:grid;
  grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr);
  gap:24px;
  align-items: stretch;
  padding: 34px;
  border-radius: 36px;
  border: 1px solid var(--i81-border);
  background:
    linear-gradient(135deg, rgba(255,247,237,.94), rgba(254,243,199,.90)),
    url('/assets/img/public/hero-ganga-aarti.jpg') center/cover no-repeat;
  box-shadow: 0 30px 80px rgba(69,26,3,.15);
  position:relative;
  overflow:hidden;
}
.i81-booking-confidence:before {
  content:"";
  position:absolute; inset:0;
  background: radial-gradient(circle at 18% 18%, rgba(251,191,36,.22), transparent 32%), linear-gradient(90deg, rgba(255,247,237,.92), rgba(255,247,237,.48));
  pointer-events:none;
}
.i81-booking-confidence > * { position:relative; z-index:1; }
.i81-confidence-copy h2 { margin:8px 0 12px; font-size: clamp(28px, 4vw, 46px); line-height:1.04; color:#431407; letter-spacing:-.05em; }
.i81-confidence-copy p { color:#5f2a0c; font-weight:750; line-height:1.72; max-width:680px; }
.i81-confidence-actions { display:flex; gap:12px; flex-wrap:wrap; margin-top:18px; }
.i81-confidence-grid { display:grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap:14px; }
.i81-confidence-grid article,
.i81-planner-card,
.i81-partner-workbench article {
  min-height: 230px;
  border-radius: 28px;
  border: 1px solid rgba(255,255,255,.34);
  padding: 20px;
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  color:#fff;
  background:
    linear-gradient(180deg, rgba(24,12,3,.05), rgba(24,12,3,.82)),
    var(--tile-photo) center/cover no-repeat;
  box-shadow: 0 24px 60px rgba(69,26,3,.20);
  overflow:hidden;
}
.i81-confidence-grid strong,
.i81-planner-card strong,
.i81-partner-workbench strong { font-size: 20px; line-height:1.15; text-shadow:0 2px 18px rgba(0,0,0,.42); }
.i81-confidence-grid span,
.i81-planner-card span,
.i81-partner-workbench p { color:rgba(255,255,255,.88); font-weight:700; line-height:1.55; margin-top:8px; }
.i81-funnel-strip { display:flex; gap:10px; flex-wrap:wrap; margin-top:16px; }
.i81-funnel-strip span { background:#4a1707; color:#fff7ed; border:1px solid rgba(250,204,21,.28); border-radius:999px; padding:9px 13px; font-weight:950; box-shadow:0 12px 30px rgba(69,26,3,.14); }
.i81-public-footer { background:linear-gradient(135deg,#3b1207,#7c2d12); color:#fffbeb; }
.i81-public-footer a, .i81-public-footer p, .i81-public-footer small { color:#ffedd5; }
.customer-portal-body.i81-visible-product-grade,
.partner-portal-body.i81-visible-product-grade,
.admin-body.i81-visible-product-grade,
.production-admin-page.i81-visible-product-grade {
  background:
    radial-gradient(circle at 12% 12%, rgba(245,158,11,.18), transparent 28%),
    radial-gradient(circle at 90% 4%, rgba(124,45,18,.18), transparent 30%),
    linear-gradient(180deg,#fff7ed 0%, #fef3c7 44%, #fff7ed 100%);
}
.i81-customer-planner,
.i81-partner-workbench,
.i81-workspace-launcher,
.i81-operator-strip {
  display:grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap:16px;
  margin:18px 0 22px;
}
.i81-customer-planner { grid-template-columns: repeat(3, minmax(0,1fr)); }
.i81-planner-card:nth-child(1){ --tile-photo:url('/assets/img/public/hero-ganga-aarti.jpg'); }
.i81-planner-card:nth-child(2){ --tile-photo:url('/assets/img/public/service-vehicle-route.jpg'); }
.i81-planner-card:nth-child(3){ --tile-photo:url('/assets/img/public/trust-family-darshan.jpg'); }
.i81-partner-workbench article {
  background: linear-gradient(180deg, rgba(24,12,3,.12), rgba(24,12,3,.84)), url('/assets/img/public/partner-operations-desk.jpg') center/cover no-repeat;
  min-height:190px;
}
.i81-partner-workbench article span {
  display:inline-flex; width:44px; height:44px; align-items:center; justify-content:center; border-radius:16px; background:rgba(250,204,21,.92); color:#431407; font-weight:950; margin-bottom:auto;
}
.i81-workspace-launcher { grid-template-columns: repeat(6, minmax(0,1fr)); }
.i81-workspace-launcher a {
  display:flex; flex-direction:column; gap:6px; min-height:116px;
  padding:18px; border-radius:24px; border:1px solid rgba(120,53,15,.18);
  background:linear-gradient(135deg, #fffaf0, #ffedd5);
  text-decoration:none; color:#431407;
  box-shadow:0 18px 40px rgba(69,26,3,.09);
}
.i81-workspace-launcher a strong { font-size:16px; }
.i81-workspace-launcher a span { color:#7c2d12; line-height:1.4; font-weight:700; }
.i81-page-rail {
  position:sticky; top:0; z-index:20;
  display:flex; gap:10px; flex-wrap:wrap; padding:10px 0; margin: 0 0 10px;
  background:linear-gradient(180deg, rgba(255,247,237,.96), rgba(255,247,237,.78));
  backdrop-filter: blur(14px);
}
.i81-page-rail a {
  text-decoration:none; color:#431407; background:#fffaf0; border:1px solid rgba(120,53,15,.18); padding:9px 13px; border-radius:999px; font-weight:900; box-shadow:0 10px 24px rgba(69,26,3,.07);
}
.i81-operator-strip article {
  border-radius:24px; padding:18px; background:linear-gradient(135deg,#431407,#7c2d12); color:#fff7ed; box-shadow:0 20px 50px rgba(69,26,3,.18);
}
.i81-operator-strip strong { display:block; font-size:18px; margin-bottom:6px; }
.i81-operator-strip span { color:#fed7aa; line-height:1.5; font-weight:750; }
.production-workspace-section,
.post-booking-command,
.partner-card,
.admin-card {
  border-color: rgba(120,53,15,.16) !important;
  box-shadow: 0 22px 55px rgba(69,26,3,.10) !important;
}
.module-page .production-module-hero,
.admin-body .admin-hero,
.customer-hero-i80,
.partner-hero-v2 {
  background:
    linear-gradient(135deg, rgba(67,20,7,.92), rgba(146,64,14,.80)),
    url('/assets/img/public/route-govardhan-hills.jpg') center/cover no-repeat !important;
  color:#fff7ed !important;
  border:1px solid rgba(250,204,21,.22);
}
.module-page .production-module-hero p,
.admin-body .admin-hero p,
.customer-hero-i80 p,
.partner-hero-v2 p { color:#ffedd5 !important; }
.module-page .production-module-hero h1,
.admin-body .admin-hero h1,
.customer-hero-i80 h1,
.partner-hero-v2 h1 { color:#fff7ed !important; }
.auth-assurance-grid { display:grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap:12px; margin-top:20px; }
.auth-assurance-grid article { border:1px solid rgba(120,53,15,.16); border-radius:22px; padding:16px; background:rgba(255,255,255,.76); box-shadow:0 14px 34px rgba(69,26,3,.08); }
.admin-auth-page .auth-assurance-grid article,
.partner-auth-page .auth-assurance-grid article { background: rgba(255,255,255,.12); }
.auth-assurance-grid strong { display:block; margin-bottom:8px; font-size:17px; }
.auth-assurance-grid span { color:#64748b; line-height:1.55; font-weight:650; }
.admin-auth-page .auth-assurance-grid span,
.partner-auth-page .auth-assurance-grid span { color:rgba(255,255,255,.78); }
@media (max-width: 1080px){
  .i81-booking-confidence, .i81-confidence-grid, .i81-customer-planner, .i81-partner-workbench, .i81-operator-strip { grid-template-columns:1fr; }
  .i81-workspace-launcher { grid-template-columns: repeat(2, minmax(0,1fr)); }
}
@media (max-width: 720px){
  .i81-booking-confidence { padding:22px; border-radius:26px; }
  .i81-workspace-launcher { grid-template-columns:1fr; }
  .auth-assurance-grid { grid-template-columns:1fr; }
}


/* i86 public contrast-safe palette repair.
   The public hero uses local pilgrimage photography, but all primary reading panels are now light ivory surfaces with dark maroon text.
   Image-only cards keep dark scrims with light text only where the background is intentionally dark. */
.public-layout.i86-contrast-safe {
  --i86-ink: #2b1006;
  --i86-ink-strong: #1f0b04;
  --i86-copy: #4b2110;
  --i86-muted: #65412b;
  --i86-saffron: #b45309;
  --i86-deep-maroon: #5f180c;
  --i86-cream: #fff7e8;
  --i86-cream-strong: #fffaf0;
  --i86-border: rgba(95, 24, 12, .18);
}
.public-layout.i86-contrast-safe .hero.public-hero-redesign::before {
  background:
    linear-gradient(90deg, rgba(52, 18, 8, .74), rgba(52, 18, 8, .34), rgba(52, 18, 8, .72)),
    url('/assets/img/public/hero-ganga-aarti.jpg') center/cover no-repeat !important;
  opacity: .96 !important;
}
.public-layout.i86-contrast-safe .public-hero-panel,
.public-layout.i86-contrast-safe .luxury-journey-card {
  background: linear-gradient(135deg, rgba(255,250,240,.98), rgba(255,239,214,.96)) !important;
  color: var(--i86-ink) !important;
  border: 1px solid rgba(255,255,255,.72) !important;
  box-shadow: 0 34px 90px rgba(45, 17, 7, .26) !important;
  text-shadow: none !important;
}
.public-layout.i86-contrast-safe .public-hero-panel *,
.public-layout.i86-contrast-safe .luxury-journey-card * {
  text-shadow: none;
}
.public-layout.i86-contrast-safe .public-hero-panel h1,
.public-layout.i86-contrast-safe .luxury-journey-card h2,
.public-layout.i86-contrast-safe .hero-copy-block h1 {
  color: var(--i86-ink-strong) !important;
  font-weight: 950;
}
.public-layout.i86-contrast-safe .public-hero-panel p,
.public-layout.i86-contrast-safe .public-hero-panel .hero-subtitle,
.public-layout.i86-contrast-safe .public-hero-panel .hindi,
.public-layout.i86-contrast-safe .luxury-journey-card p,
.public-layout.i86-contrast-safe .luxury-journey-card small {
  color: var(--i86-copy) !important;
  font-weight: 760;
}
.public-layout.i86-contrast-safe .public-hero-panel .eyebrow,
.public-layout.i86-contrast-safe .luxury-journey-card .eyebrow,
.public-layout.i86-contrast-safe .premium-search-field label {
  color: #8a2d10 !important;
  font-weight: 950;
}
.public-layout.i86-contrast-safe .spiritual-hero-cues span,
.public-layout.i86-contrast-safe .premium-trust-strip span,
.public-layout.i86-contrast-safe .home-chip-row button {
  background: #fffaf0 !important;
  color: #361207 !important;
  border: 1px solid rgba(95,24,12,.18) !important;
  box-shadow: 0 10px 24px rgba(45,17,7,.09) !important;
}
.public-layout.i86-contrast-safe .premium-trip-search,
.public-layout.i86-contrast-safe .luxury-booking-search {
  background: linear-gradient(135deg, #fffdf7, #fff1dc) !important;
  border: 1px solid rgba(95,24,12,.18) !important;
  color: var(--i86-ink) !important;
}
.public-layout.i86-contrast-safe .premium-search-field {
  background: #fffaf0 !important;
  border: 1px solid rgba(95,24,12,.18) !important;
}
.public-layout.i86-contrast-safe input,
.public-layout.i86-contrast-safe select,
.public-layout.i86-contrast-safe textarea {
  color: #241006 !important;
  background-color: #fffef8 !important;
}
.public-layout.i86-contrast-safe .metric,
.public-layout.i86-contrast-safe .marketplace-summary .metric,
.public-layout.i86-contrast-safe .premium-route-ticket,
.public-layout.i86-contrast-safe .journey-preview-stack article {
  background: linear-gradient(135deg, #fffdf7, #ffe8c6) !important;
  border: 1px solid rgba(95,24,12,.18) !important;
  color: var(--i86-ink) !important;
}
.public-layout.i86-contrast-safe .metric strong,
.public-layout.i86-contrast-safe .metric span,
.public-layout.i86-contrast-safe .premium-route-ticket strong,
.public-layout.i86-contrast-safe .premium-route-ticket span,
.public-layout.i86-contrast-safe .premium-route-ticket small,
.public-layout.i86-contrast-safe .journey-preview-stack article strong,
.public-layout.i86-contrast-safe .journey-preview-stack article small {
  color: var(--i86-ink) !important;
}
.public-layout.i86-contrast-safe .journey-preview-stack article > span {
  background: #f59e0b !important;
  color: #1f0b04 !important;
}
.public-layout.i86-contrast-safe .section-head p,
.public-layout.i86-contrast-safe .admin-card p,
.public-layout.i86-contrast-safe .experience-card p,
.public-layout.i86-contrast-safe .lane-card p,
.public-layout.i86-contrast-safe .package-card p,
.public-layout.i86-contrast-safe .package-card small,
.public-layout.i86-contrast-safe .marketplace-filter-panel p,
.public-layout.i86-contrast-safe .marketplace-facets p,
.public-layout.i86-contrast-safe .muted {
  color: var(--i86-muted) !important;
}
.public-layout.i86-contrast-safe .admin-card h3,
.public-layout.i86-contrast-safe .experience-card h3,
.public-layout.i86-contrast-safe .lane-card h3,
.public-layout.i86-contrast-safe .package-card h3,
.public-layout.i86-contrast-safe .marketplace-filter-panel h3,
.public-layout.i86-contrast-safe .marketplace-facets h3,
.public-layout.i86-contrast-safe strong {
  color: var(--i86-ink) !important;
}
.public-layout.i86-contrast-safe .image-band-section .admin-card,
.public-layout.i86-contrast-safe .image-band-section .experience-card,
.public-layout.i86-contrast-safe .image-band-section .lane-card,
.public-layout.i86-contrast-safe .image-band-section .package-card {
  background: rgba(255,250,240,.96) !important;
  color: var(--i86-ink) !important;
}
.public-layout.i86-contrast-safe .public-photo-card figcaption,
.public-layout.i86-contrast-safe .public-photo-card figcaption strong,
.public-layout.i86-contrast-safe .public-photo-card figcaption span {
  text-shadow: none;
}
