html[data-theme="dark"] {
  color-scheme: dark;
  --royal: #6DA2FF;
  --royal-deep: #DCE9FF;
  --gold: #D8B85A;
  --white: #111A26;
  --paper: #070B12;
  --ink: #F7F3EA;
  --ink-soft: #B9C2D0;
  --line: rgba(255,255,255,0.13);
  --soft: #141C27;
  --green: #50C878;
  --dark-panel: #111A26;
  --dark-panel-2: #162233;
  --dark-deep: #0A1422;
  --dark-muted: #93A1B3;
  --dark-on-accent: #071222;
}

body {
  transition: background .25s var(--ease), color .25s var(--ease);
}

.sr-only {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0,0,0,0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

.site-search {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 10px;
  width: min(620px, 100%);
  margin: -30px 0 30px;
}

.site-search input {
  min-height: 48px;
  width: 100%;
  border: 1px solid rgba(7,42,97,0.16);
  border-radius: 8px;
  background: rgba(255,255,255,0.86);
  color: var(--ink);
  padding: 12px 16px;
  font-family: inherit;
  font-size: 14.5px;
  outline: none;
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.9), 0 18px 42px -34px rgba(7,42,97,0.42);
  transition: border-color .25s var(--ease), box-shadow .25s var(--ease);
}

.site-search input:focus {
  border-color: rgba(13,71,161,0.48);
  box-shadow: 0 0 0 4px rgba(13,71,161,0.10), inset 0 1px 0 rgba(255,255,255,0.9);
}

.site-search button {
  min-height: 48px;
  border: 1px solid rgba(201,166,70,0.64);
  border-radius: 8px;
  background: linear-gradient(135deg, #F2D77A, #D9BB62);
  color: #071222;
  padding: 0 22px;
  font-family: inherit;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: .04em;
  text-transform: uppercase;
  cursor: pointer;
  box-shadow: 0 18px 38px -26px rgba(201,166,70,0.82), inset 0 1px 0 rgba(255,255,255,0.42);
  transition: transform .25s var(--ease), box-shadow .25s var(--ease);
}

.site-search button:hover {
  transform: translateY(-2px);
  box-shadow: 0 22px 44px -26px rgba(201,166,70,0.95), inset 0 1px 0 rgba(255,255,255,0.48);
}

.search-empty {
  margin: -16px 0 24px;
  color: var(--ink-soft);
  font-size: 14px;
}

.search-hidden {
  display: none !important;
}

.search-hit {
  box-shadow: 0 0 0 4px rgba(201,166,70,0.28), 0 30px 70px -34px rgba(7,42,97,0.42) !important;
}

html[data-theme="dark"] .site-search input {
  background: rgba(17,26,38,0.88);
  border-color: rgba(255,255,255,0.14);
  color: var(--ink);
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.08), 0 18px 42px -34px rgba(0,0,0,0.7);
}

.visa-selector .site-search {
  margin: 2px 0 22px;
}

.visa-selector .search-empty {
  margin: -10px 0 20px;
}

@media (max-width: 620px) {
  .site-search {
    grid-template-columns: 1fr;
    margin-top: -12px;
  }

  .visa-selector .site-search {
    margin: 6px 0 20px;
  }

  .site-search button {
    width: 100%;
  }
}

#send-message {
  scroll-margin-top: 120px;
}

.logo,
.topnav-logo,
.sb-logo,
.login-brand {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  line-height: 1;
}

.site-logo-img {
  width: 76px;
  height: 76px;
  object-fit: contain;
  border-radius: 0;
  flex: none;
}

.site-logo-text {
  display: inline-flex;
  align-items: baseline;
  flex-wrap: wrap;
}

.logo .site-logo-text,
.login-brand .site-logo-text {
  color: var(--royal-deep);
}

.topnav-logo .site-logo-text {
  color: var(--ink);
}

.sb-logo .site-logo-text {
  color: #fff;
}

.logo .site-logo-accent,
.login-brand .site-logo-accent,
.topnav-logo .site-logo-accent,
.sb-logo .site-logo-accent {
  color: var(--gold);
}

.footer-logo .site-logo-img {
  width: 92px;
  height: 92px;
}

footer .logo .site-logo-text {
  color: #fff;
}

.footer-mini-brand {
  max-width: 1240px;
  margin: 0 auto 22px;
  padding: 0 32px;
  display: flex;
  justify-content: center;
}

.login-brand {
  margin-bottom: 18px;
  font-family: 'League Spartan', sans-serif;
  font-size: 22px;
  font-weight: 700;
  color: var(--royal-deep);
}

.login-brand span span,
.topnav-logo span span,
.sb-logo span span {
  color: var(--gold);
}

.sb-logo {
  margin-bottom: 8px;
}

.sb-logo .site-logo-img {
  width: 54px;
  height: 54px;
}

header nav {
  gap: 24px;
}

header .logo {
  min-width: max-content;
}

header .logo .site-logo-text {
  font-size: 21px;
  line-height: 1.05;
  max-width: 170px;
}

header .logo-tagline {
  margin-left: 88px;
}

header .nav-links {
  gap: clamp(10px, 1.25vw, 18px);
}

header .nav-links a {
  white-space: nowrap;
}

.topnav-logo .site-logo-img {
  width: 60px;
  height: 60px;
}

.login-brand .site-logo-img {
  width: 72px;
  height: 72px;
}

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

.theme-toggle {
  width: 42px;
  height: 42px;
  border: 1px solid var(--royal-deep);
  border-radius: 50%;
  background: transparent;
  color: var(--royal-deep);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: all .25s var(--ease);
  flex: none;
}

.nav-links .nav-whatsapp {
  color: #128C4A;
  font-weight: 600;
}

html[data-theme="dark"] .nav-links .nav-whatsapp {
  color: #52D273;
}

.theme-toggle:hover {
  background: var(--gold);
  border-color: var(--gold);
  color: #071222;
}

.theme-mark {
  width: 17px;
  height: 17px;
  border: 2px solid currentColor;
  border-radius: 50%;
  display: block;
  box-shadow: inset -5px -3px 0 transparent;
  transition: all .25s var(--ease);
}

html[data-theme="dark"] .theme-mark {
  background: currentColor;
  box-shadow: inset -6px -4px 0 var(--paper);
}

html[data-theme="dark"] header {
  background: rgba(7,11,18,0.92);
}

html[data-theme="dark"] header.scrolled {
  background: rgba(7,11,18,0.9);
}

html[data-theme="dark"] header.scrolled .logo,
html[data-theme="dark"] header.scrolled .nav-links a,
html[data-theme="dark"] header.scrolled .logo-tagline {
  color: var(--ink);
}

header:not(.scrolled) .theme-toggle {
  border-color: currentColor;
}

#header:not(.scrolled) .theme-toggle {
  color: var(--royal-deep);
  background: transparent;
}

#header.scrolled .theme-toggle {
  color: var(--royal-deep);
}

#header .nav-actions .nav-whatsapp {
  border-color: #1FAA59;
  color: #1FAA59;
}

#header .nav-actions .nav-whatsapp:hover {
  background: #1FAA59;
  border-color: #1FAA59;
  color: #fff;
}

html[data-theme="dark"] .search-bar,
html[data-theme="dark"] .pkg-card,
html[data-theme="dark"] .testi-card,
html[data-theme="dark"] .checker-shell,
html[data-theme="dark"] .booking-card,
html[data-theme="dark"] .route-card,
html[data-theme="dark"] .service-card,
html[data-theme="dark"] .note-card,
html[data-theme="dark"] .country-card,
html[data-theme="dark"] .process-step,
html[data-theme="dark"] .faq-item,
html[data-theme="dark"] .apply-form,
html[data-theme="dark"] .qstat,
html[data-theme="dark"] .quick-card,
html[data-theme="dark"] .itinerary-day,
html[data-theme="dark"] .side-card,
html[data-theme="dark"] .related-card,
html[data-theme="dark"] .qc-card,
html[data-theme="dark"] .contact-form-card,
html[data-theme="dark"] .office-card,
html[data-theme="dark"] .branch-card,
html[data-theme="dark"] .package-card,
html[data-theme="dark"] .info-card,
html[data-theme="dark"] .visa-panel,
html[data-theme="dark"] .timeline-step,
html[data-theme="dark"] .enquiry-form,
html[data-theme="dark"] .glass-stat,
html[data-theme="dark"] .doc,
html[data-theme="dark"] .hero-card,
html[data-theme="dark"] .highlight-item,
html[data-theme="dark"] .sidebar-card,
html[data-theme="dark"] .fee-table,
html[data-theme="dark"] .login-card,
html[data-theme="dark"] .modal,
html[data-theme="dark"] .card,
html[data-theme="dark"] .search-input,
html[data-theme="dark"] .hotel-card {
  background: var(--white);
  border-color: var(--line);
}

html[data-theme="dark"] .visa-section {
  background: var(--paper);
  border-color: var(--line);
}

html[data-theme="dark"] input,
html[data-theme="dark"] select,
html[data-theme="dark"] textarea {
  border-color: var(--line);
}

html[data-theme="dark"] input,
html[data-theme="dark"] select,
html[data-theme="dark"] textarea,
html[data-theme="dark"] .date-picker-toggle,
html[data-theme="dark"] .date-picker-popover,
html[data-theme="dark"] .date-picker-nav button,
html[data-theme="dark"] .gf-select,
html[data-theme="dark"] .gf-field,
html[data-theme="dark"] .flight-option,
html[data-theme="dark"] .empty-results,
html[data-theme="dark"] .tab:not(.active),
html[data-theme="dark"] .package-tab,
html[data-theme="dark"] .package-mini span,
html[data-theme="dark"] .source-links a,
html[data-theme="dark"] .faq-q,
html[data-theme="dark"] .btn-secondary,
html[data-theme="dark"] .lead-status-select {
  background: #fff;
  color: #202124;
}

html[data-theme="dark"] input::placeholder,
html[data-theme="dark"] textarea::placeholder {
  color: #6f7785;
  opacity: 1;
}

html[data-theme="dark"] option {
  background: #fff;
  color: #202124;
}

html[data-theme="dark"] .search-field select,
html[data-theme="dark"] .search-field input,
html[data-theme="dark"] .gf-select,
html[data-theme="dark"] .gf-field input,
html[data-theme="dark"] .gf-field select,
html[data-theme="dark"] .gf-field textarea,
html[data-theme="dark"] .gf-field .date-picker-toggle,
html[data-theme="dark"] .date-picker-toggle,
html[data-theme="dark"] .date-picker-title,
html[data-theme="dark"] .date-day,
html[data-theme="dark"] .airport-code,
html[data-theme="dark"] .flight-facts strong,
html[data-theme="dark"] .search-input input,
html[data-theme="dark"] .form-row input,
html[data-theme="dark"] .form-row select,
html[data-theme="dark"] .form-row textarea,
html[data-theme="dark"] .lead-status-select {
  color: #202124;
}

html[data-theme="dark"] .gf-field label,
html[data-theme="dark"] .date-picker-toggle .date-placeholder,
html[data-theme="dark"] .date-weekdays span,
html[data-theme="dark"] .time-small,
html[data-theme="dark"] .flight-facts span,
html[data-theme="dark"] .empty-results {
  color: #5f6368;
}

html[data-theme="dark"] .form-row label {
  color: var(--ink-soft);
}

html[data-theme="dark"] .tab.active,
html[data-theme="dark"] .package-tab.active,
html[data-theme="dark"] .chip.active {
  background: #DCE9FF;
  border-color: #DCE9FF;
  color: #071222;
}

html[data-theme="dark"] .btn-primary,
html[data-theme="dark"] .search-submit,
html[data-theme="dark"] .nav-cta:hover {
  color: #071222;
}

html[data-theme="dark"] .btn-primary:hover {
  background: var(--gold);
  border-color: var(--gold);
  color: #071222;
}

html[data-theme="dark"] .date-day.is-selected {
  background: #1A73E8;
  color: #fff;
}

html[data-theme="dark"] .date-day.is-muted,
html[data-theme="dark"] .date-day:disabled {
  color: #B4BAC3;
}

html[data-theme="dark"] .airline,
html[data-theme="dark"] .checker-meta strong {
  color: #202124;
}

html[data-theme="dark"] .pkg-tag,
html[data-theme="dark"] .package-img span,
html[data-theme="dark"] .num,
html[data-theme="dark"] .info-list b,
html[data-theme="dark"] .dest-nav,
html[data-theme="dark"] .pkg-nav,
html[data-theme="dark"] .package-nav,
html[data-theme="dark"] .visa-nav,
html[data-theme="dark"] .swap-btn::before,
html[data-theme="dark"] .map-box .map-fake {
  color: #071222;
}

html[data-theme="dark"] .dest-nav,
html[data-theme="dark"] .pkg-nav,
html[data-theme="dark"] .package-nav,
html[data-theme="dark"] .visa-nav,
html[data-theme="dark"] .swap-btn,
html[data-theme="dark"] .map-box .map-fake {
  background: #fff;
}

html[data-theme="dark"] .apply-band,
html[data-theme="dark"] .enquiry-card,
html[data-theme="dark"] .note-card {
  background: #0A1422;
  color: #fff;
}

html[data-theme="dark"] .apply-form,
html[data-theme="dark"] .enquiry-form {
  background: rgba(255,255,255,0.08);
  border-color: rgba(255,255,255,0.16);
}

html[data-theme="dark"] .apply-form input,
html[data-theme="dark"] .apply-form select,
html[data-theme="dark"] .apply-form textarea,
html[data-theme="dark"] .enquiry-form input,
html[data-theme="dark"] .enquiry-form select,
html[data-theme="dark"] .enquiry-form textarea {
  background: rgba(255,255,255,0.09);
  border-color: rgba(255,255,255,0.2);
  color: #fff;
}

html[data-theme="dark"] .apply-form input::placeholder,
html[data-theme="dark"] .apply-form textarea::placeholder,
html[data-theme="dark"] .enquiry-form input::placeholder,
html[data-theme="dark"] .enquiry-form textarea::placeholder {
  color: rgba(255,255,255,0.54);
}

html[data-theme="dark"] .apply-form label,
html[data-theme="dark"] .enquiry-form label {
  color: rgba(255,255,255,0.72);
}

html[data-theme="dark"] .soc {
  background: #fff;
  color: #000;
}

/* Final dark-theme harmonisation for page sections, cards, tabs, and form controls. */
html[data-theme="dark"] .why,
html[data-theme="dark"] footer,
html[data-theme="dark"] .hero-panel,
html[data-theme="dark"] .apply-band,
html[data-theme="dark"] .enquiry-card,
html[data-theme="dark"] .note-card,
html[data-theme="dark"] .sidebar,
html[data-theme="dark"] .login-screen {
  background: var(--dark-deep);
  color: #fff;
}

html[data-theme="dark"] .why h2,
html[data-theme="dark"] .why-item h4,
html[data-theme="dark"] .note-card h2,
html[data-theme="dark"] .apply-band h2,
html[data-theme="dark"] .enquiry-copy h2 {
  color: #fff;
}

html[data-theme="dark"] .why .section-eyebrow {
  color: rgba(255,255,255,0.78) !important;
}

html[data-theme="dark"] .why .section-eyebrow .dot,
html[data-theme="dark"] .why-item .idx,
html[data-theme="dark"] .why .stat .num {
  color: #F1D681;
}

html[data-theme="dark"] .why .stat .num {
  background: transparent;
  display: block;
}

html[data-theme="dark"] .why .section-eyebrow .dot {
  background: #F1D681;
}

html[data-theme="dark"] .why p,
html[data-theme="dark"] .why-item p,
html[data-theme="dark"] .stat .lbl,
html[data-theme="dark"] .note-card p,
html[data-theme="dark"] .apply-band p,
html[data-theme="dark"] .enquiry-copy p,
html[data-theme="dark"] footer p,
html[data-theme="dark"] footer a,
html[data-theme="dark"] .foot-col a,
html[data-theme="dark"] .foot-bottom {
  color: rgba(255,255,255,0.68);
}

html[data-theme="dark"] .search-bar,
html[data-theme="dark"] .pkg-card,
html[data-theme="dark"] .testi-card,
html[data-theme="dark"] .checker-shell,
html[data-theme="dark"] .booking-card,
html[data-theme="dark"] .route-card,
html[data-theme="dark"] .service-card,
html[data-theme="dark"] .country-card,
html[data-theme="dark"] .process-step,
html[data-theme="dark"] .faq-item,
html[data-theme="dark"] .qstat,
html[data-theme="dark"] .quick-card,
html[data-theme="dark"] .itinerary-day,
html[data-theme="dark"] .side-card,
html[data-theme="dark"] .related-card,
html[data-theme="dark"] .qc-card,
html[data-theme="dark"] .contact-form-card,
html[data-theme="dark"] .office-card,
html[data-theme="dark"] .branch-card,
html[data-theme="dark"] .package-card,
html[data-theme="dark"] .info-card,
html[data-theme="dark"] .visa-panel,
html[data-theme="dark"] .timeline-step,
html[data-theme="dark"] .glass-stat,
html[data-theme="dark"] .doc,
html[data-theme="dark"] .hero-card,
html[data-theme="dark"] .highlight-item,
html[data-theme="dark"] .sidebar-card,
html[data-theme="dark"] .fee-table,
html[data-theme="dark"] .login-card,
html[data-theme="dark"] .modal,
html[data-theme="dark"] .card,
html[data-theme="dark"] .search-input,
html[data-theme="dark"] .flight-option,
html[data-theme="dark"] .empty-results {
  background: var(--dark-panel);
  border-color: var(--line);
  color: var(--ink);
}

html[data-theme="dark"] input,
html[data-theme="dark"] select,
html[data-theme="dark"] textarea,
html[data-theme="dark"] .date-picker-toggle,
html[data-theme="dark"] .date-picker-popover,
html[data-theme="dark"] .date-picker-nav button,
html[data-theme="dark"] .gf-select,
html[data-theme="dark"] .gf-field,
html[data-theme="dark"] .tab:not(.active),
html[data-theme="dark"] .checker-tab:not(.active),
html[data-theme="dark"] .package-tab:not(.active),
html[data-theme="dark"] .chip:not(.active),
html[data-theme="dark"] .package-mini span,
html[data-theme="dark"] .source-links a,
html[data-theme="dark"] .faq-q,
html[data-theme="dark"] .btn-secondary,
html[data-theme="dark"] .lead-status-select {
  background: var(--dark-panel-2);
  border-color: var(--line);
  color: var(--ink);
}

html[data-theme="dark"] input::placeholder,
html[data-theme="dark"] textarea::placeholder,
html[data-theme="dark"] .date-picker-toggle .date-placeholder,
html[data-theme="dark"] .gf-field label,
html[data-theme="dark"] .date-weekdays span,
html[data-theme="dark"] .time-small,
html[data-theme="dark"] .flight-facts span,
html[data-theme="dark"] .empty-results,
html[data-theme="dark"] .form-row label {
  color: var(--dark-muted);
}

html[data-theme="dark"] option {
  background: var(--dark-panel);
  color: var(--ink);
}

html[data-theme="dark"] .tab.active,
html[data-theme="dark"] .checker-tab.active,
html[data-theme="dark"] .package-tab.active,
html[data-theme="dark"] .chip.active,
html[data-theme="dark"] .date-day.is-selected {
  background: var(--gold);
  border-color: var(--gold);
  color: var(--dark-on-accent);
}

html[data-theme="dark"] .btn-primary,
html[data-theme="dark"] .search-submit,
html[data-theme="dark"] .btn-gold {
  background: var(--gold);
  border-color: var(--gold);
  color: var(--dark-on-accent);
}

html[data-theme="dark"] .btn-primary:hover,
html[data-theme="dark"] .search-submit:hover,
html[data-theme="dark"] .btn-gold:hover {
  background: #E4C96D;
  border-color: #E4C96D;
  color: var(--dark-on-accent);
}

html[data-theme="dark"] .btn-dark {
  background: var(--dark-deep);
  color: #fff;
}

html[data-theme="dark"] .date-day,
html[data-theme="dark"] .date-picker-title,
html[data-theme="dark"] .airport-code,
html[data-theme="dark"] .flight-facts strong,
html[data-theme="dark"] .airline,
html[data-theme="dark"] .checker-meta strong,
html[data-theme="dark"] .search-input input,
html[data-theme="dark"] .form-row input,
html[data-theme="dark"] .form-row select,
html[data-theme="dark"] .form-row textarea,
html[data-theme="dark"] .lead-status-select,
html[data-theme="dark"] .highlight-item p,
html[data-theme="dark"] .testi-card p,
html[data-theme="dark"] .glass-block h4 {
  color: var(--ink);
}

html[data-theme="dark"] .dest-nav,
html[data-theme="dark"] .pkg-nav,
html[data-theme="dark"] .package-nav,
html[data-theme="dark"] .visa-nav,
html[data-theme="dark"] .swap-btn,
html[data-theme="dark"] .map-box .map-fake {
  background: var(--dark-panel-2);
  border-color: var(--line);
  color: var(--ink);
}

html[data-theme="dark"] .pkg-tag,
html[data-theme="dark"] .package-img span,
html[data-theme="dark"] .num,
html[data-theme="dark"] .info-list b,
html[data-theme="dark"] .timeline-step .step {
  background: var(--gold);
  color: var(--dark-on-accent);
}

html[data-theme="dark"] .why .stat .num {
  background: transparent;
  color: #F1D681;
  display: block;
}

html[data-theme="dark"] .flight-stats .num,
html[data-theme="dark"] .quick-stats .qstat .num {
  background: transparent;
  color: #fff;
  display: block;
}

html[data-theme="dark"] .req-list li .num {
  background: transparent;
  color: #F1D681;
  display: inline-block;
  width: 26px;
}

html[data-theme="dark"] .vsec h2,
html[data-theme="dark"] .process-step h4 {
  color: var(--ink);
}

html[data-theme="dark"] .vsec > p,
html[data-theme="dark"] .process-step p {
  color: var(--dark-muted) !important;
}

html[data-theme="dark"] .process-step .pn {
  color: #F1D681;
}

html[data-theme="dark"] .visa-panel {
  background: var(--dark-panel);
}

html[data-theme="dark"] .notice {
  background: rgba(216,184,90,0.14);
  color: #F1D681;
}

html[data-theme="dark"] .apply-form,
html[data-theme="dark"] .enquiry-form {
  background: rgba(255,255,255,0.08);
  border-color: rgba(255,255,255,0.16);
}

html[data-theme="dark"] .apply-form input,
html[data-theme="dark"] .apply-form select,
html[data-theme="dark"] .apply-form textarea,
html[data-theme="dark"] .enquiry-form input,
html[data-theme="dark"] .enquiry-form select,
html[data-theme="dark"] .enquiry-form textarea {
  background: rgba(255,255,255,0.09);
  border-color: rgba(255,255,255,0.2);
  color: #fff;
}

html[data-theme="dark"] .apply-form input::placeholder,
html[data-theme="dark"] .apply-form textarea::placeholder,
html[data-theme="dark"] .enquiry-form input::placeholder,
html[data-theme="dark"] .enquiry-form textarea::placeholder {
  color: rgba(255,255,255,0.54);
}

html[data-theme="dark"] .apply-form label,
html[data-theme="dark"] .enquiry-form label {
  color: rgba(255,255,255,0.72);
}

@media (max-width: 760px) {
  .site-logo-img {
    width: 58px;
    height: 58px;
  }

  .footer-logo .site-logo-img {
    width: 72px;
    height: 72px;
  }

  header .logo .site-logo-text {
    font-size: 17px;
    max-width: 130px;
  }

  header .logo-tagline {
    margin-left: 70px;
  }

  .theme-toggle {
    width: 40px;
    height: 40px;
  }
}

/* Dark-mode compatibility fixes for page-specific components. */
html[data-theme="dark"] .package-glass,
html[data-theme="dark"] .access-card,
html[data-theme="dark"] .mini-stat,
html[data-theme="dark"] .panel,
html[data-theme="dark"] .stat-card,
html[data-theme="dark"] .pkg-mgmt-card,
html[data-theme="dark"] .map-frame,
html[data-theme="dark"] .qc-card .ic {
  background: var(--dark-panel);
  border-color: var(--line);
  color: var(--ink);
}

html[data-theme="dark"] .package-glass {
  background: linear-gradient(135deg, rgba(17,26,38,0.94), rgba(22,34,51,0.78));
  box-shadow: 0 34px 80px -42px rgba(0,0,0,0.72), inset 0 1px 0 rgba(255,255,255,0.08);
}

html[data-theme="dark"] .package-glass::before,
html[data-theme="dark"] .office-card::before,
html[data-theme="dark"] .apply-band::before,
html[data-theme="dark"] .enquiry-card::before,
html[data-theme="dark"] .note-card::before {
  opacity: 0.78;
}

html[data-theme="dark"] .glass-block,
html[data-theme="dark"] .glass-footer,
html[data-theme="dark"] .package-meta,
html[data-theme="dark"] .pkg-meta,
html[data-theme="dark"] .visa-meta,
html[data-theme="dark"] .source-row,
html[data-theme="dark"] .req-list li,
html[data-theme="dark"] .incl-col li,
html[data-theme="dark"] .itin-item,
html[data-theme="dark"] .hours-row,
html[data-theme="dark"] .check-list,
html[data-theme="dark"] .login-help {
  border-color: var(--line);
}

html[data-theme="dark"] .map-frame,
html[data-theme="dark"] .map-box .map-fake {
  background: linear-gradient(135deg, #111A26, #162233);
  color: var(--dark-muted);
}

html[data-theme="dark"] .qc-card .ic::before {
  background: var(--gold);
}

html[data-theme="dark"] .section-head h2,
html[data-theme="dark"] .section-head h3,
html[data-theme="dark"] .pkg-section h2,
html[data-theme="dark"] .contact-form-card h2,
html[data-theme="dark"] .branch-card h4,
html[data-theme="dark"] .quick-card strong,
html[data-theme="dark"] .info-card h3,
html[data-theme="dark"] .visa-panel h3,
html[data-theme="dark"] .timeline-step h3,
html[data-theme="dark"] .faq-q,
html[data-theme="dark"] .pkg-body h3,
html[data-theme="dark"] .package-body h3,
html[data-theme="dark"] .related-card .rb h4,
html[data-theme="dark"] .pmc-body h4,
html[data-theme="dark"] .access-card h3,
html[data-theme="dark"] .check-item,
html[data-theme="dark"] .source-row .name,
html[data-theme="dark"] .source-row .pct,
html[data-theme="dark"] .cell-main,
html[data-theme="dark"] .stat-num,
html[data-theme="dark"] .mini-stat strong,
html[data-theme="dark"] .cc-name,
html[data-theme="dark"] .package-price .amt,
html[data-theme="dark"] .pkg-price .amt,
html[data-theme="dark"] .glass-stat strong,
html[data-theme="dark"] .glass-price strong,
html[data-theme="dark"] .pmc-meta .amt,
html[data-theme="dark"] .fee-table .amt,
html[data-theme="dark"] .crumb .cur {
  color: var(--ink);
}

html[data-theme="dark"] .section-head p,
html[data-theme="dark"] .c-hero p,
html[data-theme="dark"] .pkg-section p,
html[data-theme="dark"] .contact-form-card > p,
html[data-theme="dark"] .qc-card p,
html[data-theme="dark"] .branch-card p,
html[data-theme="dark"] .quick-card p,
html[data-theme="dark"] .package-desc,
html[data-theme="dark"] .pkg-desc,
html[data-theme="dark"] .package-loc,
html[data-theme="dark"] .pkg-loc,
html[data-theme="dark"] .package-price .from,
html[data-theme="dark"] .pkg-price .from,
html[data-theme="dark"] .glass-summary,
html[data-theme="dark"] .glass-stat span,
html[data-theme="dark"] .glass-list li,
html[data-theme="dark"] .glass-price span,
html[data-theme="dark"] .info-list span,
html[data-theme="dark"] .visa-panel p,
html[data-theme="dark"] .doc span,
html[data-theme="dark"] .timeline-step p,
html[data-theme="dark"] .faq-a p,
html[data-theme="dark"] .req-list li,
html[data-theme="dark"] .incl-col li,
html[data-theme="dark"] .itin-day .lbl,
html[data-theme="dark"] .itin-item p,
html[data-theme="dark"] .crumb,
html[data-theme="dark"] .crumb a,
html[data-theme="dark"] .cell-sub,
html[data-theme="dark"] .pmc-meta .leads,
html[data-theme="dark"] .access-card .role-note,
html[data-theme="dark"] .empty-state,
html[data-theme="dark"] .legend-item,
html[data-theme="dark"] .bar-col .v,
html[data-theme="dark"] .bar-col .lbl,
html[data-theme="dark"] .mini-stat span,
html[data-theme="dark"] .stat-label {
  color: var(--dark-muted);
}

html[data-theme="dark"] .fee-table th,
html[data-theme="dark"] thead th {
  background: var(--dark-panel-2);
  border-color: var(--line);
  color: var(--dark-muted);
}

html[data-theme="dark"] .fee-table td,
html[data-theme="dark"] tbody td {
  border-color: var(--line);
  color: var(--ink);
}

html[data-theme="dark"] tbody tr:hover,
html[data-theme="dark"] .topnav-link:hover,
html[data-theme="dark"] .gf-select:hover,
html[data-theme="dark"] .checker-tab:hover,
html[data-theme="dark"] .date-day:hover {
  background: rgba(109,162,255,0.12);
}

html[data-theme="dark"] .source-track,
html[data-theme="dark"] .image-preview,
html[data-theme="dark"] .thumb-cell {
  background-color: var(--dark-panel-2);
  border-color: var(--line);
}

html[data-theme="dark"] .checker-tabs {
  background: transparent;
}

html[data-theme="dark"] .icon-btn,
html[data-theme="dark"] .topnav-theme-btn,
html[data-theme="dark"] .btn,
html[data-theme="dark"] .btn-ghost {
  background: var(--dark-panel-2);
  border-color: var(--line);
  color: var(--ink);
}

html[data-theme="dark"] .icon-btn:hover,
html[data-theme="dark"] .topnav-theme-btn:hover,
html[data-theme="dark"] .btn:hover {
  border-color: var(--royal);
  color: var(--royal);
}

html[data-theme="dark"] .btn.btn-primary {
  background: var(--gold);
  border-color: var(--gold);
  color: var(--dark-on-accent);
}

html[data-theme="dark"] .btn.btn-primary:hover {
  background: #E4C96D;
  border-color: #E4C96D;
  color: var(--dark-on-accent);
}

html[data-theme="dark"] .badge,
html[data-theme="dark"] .pill.new {
  background: rgba(109,162,255,0.16);
  color: #9FC2FF;
}

html[data-theme="dark"] .price,
html[data-theme="dark"] .small-link,
html[data-theme="dark"] .package-link,
html[data-theme="dark"] .pkg-link,
html[data-theme="dark"] .qc-card a.lnk,
html[data-theme="dark"] .source-links a,
html[data-theme="dark"] .panel-head a,
html[data-theme="dark"] .pmc-body .loc,
html[data-theme="dark"] .glass-kicker,
html[data-theme="dark"] .section-kicker,
html[data-theme="dark"] .section-eyebrow,
html[data-theme="dark"] .eyebrow,
html[data-theme="dark"] .itin-day,
html[data-theme="dark"] .crumb a:hover {
  color: var(--royal);
}

html[data-theme="dark"] .form-status {
  background: rgba(109,162,255,0.14);
  color: #BFD6FF;
}

html[data-theme="dark"] .form-status.error,
html[data-theme="dark"] .login-error {
  background: rgba(224,128,128,0.14);
  color: #F0A6A6;
}

html[data-theme="dark"] .form-status.success {
  background: rgba(82,210,115,0.14);
  color: #8BE6A3;
}

html[data-theme="dark"] .visa-apply {
  background: rgba(17,26,38,0.78);
  border-color: rgba(255,255,255,0.18);
  color: var(--ink);
}

html[data-theme="dark"] .country-card.active .visa-apply,
html[data-theme="dark"] .country-card:hover .visa-apply {
  background: var(--gold);
  border-color: var(--gold);
  color: var(--dark-on-accent);
}

html[data-theme="dark"] .modal-overlay {
  background: rgba(0,0,0,0.68);
}

html[data-theme="dark"] .modal,
html[data-theme="dark"] .login-card {
  box-shadow: 0 30px 80px -40px rgba(0,0,0,0.85);
}

/* Global rounded UI pass. Loaded after page styles so cards and controls feel consistent everywhere. */
:root {
  --radius-card: 20px;
  --radius-panel: 24px;
  --radius-control: 14px;
  --radius-button: 999px;
}

.search-bar,
.booking-card,
.checker-shell,
.route-card,
.service-card,
.note-card,
.dest-card,
.pkg-card,
.testi-card,
.country-card,
.process-step,
.fee-table,
.apply-band,
.apply-form,
.visa-card-img,
.visa-panel,
.package-card,
.info-card,
.timeline-step,
.enquiry-card,
.enquiry-form,
.quick-card,
.qc-card,
.contact-form-card,
.office-card,
.branch-card,
.hero-card,
.highlight-item,
.sidebar-card,
.side-card,
.related-card,
.itinerary-day,
.doc,
.glass-stat,
.qstat,
.package-glass,
.access-card,
.mini-stat,
.panel,
.stat-card,
.pkg-mgmt-card,
.login-card,
.modal,
.card,
.hotel-card,
.flight-option,
.empty-results,
.date-picker-popover,
.map-frame,
.image-preview,
.thumb-cell {
  border-radius: var(--radius-card) !important;
}

.hero-panel,
.gallery-grid,
.package-img,
.pkg-img,
.visa-art,
.map-box .map-fake {
  border-radius: var(--radius-panel) !important;
  overflow: hidden;
}

.gallery-grid::after,
.country-card::before,
.country-card::after {
  border-radius: inherit !important;
}

button,
.btn,
.btn-primary,
.btn-secondary,
.btn-dark,
.btn-gold,
.nav-cta,
.wa-btn,
.search-submit,
.tab,
.checker-tab,
.package-tab,
.chip,
.source-links a,
.small-link,
.package-link,
.pkg-link,
.visa-apply,
.form-status,
.badge,
.pill,
.pkg-tag,
.package-img span,
.package-mini span {
  border-radius: var(--radius-button) !important;
}

input,
select,
textarea,
.search-input,
.gf-field,
.gf-select,
.date-picker-toggle,
.date-picker-nav button,
.date-day,
.form-row input,
.form-row select,
.form-row textarea,
.lead-status-select {
  border-radius: var(--radius-control) !important;
}

.country-card {
  border-radius: var(--radius-card) !important;
}

.country-card .visa-photo {
  border-radius: inherit !important;
}

/* Premium glass finish across every page. */
:root {
  --glass-bg: rgba(255,255,255,0.72);
  --glass-bg-strong: rgba(255,255,255,0.86);
  --glass-border: rgba(255,255,255,0.74);
  --glass-line: rgba(7,42,97,0.13);
  --glass-shadow: 0 30px 80px -42px rgba(7,42,97,0.42), 0 14px 34px -26px rgba(17,21,28,0.24), inset 0 1px 0 rgba(255,255,255,0.82);
  --glass-shadow-hover: 0 42px 95px -44px rgba(7,42,97,0.52), 0 20px 46px -30px rgba(17,21,28,0.32), inset 0 1px 0 rgba(255,255,255,0.92);
  --premium-button: linear-gradient(135deg, #0D47A1 0%, #1769D5 58%, #C9A646 140%);
  --premium-button-hover: linear-gradient(135deg, #072A61 0%, #0D47A1 54%, #D7B85A 140%);
}

body {
  background:
    linear-gradient(135deg, rgba(255,255,255,0.56), rgba(246,245,242,0.92) 46%, rgba(236,242,251,0.9)),
    var(--paper);
}

header,
header.scrolled,
.topnav {
  background: rgba(255,255,255,0.68) !important;
  border-bottom: 1px solid rgba(255,255,255,0.62) !important;
  box-shadow: 0 18px 48px -38px rgba(7,42,97,0.38);
  backdrop-filter: blur(22px) saturate(1.22);
  -webkit-backdrop-filter: blur(22px) saturate(1.22);
}

.search-bar,
.booking-card,
.checker-shell,
.route-card,
.service-card,
.note-card,
.pkg-card,
.testi-card,
.process-step,
.fee-table,
.apply-form,
.visa-panel,
.package-card,
.info-card,
.timeline-step,
.enquiry-form,
.quick-card,
.qc-card,
.contact-form-card,
.office-card,
.branch-card,
.hero-card,
.highlight-item,
.sidebar-card,
.side-card,
.related-card,
.itinerary-day,
.doc,
.glass-stat,
.qstat,
.package-glass,
.access-card,
.mini-stat,
.panel,
.stat-card,
.pkg-mgmt-card,
.login-card,
.modal,
.card,
.hotel-card,
.flight-option,
.empty-results,
.date-picker-popover,
.map-frame,
.image-preview,
.thumb-cell {
  background: linear-gradient(145deg, var(--glass-bg-strong), var(--glass-bg)) !important;
  border: 1px solid var(--glass-border) !important;
  box-shadow: var(--glass-shadow) !important;
  backdrop-filter: blur(18px) saturate(1.18);
  -webkit-backdrop-filter: blur(18px) saturate(1.18);
}

.pkg-head,
.price-box,
.table-wrap,
.source-track,
.login-help,
.password-line,
.view-toolbar,
.filter-chip-row,
.topbar,
.panel-head,
.source-row,
.hours-row,
.check-list,
.req-list li,
.incl-col li,
.itin-item,
.glass-block,
.glass-footer,
.package-meta,
.pkg-meta,
.visa-meta,
.source-links,
.source-row,
.cell-main,
.pmc-meta,
.modal-head,
.modal-actions {
  border-color: var(--glass-line) !important;
}

.pkg-head,
.table-wrap {
  background: linear-gradient(145deg, rgba(255,255,255,0.20), rgba(255,255,255,0.08)) !important;
  border: 1px solid rgba(255,255,255,0.24) !important;
  box-shadow: var(--glass-shadow) !important;
  backdrop-filter: blur(18px) saturate(1.18);
  -webkit-backdrop-filter: blur(18px) saturate(1.18);
}

.sidebar {
  background: linear-gradient(180deg, rgba(7,42,97,0.92), rgba(7,18,34,0.92)) !important;
  border-right: 1px solid rgba(255,255,255,0.12);
  box-shadow: 18px 0 54px -44px rgba(7,42,97,0.9), inset 1px 0 0 rgba(255,255,255,0.08);
  backdrop-filter: blur(18px) saturate(1.12);
  -webkit-backdrop-filter: blur(18px) saturate(1.12);
}

thead th {
  background: rgba(255,255,255,0.54) !important;
  border-color: var(--glass-line) !important;
}

tbody td {
  border-color: var(--glass-line) !important;
}

.dest-card,
.country-card,
.visa-card-img,
.gallery-grid,
.hero-panel,
.visa-hero-grid,
.apply-band,
.enquiry-card,
.note-card,
.package-img,
.pkg-img,
.visa-art {
  box-shadow: var(--glass-shadow) !important;
}

.route-card,
.service-card,
.pkg-card,
.testi-card,
.package-card,
.quick-card,
.qc-card,
.contact-form-card,
.office-card,
.branch-card,
.sidebar-card,
.side-card,
.related-card,
.timeline-step,
.info-card,
.visa-panel,
.process-step,
.country-card,
.dest-card {
  transition: transform .35s var(--ease), box-shadow .35s var(--ease), border-color .35s var(--ease), background .35s var(--ease);
}

.route-card:hover,
.service-card:hover,
.pkg-card:hover,
.testi-card:hover,
.package-card:hover,
.quick-card:hover,
.qc-card:hover,
.office-card:hover,
.branch-card:hover,
.side-card:hover,
.related-card:hover,
.timeline-step:hover,
.info-card:hover,
.visa-panel:hover,
.process-step:hover,
.country-card:hover,
.dest-card:hover {
  border-color: rgba(201,166,70,0.48) !important;
  box-shadow: var(--glass-shadow-hover) !important;
}

input,
select,
textarea,
.search-input,
.gf-field,
.gf-select,
.date-picker-toggle,
.date-picker-nav button,
.date-day,
.form-row input,
.form-row select,
.form-row textarea,
.lead-status-select {
  background: rgba(255,255,255,0.74) !important;
  border: 1px solid rgba(7,42,97,0.14) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.7);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
}

input:focus,
select:focus,
textarea:focus,
.date-picker-toggle:focus,
.gf-field:focus-within,
.lead-status-select:focus {
  border-color: rgba(13,71,161,0.48) !important;
  box-shadow: 0 0 0 4px rgba(13,71,161,0.10), inset 0 1px 0 rgba(255,255,255,0.75) !important;
}

.btn,
.btn-primary,
.btn-dark,
.btn-gold,
.search-submit,
.nav-cta,
.wa-btn,
.visa-apply,
.checker-form .actions .btn-primary {
  background: var(--premium-button) !important;
  border-color: rgba(255,255,255,0.42) !important;
  color: #fff !important;
  box-shadow: 0 18px 36px -24px rgba(13,71,161,0.9), inset 0 1px 0 rgba(255,255,255,0.28);
}

.btn:hover,
.btn-primary:hover,
.btn-dark:hover,
.btn-gold:hover,
.search-submit:hover,
.nav-cta:hover,
.wa-btn:hover,
.visa-apply:hover,
.checker-form .actions .btn-primary:hover {
  background: var(--premium-button-hover) !important;
  box-shadow: 0 24px 46px -26px rgba(13,71,161,0.95), inset 0 1px 0 rgba(255,255,255,0.34);
}

.btn-secondary,
.tab,
.checker-tab,
.package-tab,
.chip,
.source-links a,
.small-link,
.package-link,
.pkg-link,
.badge,
.pill,
.pkg-tag,
.package-img span,
.package-mini span {
  background: rgba(255,255,255,0.68) !important;
  border-color: rgba(7,42,97,0.13) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.72), 0 12px 26px -22px rgba(7,42,97,0.48);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
}

.tab.active,
.checker-tab.active,
.package-tab.active,
.chip.active,
.date-day.is-selected {
  background: linear-gradient(135deg, rgba(201,166,70,0.96), rgba(244,213,126,0.94)) !important;
  border-color: rgba(201,166,70,0.72) !important;
  color: #071222 !important;
}

.soc,
.theme-toggle,
.dest-nav,
.pkg-nav,
.package-nav,
.visa-nav,
.swap-btn,
.icon-btn,
.topnav-theme-btn {
  background: rgba(255,255,255,0.72) !important;
  border-color: rgba(255,255,255,0.72) !important;
  box-shadow: 0 18px 38px -28px rgba(7,42,97,0.58), inset 0 1px 0 rgba(255,255,255,0.78) !important;
  backdrop-filter: blur(14px) saturate(1.15);
  -webkit-backdrop-filter: blur(14px) saturate(1.15);
}

html[data-theme="dark"] {
  --glass-bg: rgba(17,26,38,0.68);
  --glass-bg-strong: rgba(22,34,51,0.84);
  --glass-border: rgba(255,255,255,0.13);
  --glass-line: rgba(255,255,255,0.13);
  --glass-shadow: 0 34px 86px -44px rgba(0,0,0,0.9), 0 16px 38px -30px rgba(0,0,0,0.72), inset 0 1px 0 rgba(255,255,255,0.08);
  --glass-shadow-hover: 0 44px 100px -46px rgba(0,0,0,0.95), 0 22px 48px -34px rgba(0,0,0,0.82), inset 0 1px 0 rgba(255,255,255,0.12);
  --premium-button: linear-gradient(135deg, #D8B85A 0%, #F0D37A 56%, #6DA2FF 150%);
  --premium-button-hover: linear-gradient(135deg, #E4C96D 0%, #F4DC8B 56%, #8DB8FF 150%);
}

html[data-theme="dark"] body {
  background:
    linear-gradient(135deg, rgba(7,11,18,0.98), rgba(10,20,34,0.98) 52%, rgba(18,28,43,0.96)),
    var(--paper);
}

html[data-theme="dark"] header,
html[data-theme="dark"] header.scrolled,
html[data-theme="dark"] .topnav {
  background: rgba(10,20,34,0.72) !important;
  border-bottom-color: rgba(255,255,255,0.12) !important;
  box-shadow: 0 22px 56px -38px rgba(0,0,0,0.85);
}

html[data-theme="dark"] .sidebar {
  background: linear-gradient(180deg, rgba(10,20,34,0.92), rgba(7,11,18,0.94)) !important;
  border-right-color: rgba(255,255,255,0.12);
  box-shadow: 18px 0 54px -44px rgba(0,0,0,0.9), inset 1px 0 0 rgba(255,255,255,0.08);
}

html[data-theme="dark"] .pkg-head,
html[data-theme="dark"] .table-wrap {
  background: linear-gradient(145deg, rgba(22,34,51,0.72), rgba(17,26,38,0.58)) !important;
  border-color: rgba(255,255,255,0.13) !important;
}

html[data-theme="dark"] thead th {
  background: rgba(22,34,51,0.78) !important;
  border-color: var(--glass-line) !important;
}

html[data-theme="dark"] tbody td {
  border-color: var(--glass-line) !important;
}

html[data-theme="dark"] input,
html[data-theme="dark"] select,
html[data-theme="dark"] textarea,
html[data-theme="dark"] .search-input,
html[data-theme="dark"] .gf-field,
html[data-theme="dark"] .gf-select,
html[data-theme="dark"] .date-picker-toggle,
html[data-theme="dark"] .date-picker-nav button,
html[data-theme="dark"] .date-day,
html[data-theme="dark"] .form-row input,
html[data-theme="dark"] .form-row select,
html[data-theme="dark"] .form-row textarea,
html[data-theme="dark"] .lead-status-select {
  background: rgba(22,34,51,0.78) !important;
  border-color: rgba(255,255,255,0.13) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.08);
}

html[data-theme="dark"] .btn,
html[data-theme="dark"] .btn-primary,
html[data-theme="dark"] .btn-dark,
html[data-theme="dark"] .btn-gold,
html[data-theme="dark"] .search-submit,
html[data-theme="dark"] .nav-cta,
html[data-theme="dark"] .wa-btn,
html[data-theme="dark"] .visa-apply,
html[data-theme="dark"] .checker-form .actions .btn-primary {
  color: #071222 !important;
  box-shadow: 0 18px 40px -26px rgba(216,184,90,0.82), inset 0 1px 0 rgba(255,255,255,0.36);
}

html[data-theme="dark"] .btn-secondary,
html[data-theme="dark"] .tab,
html[data-theme="dark"] .checker-tab,
html[data-theme="dark"] .package-tab,
html[data-theme="dark"] .chip,
html[data-theme="dark"] .source-links a,
html[data-theme="dark"] .small-link,
html[data-theme="dark"] .package-link,
html[data-theme="dark"] .pkg-link,
html[data-theme="dark"] .badge,
html[data-theme="dark"] .pill,
html[data-theme="dark"] .pkg-tag,
html[data-theme="dark"] .package-img span,
html[data-theme="dark"] .package-mini span,
html[data-theme="dark"] .soc,
html[data-theme="dark"] .theme-toggle,
html[data-theme="dark"] .dest-nav,
html[data-theme="dark"] .pkg-nav,
html[data-theme="dark"] .package-nav,
html[data-theme="dark"] .visa-nav,
html[data-theme="dark"] .swap-btn,
html[data-theme="dark"] .icon-btn,
html[data-theme="dark"] .topnav-theme-btn {
  background: rgba(22,34,51,0.74) !important;
  border-color: rgba(255,255,255,0.13) !important;
  color: var(--ink) !important;
  box-shadow: 0 18px 40px -30px rgba(0,0,0,0.82), inset 0 1px 0 rgba(255,255,255,0.09) !important;
}

/* Keep CTA note cards readable after the global glass treatment. */
.note-card {
  background: linear-gradient(135deg, rgba(7,42,97,0.94), rgba(7,18,34,0.92)) !important;
  border-color: rgba(255,255,255,0.16) !important;
  color: #fff !important;
}

.note-card h2 {
  color: #fff !important;
}

.note-card p {
  color: rgba(255,255,255,0.78) !important;
}

.note-card .wa-btn {
  background: linear-gradient(135deg, #1FAA59, #29C56A) !important;
  color: #fff !important;
}

/* Compact premium navbar. */
header,
header.scrolled,
.topnav {
  padding: 7px 0 !important;
  min-height: 72px;
  background:
    linear-gradient(135deg, rgba(9,20,34,0.94), rgba(27,33,43,0.90)) !important;
  border-bottom: 1px solid rgba(201,166,70,0.20) !important;
  box-shadow: 0 18px 46px -34px rgba(0,0,0,0.85), inset 0 1px 0 rgba(255,255,255,0.08) !important;
  backdrop-filter: blur(20px) saturate(1.22);
  -webkit-backdrop-filter: blur(20px) saturate(1.22);
}

header nav,
.topnav {
  align-items: center !important;
  gap: clamp(14px, 2vw, 28px) !important;
}

header .brand {
  gap: 1px !important;
}

header .logo,
.topnav-logo {
  gap: 10px !important;
}

header .logo .site-logo-img,
.topnav-logo .site-logo-img {
  width: 54px !important;
  height: 54px !important;
}

header .logo .site-logo-text,
.topnav-logo .site-logo-text {
  max-width: 190px !important;
  font-size: 19px !important;
  line-height: 1.04 !important;
  color: #F7F3EA !important;
}

header .logo .site-logo-accent,
.topnav-logo .site-logo-accent {
  color: #E8C95F !important;
}

header .logo-tagline {
  margin-left: 64px !important;
  margin-top: 0 !important;
  font-size: 11px !important;
  line-height: 1.1 !important;
  color: rgba(247,243,234,0.66) !important;
}

header .nav-links {
  gap: clamp(12px, 1.45vw, 24px) !important;
  font-size: 13.5px !important;
  font-weight: 600;
}

header .nav-links a,
header.scrolled .nav-links a {
  color: rgba(247,243,234,0.72) !important;
  padding-bottom: 3px !important;
}

header .nav-links a:hover,
header .nav-links a.active,
header.scrolled .nav-links a:hover,
header.scrolled .nav-links a.active {
  color: #F0D37A !important;
}

header .nav-links a::after {
  height: 2px !important;
  background: linear-gradient(90deg, transparent, #E8C95F, transparent) !important;
}

header .nav-actions,
.topnav-actions {
  gap: 10px !important;
}

header .nav-cta,
.topnav-link {
  min-height: 38px !important;
  padding: 9px 20px !important;
  font-size: 13px !important;
  color: #071222 !important;
  background: linear-gradient(135deg, #F2D77A, #D9BB62) !important;
  border: 1px solid rgba(255,255,255,0.38) !important;
  box-shadow: 0 16px 34px -24px rgba(201,166,70,0.8), inset 0 1px 0 rgba(255,255,255,0.42) !important;
}

header .nav-cta:hover,
.topnav-link:hover {
  color: #071222 !important;
  background: linear-gradient(135deg, #F8E39A, #E3C86B) !important;
  transform: translateY(-1px);
}

header .theme-toggle,
.topnav-theme-btn {
  width: 38px !important;
  height: 38px !important;
  color: #fff !important;
  background: rgba(255,255,255,0.08) !important;
  border: 1px solid rgba(255,255,255,0.64) !important;
  box-shadow: 0 14px 30px -22px rgba(0,0,0,0.75), inset 0 1px 0 rgba(255,255,255,0.12) !important;
}

header .theme-toggle:hover,
.topnav-theme-btn:hover {
  color: #071222 !important;
  background: #F0D37A !important;
  border-color: #F0D37A !important;
}

html[data-theme="dark"] header,
html[data-theme="dark"] header.scrolled,
html[data-theme="dark"] .topnav {
  background:
    linear-gradient(135deg, rgba(8,16,28,0.96), rgba(22,29,39,0.92)) !important;
  border-bottom-color: rgba(216,184,90,0.22) !important;
}

@media (max-width: 760px) {
  header,
  header.scrolled,
  .topnav {
    min-height: 64px;
    padding: 6px 0 !important;
  }

  header .logo .site-logo-img,
  .topnav-logo .site-logo-img {
    width: 46px !important;
    height: 46px !important;
  }

  header .logo .site-logo-text,
  .topnav-logo .site-logo-text {
    font-size: 16px !important;
    max-width: 138px !important;
  }

  header .logo-tagline {
    display: none !important;
  }

  header .nav-cta {
    min-height: 36px !important;
    padding: 8px 14px !important;
  }

  header .theme-toggle,
  .topnav-theme-btn {
    width: 36px !important;
    height: 36px !important;
  }
}

/* Navbar brand tidy-up and light-theme correction. */
html:not([data-theme="dark"]) header,
html:not([data-theme="dark"]) header.scrolled,
html:not([data-theme="dark"]) .topnav {
  background:
    linear-gradient(135deg, rgba(255,255,255,0.92), rgba(246,245,242,0.82)) !important;
  border-bottom-color: rgba(7,42,97,0.10) !important;
  box-shadow: 0 16px 42px -34px rgba(7,42,97,0.38), inset 0 1px 0 rgba(255,255,255,0.9) !important;
}

header .logo .site-logo-text,
.topnav-logo .site-logo-text {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  gap: 2px !important;
  white-space: nowrap !important;
}

header .logo .site-logo-accent,
.topnav-logo .site-logo-accent {
  display: block !important;
}

html:not([data-theme="dark"]) header .logo .site-logo-text,
html:not([data-theme="dark"]) .topnav-logo .site-logo-text {
  color: var(--royal-deep) !important;
}

html:not([data-theme="dark"]) header .logo .site-logo-accent,
html:not([data-theme="dark"]) .topnav-logo .site-logo-accent {
  color: var(--gold) !important;
}

html:not([data-theme="dark"]) header .logo-tagline {
  color: rgba(17,21,28,0.62) !important;
}

html:not([data-theme="dark"]) header .nav-links a,
html:not([data-theme="dark"]) header.scrolled .nav-links a {
  color: rgba(17,21,28,0.66) !important;
}

html:not([data-theme="dark"]) header .nav-links a:hover,
html:not([data-theme="dark"]) header .nav-links a.active,
html:not([data-theme="dark"]) header.scrolled .nav-links a:hover,
html:not([data-theme="dark"]) header.scrolled .nav-links a.active {
  color: var(--royal-deep) !important;
}

html:not([data-theme="dark"]) header .theme-toggle,
html:not([data-theme="dark"]) .topnav-theme-btn {
  color: var(--royal-deep) !important;
  background: rgba(255,255,255,0.72) !important;
  border-color: rgba(7,42,97,0.22) !important;
  box-shadow: 0 14px 30px -24px rgba(7,42,97,0.48), inset 0 1px 0 rgba(255,255,255,0.88) !important;
}

html:not([data-theme="dark"]) header .theme-toggle:hover,
html:not([data-theme="dark"]) .topnav-theme-btn:hover {
  color: #071222 !important;
  background: var(--gold) !important;
  border-color: var(--gold) !important;
}

/* Professional home-page logo lockup. */
header .brand {
  display: grid !important;
  grid-template-columns: 58px max-content !important;
  grid-template-rows: auto auto !important;
  column-gap: 12px !important;
  row-gap: 2px !important;
  align-items: center !important;
  flex: 0 0 auto !important;
}

header .brand > .logo {
  display: contents !important;
}

header .brand > .logo .site-logo-img {
  grid-column: 1 !important;
  grid-row: 1 / 3 !important;
  width: 58px !important;
  height: 58px !important;
  align-self: center !important;
}

header .brand > .logo .site-logo-text {
  grid-column: 2 !important;
  grid-row: 1 !important;
  align-self: end !important;
  max-width: none !important;
  font-size: 20px !important;
  line-height: 1.04 !important;
  gap: 3px !important;
}

header .brand > .logo .site-logo-text > .site-logo-accent {
  font-size: 20px !important;
  line-height: 1.04 !important;
}

header .brand > .logo-tagline {
  grid-column: 2 !important;
  grid-row: 2 !important;
  align-self: start !important;
  margin: 0 !important;
  font-size: 12px !important;
  line-height: 1.25 !important;
  letter-spacing: .02em !important;
  max-width: 260px !important;
  white-space: nowrap !important;
}

@media (max-width: 760px) {
  header .brand {
    display: flex !important;
    align-items: center !important;
  }

  header .brand > .logo {
    display: inline-flex !important;
  }
}

/* Visa hero stats should sit directly on the image, without glass/color panels. */
.visa-hero .qstat {
  background: transparent !important;
  border: 0 !important;
  border-top: 2px solid rgba(201,166,70,0.82) !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}

.visa-hero .qstat .num {
  background: transparent !important;
  color: #fff !important;
  text-shadow: 0 3px 14px rgba(0,0,0,0.42);
}

.visa-hero .qstat .lbl {
  color: rgba(255,255,255,0.72) !important;
  text-shadow: 0 2px 10px rgba(0,0,0,0.34);
}

html[data-theme="dark"] .visa-hero .qstat {
  background: transparent !important;
  border-top-color: rgba(216,184,90,0.82) !important;
}

/* Light-theme visa quote section color compatibility. */
html:not([data-theme="dark"]) .apply-band {
  background:
    linear-gradient(135deg, rgba(255,255,255,0.92), rgba(246,245,242,0.86)) !important;
  border: 1px solid rgba(7,42,97,0.12) !important;
  color: var(--ink) !important;
  box-shadow: 0 30px 80px -46px rgba(7,42,97,0.34), inset 0 1px 0 rgba(255,255,255,0.94) !important;
}

html:not([data-theme="dark"]) .apply-band::before {
  background: radial-gradient(circle, rgba(201,166,70,0.16), transparent 70%) !important;
}

html:not([data-theme="dark"]) .apply-band h2 {
  color: var(--royal-deep) !important;
}

html:not([data-theme="dark"]) .apply-band p {
  color: rgba(17,21,28,0.66) !important;
}

html:not([data-theme="dark"]) .apply-form {
  background: rgba(255,255,255,0.82) !important;
  border: 1px solid rgba(7,42,97,0.12) !important;
  box-shadow: 0 24px 58px -42px rgba(7,42,97,0.30), inset 0 1px 0 rgba(255,255,255,0.9) !important;
}

html:not([data-theme="dark"]) .apply-form input,
html:not([data-theme="dark"]) .apply-form select,
html:not([data-theme="dark"]) .apply-form textarea {
  background: rgba(255,255,255,0.92) !important;
  border-color: rgba(7,42,97,0.16) !important;
  color: var(--ink) !important;
}

html:not([data-theme="dark"]) .apply-form input::placeholder,
html:not([data-theme="dark"]) .apply-form textarea::placeholder {
  color: rgba(17,21,28,0.46) !important;
}

html:not([data-theme="dark"]) .apply-form select {
  color: var(--ink) !important;
}

html:not([data-theme="dark"]) .apply-form input:focus,
html:not([data-theme="dark"]) .apply-form select:focus,
html:not([data-theme="dark"]) .apply-form textarea:focus {
  border-color: rgba(13,71,161,0.48) !important;
  box-shadow: 0 0 0 4px rgba(13,71,161,0.10), inset 0 1px 0 rgba(255,255,255,0.8) !important;
}

html:not([data-theme="dark"]) .apply-form .btn-gold {
  background: linear-gradient(135deg, #D7B85A, #F1D681) !important;
  color: #071222 !important;
  border: 1px solid rgba(255,255,255,0.64) !important;
}

/* Light-theme Umrah quote section color compatibility. */
html:not([data-theme="dark"]) .enquiry-card {
  background:
    linear-gradient(135deg, rgba(255,255,255,0.92), rgba(246,245,242,0.86)) !important;
  border: 1px solid rgba(7,42,97,0.12) !important;
  color: var(--ink) !important;
  box-shadow: 0 30px 80px -46px rgba(7,42,97,0.34), inset 0 1px 0 rgba(255,255,255,0.94) !important;
}

html:not([data-theme="dark"]) .enquiry-card::before {
  background: radial-gradient(circle, rgba(201,166,70,0.16), transparent 70%) !important;
}

html:not([data-theme="dark"]) .enquiry-copy h2 {
  color: var(--royal-deep) !important;
}

html:not([data-theme="dark"]) .enquiry-copy p,
html:not([data-theme="dark"]) .enquiry-points {
  color: rgba(17,21,28,0.66) !important;
}

html:not([data-theme="dark"]) .enquiry-form {
  background: rgba(255,255,255,0.82) !important;
  border: 1px solid rgba(7,42,97,0.12) !important;
  box-shadow: 0 24px 58px -42px rgba(7,42,97,0.30), inset 0 1px 0 rgba(255,255,255,0.9) !important;
}

html:not([data-theme="dark"]) .enquiry-form label {
  color: rgba(17,21,28,0.58) !important;
}

html:not([data-theme="dark"]) .enquiry-form input,
html:not([data-theme="dark"]) .enquiry-form select,
html:not([data-theme="dark"]) .enquiry-form textarea {
  background: rgba(255,255,255,0.92) !important;
  border-color: rgba(7,42,97,0.16) !important;
  color: var(--ink) !important;
}

html:not([data-theme="dark"]) .enquiry-form input::placeholder,
html:not([data-theme="dark"]) .enquiry-form textarea::placeholder {
  color: rgba(17,21,28,0.46) !important;
}

html:not([data-theme="dark"]) .enquiry-form select option {
  color: var(--ink) !important;
  background: #fff !important;
}

html:not([data-theme="dark"]) .enquiry-form input:focus,
html:not([data-theme="dark"]) .enquiry-form select:focus,
html:not([data-theme="dark"]) .enquiry-form textarea:focus {
  border-color: rgba(13,71,161,0.48) !important;
  box-shadow: 0 0 0 4px rgba(13,71,161,0.10), inset 0 1px 0 rgba(255,255,255,0.8) !important;
}

html:not([data-theme="dark"]) .enquiry-form .btn-gold {
  background: linear-gradient(135deg, #D7B85A, #F1D681) !important;
  color: #071222 !important;
  border: 1px solid rgba(255,255,255,0.64) !important;
}

/* Light-theme contact office-hours compatibility. */
html:not([data-theme="dark"]) .office-card {
  background:
    linear-gradient(135deg, rgba(255,255,255,0.92), rgba(246,245,242,0.86)) !important;
  border: 1px solid rgba(7,42,97,0.12) !important;
  color: var(--ink) !important;
  box-shadow: 0 30px 80px -46px rgba(7,42,97,0.34), inset 0 1px 0 rgba(255,255,255,0.94) !important;
}

html:not([data-theme="dark"]) .office-card::before {
  background: radial-gradient(circle, rgba(201,166,70,0.18), transparent 70%) !important;
}

html:not([data-theme="dark"]) .office-card h4 {
  color: var(--royal-deep) !important;
}

html:not([data-theme="dark"]) .hours-row {
  border-bottom-color: rgba(7,42,97,0.12) !important;
  color: rgba(17,21,28,0.78) !important;
}

html:not([data-theme="dark"]) .hours-row span:first-child {
  color: var(--ink) !important;
  font-weight: 600;
}

html:not([data-theme="dark"]) .hours-row span:last-child {
  color: rgba(17,21,28,0.58) !important;
}

/* Shared professional footer */
footer {
  position: relative;
  overflow: hidden;
  background: linear-gradient(180deg, #FFFFFF 0%, #F5F8FC 100%);
  color: rgba(17,21,28,0.72);
  padding: 72px 0 26px;
  border-top: 1px solid rgba(7,42,97,0.10);
}

footer::before {
  content: "";
  position: absolute;
  inset: 0 0 auto;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(13,71,161,0.22), rgba(216,184,90,0.42), transparent);
}

footer .wrap {
  position: relative;
  z-index: 1;
}

footer .foot-grid {
  display: grid;
  grid-template-columns: minmax(270px, 1.7fr) minmax(130px, .85fr) minmax(150px, .9fr) minmax(230px, 1.2fr);
  gap: 42px;
  align-items: start;
  margin-bottom: 48px;
}

footer .footer-logo {
  display: inline-flex;
  margin-bottom: 18px;
}

footer .footer-logo .site-logo-img {
  width: 76px;
  height: 76px;
}

footer .logo .site-logo-text {
  color: var(--royal-deep);
}

footer .foot-brand p,
footer .foot-grid > div:first-child p {
  max-width: 330px;
  margin: 0;
  color: rgba(17,21,28,0.62);
  font-size: 15px;
  line-height: 1.75;
}

footer .foot-col h5 {
  margin: 8px 0 20px;
  color: var(--royal-deep);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .14em;
  text-transform: uppercase;
}

footer .foot-col a {
  display: block;
  width: fit-content;
  margin-bottom: 12px;
  color: rgba(17,21,28,0.68);
  font-size: 14.5px;
  line-height: 1.55;
  transition: color .25s var(--ease), transform .25s var(--ease);
}

footer .foot-col a:hover {
  color: var(--gold);
  transform: translateX(3px);
}

footer .social-row {
  display: flex;
  flex-wrap: wrap;
  gap: 11px;
  align-items: center;
  margin-top: 24px;
}

footer .soc {
  width: 42px;
  height: 42px;
  border: 1px solid rgba(7,42,97,0.14);
  border-radius: 50%;
  background: #fff;
  color: var(--royal-deep);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 12px 28px -22px rgba(7,42,97,0.48);
  transition: background .25s var(--ease), border-color .25s var(--ease), color .25s var(--ease), transform .25s var(--ease);
}

footer .soc svg {
  width: 18px;
  height: 18px;
  fill: currentColor;
}

footer .soc:hover {
  background: var(--royal);
  border-color: var(--royal);
  color: #fff;
  transform: translateY(-3px);
}

footer .foot-bottom {
  max-width: none;
  margin: 0;
  padding: 22px 0 0;
  border-top: 1px solid rgba(7,42,97,0.11);
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 18px;
  color: rgba(17,21,28,0.52);
  font-size: 13px;
}

footer .developer-credit {
  color: rgba(17,21,28,0.64);
  font-weight: 600;
}

footer .footer-mini-brand,
footer .footer-social {
  display: none;
}

html[data-theme="dark"] footer {
  background: #07111F;
  border-top-color: rgba(255,255,255,0.10);
  color: rgba(255,255,255,0.72);
}

html[data-theme="dark"] footer::before {
  background: linear-gradient(90deg, transparent, rgba(216,184,90,0.55), transparent);
}

html[data-theme="dark"] footer .logo .site-logo-text {
  color: #fff;
}

html[data-theme="dark"] footer .foot-brand p,
html[data-theme="dark"] footer .foot-grid > div:first-child p {
  color: rgba(255,255,255,0.62);
}

html[data-theme="dark"] footer .foot-col h5 {
  color: rgba(255,255,255,0.92);
}

html[data-theme="dark"] footer .foot-col a {
  color: rgba(255,255,255,0.68);
}

html[data-theme="dark"] footer .soc {
  border-color: rgba(255,255,255,0.18);
  background: rgba(255,255,255,0.08);
  color: #fff;
  box-shadow: none;
}

html[data-theme="dark"] footer .soc:hover {
  background: var(--gold);
  color: #07111F;
}

html[data-theme="dark"] footer .foot-bottom {
  border-top-color: rgba(255,255,255,0.12);
  color: rgba(255,255,255,0.52);
}

html[data-theme="dark"] footer .developer-credit {
  color: rgba(255,255,255,0.66);
}

@media (max-width: 980px) {
  footer {
    padding-top: 58px;
  }

  footer .foot-grid {
    grid-template-columns: 1.25fr 1fr;
    gap: 34px 46px;
  }
}

@media (max-width: 620px) {
  footer {
    padding: 48px 0 24px;
  }

  footer .foot-grid {
    grid-template-columns: 1fr;
    gap: 28px;
    margin-bottom: 36px;
  }

  footer .foot-col h5 {
    margin-bottom: 14px;
  }

  footer .foot-bottom {
    flex-direction: column;
  }
}

/* WhatsApp navbar CTA */
header .nav-links .nav-whatsapp,
header .nav-links .nav-whatsapp:visited {
  color: #25D366 !important;
  font-weight: 700;
}

header .nav-links .nav-whatsapp::after {
  background: linear-gradient(90deg, transparent, #25D366, transparent) !important;
}

header .nav-actions .nav-cta.nav-whatsapp,
header .nav-actions .nav-cta.nav-whatsapp:visited {
  color: #fff !important;
  background: #25D366 !important;
  border-color: #25D366 !important;
  box-shadow: 0 16px 34px -22px rgba(37,211,102,0.85), inset 0 1px 0 rgba(255,255,255,0.28) !important;
}

header .nav-actions .nav-cta.nav-whatsapp:hover,
header .nav-actions .nav-cta.nav-whatsapp:focus-visible {
  color: #fff !important;
  background: #128C7E !important;
  border-color: #128C7E !important;
  transform: translateY(-1px);
}

html[data-theme="dark"] header .nav-links .nav-whatsapp,
html[data-theme="dark"] header .nav-links .nav-whatsapp:visited {
  color: #25D366 !important;
}

/* Flight search layout cleanup */
.flight-search-section .checker-form {
  grid-template-columns: minmax(220px, 1.16fr) 0 minmax(220px, 1.16fr) minmax(180px, .9fr) minmax(180px, .9fr) !important;
  gap: 10px !important;
  align-items: stretch !important;
}

.flight-search-section .gf-field {
  min-height: 72px !important;
  padding: 10px 14px !important;
}

.flight-search-section .gf-field input,
.flight-search-section .gf-field .date-picker-toggle {
  font-size: 19px !important;
  line-height: 1.2 !important;
}

.flight-search-section .swap-btn {
  z-index: 3 !important;
  margin: 0 -19px !important;
  background: #fff !important;
  border-color: #DADCE0 !important;
  box-shadow: 0 1px 4px rgba(60,64,67,0.20) !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}

.flight-search-section .swap-btn::before {
  color: #5F6368 !important;
}

@media (max-width: 1040px) {
  .flight-search-section .checker-form {
    grid-template-columns: 1fr 0 1fr !important;
  }

  .flight-search-section .checker-form .date-field {
    grid-column: auto !important;
  }

  .flight-search-section .checker-form .full {
    grid-column: 1 / -1 !important;
  }
}

@media (max-width: 720px) {
  .flight-search-section .checker-form {
    grid-template-columns: 1fr !important;
  }

  .flight-search-section .swap-btn {
    display: none !important;
  }
}

/* Site-wide phone and desktop compatibility layer */
html,
body {
  max-width: 100%;
  overflow-x: hidden;
}

*,
*::before,
*::after {
  min-width: 0;
}

img,
svg,
video,
canvas,
iframe {
  max-width: 100%;
}

.wrap {
  width: 100% !important;
  max-width: 1240px !important;
  padding-left: clamp(18px, 4vw, 32px) !important;
  padding-right: clamp(18px, 4vw, 32px) !important;
}

section {
  max-width: 100%;
}

.table-wrap,
.country-strip,
.dest-grid,
.pkg-grid {
  -webkit-overflow-scrolling: touch;
}

.table-wrap {
  overflow-x: auto !important;
}

.table-wrap table {
  min-width: max-content;
}

.fee-table {
  display: block;
  width: 100% !important;
  overflow-x: auto !important;
  -webkit-overflow-scrolling: touch;
}

header nav {
  min-width: 0;
}

header .nav-actions {
  flex-shrink: 0;
}

@media (max-width: 1120px) {
  header .nav-links {
    display: none !important;
  }
}

@media (max-width: 980px) {
  .hero-panel,
  .visa-hero-grid {
    grid-template-columns: 1fr !important;
    min-height: auto !important;
    padding: clamp(32px, 6vw, 48px) !important;
  }

  .hero-panel {
    align-items: end !important;
  }

  .visa-hero-grid {
    display: flex !important;
    align-items: flex-end !important;
  }

  .pkg-layout,
  .contact-layout,
  .two-col,
  .apply-grid,
  .grid-2,
  .enquiry-card,
  .faq-grid,
  .visa-grid,
  .note-card {
    grid-template-columns: 1fr !important;
  }

  .quick-grid,
  .process-row,
  .stat-grid,
  .kpi-row,
  .route-grid,
  .service-grid,
  .highlights-grid,
  .incl-grid,
  .related-grid,
  .hotel-grid,
  .doc-grid,
  .flight-stats {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  .country-card,
  .dest-card,
  .pkg-card {
    flex-basis: min(72%, 360px) !important;
  }

  .sidebar-card {
    position: static !important;
    max-height: none !important;
    overflow: visible !important;
  }
}

@media (max-width: 760px) {
  header,
  header.scrolled,
  .topnav {
    min-height: 62px !important;
  }

  header nav {
    gap: 10px !important;
  }

  header .logo .site-logo-img,
  .topnav-logo .site-logo-img {
    width: 44px !important;
    height: 44px !important;
  }

  header .logo .site-logo-text,
  .topnav-logo .site-logo-text {
    font-size: 15px !important;
    max-width: 126px !important;
    white-space: normal !important;
  }

  header .nav-actions {
    gap: 8px !important;
  }

  header .nav-cta {
    min-height: 34px !important;
    padding: 8px 10px !important;
    font-size: 12px !important;
    white-space: nowrap !important;
  }

  header .theme-toggle,
  .topnav-theme-btn {
    width: 34px !important;
    height: 34px !important;
  }

  .c-hero,
  .crumb-bar {
    padding-top: 104px !important;
  }

  .flight-search-section {
    padding-top: 84px !important;
  }

  .visa-selector {
    padding-top: 22px !important;
  }
}

@media (max-width: 620px) {
  body {
    font-size: 15px;
  }

  h1,
  .hero-copy h1,
  .visa-hero h1,
  .c-hero h1 {
    font-size: clamp(31px, 10vw, 40px) !important;
    line-height: 1.05 !important;
  }

  h2,
  .section-head h2,
  .note-card h2,
  .apply-band h2,
  .enquiry-copy h2 {
    font-size: clamp(25px, 8vw, 32px) !important;
    line-height: 1.1 !important;
  }

  section {
    padding-top: 42px !important;
    padding-bottom: 54px !important;
  }

  .hero-panel,
  .visa-hero-grid {
    padding: 28px 20px !important;
    border-radius: 8px !important;
  }

  .visa-hero-grid {
    min-height: 500px !important;
  }

  .booking-card,
  .contact-form-card,
  .sidebar-card,
  .apply-band,
  .enquiry-card,
  .note-card,
  .office-card,
  .panel,
  .card,
  .login-card,
  .modal {
    padding: 22px !important;
  }

  .quick-grid,
  .process-row,
  .stat-grid,
  .kpi-row,
  .route-grid,
  .service-grid,
  .highlights-grid,
  .incl-grid,
  .related-grid,
  .hotel-grid,
  .doc-grid,
  .flight-stats,
  .form-grid,
  .form-two,
  .pkg-layout,
  .contact-layout,
  .two-col,
  .apply-grid,
  .grid-2,
  .enquiry-card,
  .faq-grid,
  .visa-grid,
  .gallery-grid,
  .side-stack {
    grid-template-columns: 1fr !important;
  }

  .section-head,
  .glass-footer,
  .pkg-head,
  .price-row,
  .note-card {
    display: block !important;
  }

  .section-head p,
  .note-card p {
    margin-top: 12px !important;
  }

  .country-card,
  .dest-card,
  .pkg-card {
    flex-basis: min(92%, 340px) !important;
  }

  .country-card {
    min-height: 330px !important;
  }

  .dest-grid,
  .pkg-grid,
  .country-strip {
    gap: 16px !important;
  }

  .gallery-grid {
    height: auto !important;
  }

  .gallery-grid .main img,
  .side-stack img {
    min-height: 190px;
  }

  .map-frame {
    min-height: 260px;
  }

  .tabs,
  .checker-tabs,
  .checker-prefs {
    width: 100% !important;
  }

  .tabs {
    grid-template-columns: 1fr !important;
  }

  .btn-primary,
  .btn-secondary,
  .btn-dark,
  .btn-gold,
  .wa-btn,
  .visa-apply,
  .search-submit {
    width: 100%;
    white-space: normal !important;
    text-align: center;
  }

  input,
  select,
  textarea,
  .date-picker-toggle {
    font-size: 16px !important;
  }

  .date-picker-popover {
    width: min(320px, calc(100vw - 36px)) !important;
  }

  .wa-float {
    width: 52px !important;
    height: 52px !important;
    right: 18px !important;
    bottom: 18px !important;
  }

  .wa-float svg {
    width: 25px !important;
    height: 25px !important;
  }
}

@media (max-width: 420px) {
  .wrap {
    padding-left: 16px !important;
    padding-right: 16px !important;
  }

  header .logo .site-logo-img,
  .topnav-logo .site-logo-img {
    width: 40px !important;
    height: 40px !important;
  }

  header .logo .site-logo-text,
  .topnav-logo .site-logo-text {
    font-size: 13.5px !important;
    max-width: 112px !important;
  }

  header .nav-cta {
    padding: 7px 9px !important;
    font-size: 11.5px !important;
  }

  header .theme-toggle,
  .topnav-theme-btn {
    width: 32px !important;
    height: 32px !important;
  }
}

/* Dashboard sidebar cleanup */
.sidebar {
  padding: 22px 20px 18px !important;
  overflow-y: auto !important;
  overflow-x: hidden !important;
  scrollbar-width: thin;
}

.sidebar > div:first-child {
  flex: none;
}

.sidebar .sb-logo {
  display: inline-flex !important;
  align-items: center !important;
  gap: 10px !important;
  margin-bottom: 6px !important;
  font-size: 18px !important;
  line-height: 1.05 !important;
}

.sidebar .sb-logo .site-logo-img {
  width: 48px !important;
  height: 48px !important;
}

.sidebar .sb-logo .site-logo-text {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  color: #fff !important;
  white-space: nowrap !important;
}

.sidebar .sb-logo .site-logo-accent {
  color: var(--gold) !important;
}

.sidebar .sb-tag {
  margin-bottom: 22px !important;
}

.sidebar .sb-nav {
  flex: 1 1 auto !important;
  padding-bottom: 18px !important;
}

.sidebar .sb-foot {
  flex: none !important;
  margin-top: auto !important;
}

@media (max-height: 760px) and (min-width: 761px) {
  .sidebar {
    padding-top: 16px !important;
    padding-bottom: 14px !important;
  }

  .sidebar .sb-logo .site-logo-img {
    width: 42px !important;
    height: 42px !important;
  }

  .sidebar .sb-tag {
    margin-bottom: 14px !important;
  }

  .sidebar .sb-link {
    padding-top: 10px !important;
    padding-bottom: 10px !important;
  }
}

/* Dashboard navbar light-theme compatibility */
html:not([data-theme="dark"]) .shell .topnav {
  background: rgba(255,255,255,0.94) !important;
  border-bottom: 1px solid rgba(7,42,97,0.10) !important;
  box-shadow: 0 14px 36px -30px rgba(7,42,97,0.34), inset 0 1px 0 rgba(255,255,255,0.92) !important;
  backdrop-filter: blur(16px) saturate(1.12);
  -webkit-backdrop-filter: blur(16px) saturate(1.12);
}

html:not([data-theme="dark"]) .shell .topnav-logo .site-logo-text {
  color: var(--royal-deep) !important;
}

html:not([data-theme="dark"]) .shell .topnav-logo .site-logo-accent {
  color: var(--gold) !important;
}

html:not([data-theme="dark"]) .shell .topnav-link {
  color: var(--royal-deep) !important;
  background: rgba(7,42,97,0.06) !important;
  border-color: rgba(7,42,97,0.12) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.82), 0 12px 28px -24px rgba(7,42,97,0.38) !important;
}

html:not([data-theme="dark"]) .shell .topnav-link:hover {
  color: #071222 !important;
  background: linear-gradient(135deg, #F2D77A, #D9BB62) !important;
  border-color: rgba(201,166,70,0.55) !important;
}

html:not([data-theme="dark"]) .shell .topnav-theme-btn {
  color: var(--royal-deep) !important;
  background: rgba(255,255,255,0.82) !important;
  border-color: rgba(7,42,97,0.18) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.9), 0 12px 28px -24px rgba(7,42,97,0.42) !important;
}

html:not([data-theme="dark"]) .shell .topnav-theme-btn:hover {
  color: #071222 !important;
  background: var(--gold) !important;
  border-color: var(--gold) !important;
}

html[data-theme="dark"] .shell .topnav-logo .site-logo-text {
  color: #F7F3EA !important;
}

/* Dashboard sidebar light/dark theme compatibility */
html:not([data-theme="dark"]) .shell .sidebar {
  background: linear-gradient(180deg, rgba(255,255,255,0.96), rgba(246,245,242,0.94)) !important;
  color: var(--ink) !important;
  border-right: 1px solid rgba(7,42,97,0.10) !important;
  box-shadow: 18px 0 54px -46px rgba(7,42,97,0.34), inset 1px 0 0 rgba(255,255,255,0.9) !important;
}

html:not([data-theme="dark"]) .shell .sidebar .sb-logo .site-logo-text {
  color: var(--royal-deep) !important;
}

html:not([data-theme="dark"]) .shell .sidebar .sb-logo .site-logo-accent {
  color: var(--gold) !important;
}

html:not([data-theme="dark"]) .shell .sidebar .sb-tag {
  color: rgba(17,21,28,0.58) !important;
}

html:not([data-theme="dark"]) .shell .sidebar .sb-link {
  color: rgba(17,21,28,0.68) !important;
  border-color: transparent !important;
  background: transparent !important;
}

html:not([data-theme="dark"]) .shell .sidebar .sb-link:hover {
  color: var(--royal-deep) !important;
  background: rgba(7,42,97,0.06) !important;
}

html:not([data-theme="dark"]) .shell .sidebar .sb-link.active {
  color: var(--royal-deep) !important;
  background: rgba(201,166,70,0.18) !important;
  border-color: rgba(201,166,70,0.46) !important;
}

html:not([data-theme="dark"]) .shell .sidebar .sb-foot {
  border-top-color: rgba(7,42,97,0.12) !important;
}

html:not([data-theme="dark"]) .shell .sidebar .sb-user div p {
  color: var(--ink) !important;
}

html:not([data-theme="dark"]) .shell .sidebar .sb-user div span {
  color: rgba(17,21,28,0.56) !important;
}

html:not([data-theme="dark"]) .shell .sidebar .logout-btn {
  color: var(--royal-deep) !important;
  border-color: rgba(7,42,97,0.20) !important;
  background: rgba(255,255,255,0.66) !important;
}

html:not([data-theme="dark"]) .shell .sidebar .logout-btn:hover {
  background: rgba(201,166,70,0.22) !important;
  border-color: rgba(201,166,70,0.54) !important;
}

html[data-theme="dark"] .shell .sidebar {
  background: linear-gradient(180deg, rgba(10,20,34,0.96), rgba(7,11,18,0.98)) !important;
  color: #fff !important;
  border-right-color: rgba(255,255,255,0.12) !important;
}

html[data-theme="dark"] .shell .sidebar .sb-logo .site-logo-text,
html[data-theme="dark"] .shell .sidebar .sb-user div p {
  color: #fff !important;
}

html[data-theme="dark"] .shell .sidebar .sb-link {
  color: rgba(255,255,255,0.68) !important;
}

html[data-theme="dark"] .shell .sidebar .sb-link:hover {
  color: #fff !important;
}

html[data-theme="dark"] .shell .sidebar .sb-link.active {
  color: var(--gold) !important;
}

/* Smooth page entry */
body {
  animation: skymatePageIn .32s cubic-bezier(.22,.61,.36,1) both;
}

@keyframes skymatePageIn {
  from {
    opacity: .01;
    transform: translateY(6px);
  }
  to {
    opacity: 1;
    transform: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  body {
    animation: none !important;
  }

  .reveal {
    transition: none !important;
    transform: none !important;
  }
}

/* Final flight checker polish */
.flight-search-section .checker-shell {
  overflow: visible !important;
}

.flight-search-section .checker-form .actions {
  z-index: 20 !important;
}

.flight-search-section .checker-shell.calendar-open .checker-form .actions {
  opacity: 0 !important;
  pointer-events: none !important;
}

.flight-search-section .gf-field input,
.flight-search-section .gf-field select,
.flight-search-section .gf-field textarea {
  width: 100% !important;
  min-width: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  outline: 0 !important;
  appearance: none;
}

.flight-search-section .gf-field .date-picker-toggle,
html[data-theme="dark"] .flight-search-section .gf-field .date-picker-toggle {
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  outline: 0 !important;
}

.flight-search-section .gf-field .date-picker-toggle:hover,
.flight-search-section .gf-field .date-picker-toggle:focus,
html[data-theme="dark"] .flight-search-section .gf-field .date-picker-toggle:hover,
html[data-theme="dark"] .flight-search-section .gf-field .date-picker-toggle:focus {
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  outline: 0 !important;
  transform: none !important;
}

.flight-search-section .date-picker-popover {
  top: calc(100% + 10px) !important;
  z-index: 90 !important;
  width: min(252px, calc(100vw - 44px)) !important;
  background: #fff !important;
  color: #202124 !important;
  border-radius: 8px !important;
  padding: 10px !important;
  overflow: hidden !important;
  opacity: 0;
  isolation: isolate;
}

.flight-search-section .date-picker-popover.open {
  opacity: 1 !important;
}

.flight-search-section .date-picker-head {
  position: relative !important;
  z-index: 2 !important;
  display: grid !important;
  grid-template-columns: 26px 1fr 26px !important;
  align-items: center !important;
  gap: 5px !important;
  margin-bottom: 8px !important;
  padding-bottom: 2px !important;
  overflow: visible !important;
}

.flight-search-section .date-picker-nav {
  position: relative !important;
  z-index: 3 !important;
  display: flex !important;
  justify-content: center !important;
}

.flight-search-section .date-picker-nav button,
html[data-theme="dark"] .flight-search-section .date-picker-nav button {
  position: relative !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 24px !important;
  height: 24px !important;
  overflow: hidden !important;
  color: #1967D2 !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  line-height: 1 !important;
  background: #fff !important;
  border: 1px solid #DDE4EF !important;
  border-radius: 50% !important;
  box-shadow: none !important;
  transform: none !important;
}

.flight-search-section .date-picker-nav button::before {
  content: none !important;
}

.flight-search-section .date-field .date-picker-popover {
  left: auto !important;
  right: 0 !important;
}

.flight-search-section .date-picker-months {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 6px !important;
}

.flight-search-section .date-picker-title,
.flight-search-section .date-month-title,
html[data-theme="dark"] .flight-search-section .date-picker-title,
html[data-theme="dark"] .flight-search-section .date-month-title {
  color: #202124 !important;
  text-align: center !important;
}

.flight-search-section .date-picker-title {
  font-size: 12px !important;
}

.flight-search-section .date-month-title {
  display: none !important;
}

.flight-search-section .date-weekdays span,
html[data-theme="dark"] .flight-search-section .date-weekdays span {
  color: #7A8492 !important;
  font-size: 9px !important;
  padding: 1px 0 !important;
}

.flight-search-section .date-weekdays,
.flight-search-section .date-grid {
  gap: 3px !important;
}

.flight-search-section .date-day,
html[data-theme="dark"] .flight-search-section .date-day {
  height: 26px !important;
  background: #fff !important;
  border: 1px solid #E3E7EE !important;
  color: #202124 !important;
  font-size: 11px !important;
  box-shadow: none !important;
}

.flight-search-section .date-day:hover,
html[data-theme="dark"] .flight-search-section .date-day:hover {
  background: #F1F6FF !important;
  color: #0D47A1 !important;
}

.flight-search-section .date-day.is-selected,
html[data-theme="dark"] .flight-search-section .date-day.is-selected {
  background: #1A73E8 !important;
  border-color: #1A73E8 !important;
  color: #fff !important;
}

.flight-search-section .date-day.is-muted,
.flight-search-section .date-day:disabled,
html[data-theme="dark"] .flight-search-section .date-day.is-muted,
html[data-theme="dark"] .flight-search-section .date-day:disabled {
  background: #fff !important;
  color: #B4BAC3 !important;
}

.flight-search-section .flight-results {
  position: relative !important;
  z-index: 1 !important;
  margin-top: 12px !important;
}

.flight-search-section .flight-results:empty {
  display: none !important;
}

.flight-search-section .empty-results {
  min-height: auto !important;
  padding: 2px 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  display: block !important;
  font-size: 11.5px !important;
  line-height: 1.25 !important;
}

@media (max-width: 620px) {
  .flight-search-section .date-picker-popover {
    width: min(252px, calc(100vw - 44px)) !important;
  }

  .flight-search-section .date-picker-months {
    grid-template-columns: 1fr !important;
  }
}

/* Shared mobile navigation and homepage responsive polish */
.mobile-menu-toggle {
  display: none;
  width: 42px;
  height: 42px;
  border: 1px solid rgba(7,42,97,0.18);
  border-radius: 50%;
  background: rgba(255,255,255,0.72);
  color: var(--royal-deep);
  align-items: center;
  justify-content: center;
  flex-direction: column;
  gap: 4px;
  cursor: pointer;
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.82), 0 12px 28px -24px rgba(7,42,97,0.42);
  transition: background .25s var(--ease), border-color .25s var(--ease), transform .25s var(--ease);
}

.mobile-menu-toggle span {
  width: 17px;
  height: 2px;
  border-radius: 999px;
  background: currentColor;
  transition: transform .25s var(--ease), opacity .25s var(--ease);
}

.mobile-menu-toggle:hover {
  background: var(--gold);
  border-color: var(--gold);
  color: #071222;
  transform: translateY(-1px);
}

header.nav-open .mobile-menu-toggle span:nth-child(1) {
  transform: translateY(6px) rotate(45deg);
}

header.nav-open .mobile-menu-toggle span:nth-child(2) {
  opacity: 0;
}

header.nav-open .mobile-menu-toggle span:nth-child(3) {
  transform: translateY(-6px) rotate(-45deg);
}

html[data-theme="dark"] .mobile-menu-toggle {
  background: var(--dark-panel-2);
  border-color: var(--line);
  color: var(--ink);
}

@media (max-width: 1120px) {
  header nav {
    position: relative;
  }

  header .mobile-menu-toggle {
    display: inline-flex;
  }

  header.nav-open .nav-links {
    position: absolute !important;
    top: calc(100% + 12px) !important;
    right: 0 !important;
    left: auto !important;
    z-index: 120 !important;
    display: flex !important;
    width: min(330px, calc(100vw - 36px)) !important;
    max-height: calc(100vh - 92px);
    overflow-y: auto;
    flex-direction: column !important;
    align-items: stretch !important;
    justify-content: flex-start !important;
    gap: 0 !important;
    padding: 10px !important;
    border: 1px solid rgba(7,42,97,0.12) !important;
    border-radius: 8px !important;
    background: rgba(255,255,255,0.98) !important;
    box-shadow: 0 26px 58px -32px rgba(7,42,97,0.5), 0 14px 26px -22px rgba(17,21,28,0.28) !important;
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
  }

  header.nav-open .nav-links a {
    display: flex !important;
    align-items: center !important;
    min-height: 42px !important;
    padding: 10px 12px !important;
    border-radius: 8px !important;
    color: var(--royal-deep) !important;
    font-size: 14px !important;
  }

  header.nav-open .nav-links a::after {
    content: none !important;
  }

  header.nav-open .nav-links a:hover,
  header.nav-open .nav-links a.active {
    background: rgba(201,166,70,0.18) !important;
    color: var(--royal-deep) !important;
  }

  html[data-theme="dark"] header.nav-open .nav-links {
    background: rgba(17,26,38,0.98) !important;
    border-color: var(--line) !important;
  }

  html[data-theme="dark"] header.nav-open .nav-links a {
    color: var(--ink) !important;
  }
}

@media (max-width: 760px) {
  .hero {
    height: auto !important;
    min-height: 640px !important;
  }

  .hero-content {
    padding-top: 122px !important;
    padding-bottom: 46px !important;
  }

  .search-bar {
    margin-top: 34px !important;
  }

  .search-field {
    padding: 16px 18px !important;
  }

  .search-submit {
    min-height: 50px !important;
    padding: 14px 18px !important;
  }

  .scroll-cue {
    display: none !important;
  }

  .pkg-meta {
    align-items: flex-start !important;
    flex-direction: column !important;
    gap: 12px !important;
  }
}

@media (max-width: 620px) {
  header .mobile-menu-toggle,
  header .theme-toggle,
  .topnav-theme-btn {
    width: 34px !important;
    height: 34px !important;
  }

  header .nav-actions .nav-cta:not(:has(svg)) {
    display: none !important;
  }

  header .nav-actions .nav-cta:has(svg) {
    width: 34px !important;
    height: 34px !important;
    min-height: 34px !important;
    padding: 0 !important;
    font-size: 0 !important;
    gap: 0 !important;
  }

  header .nav-actions .nav-cta:has(svg) svg {
    width: 19px !important;
    height: 19px !important;
  }

  .hero {
    min-height: 620px !important;
  }

  .hero h1 {
    font-size: clamp(34px, 12vw, 46px) !important;
    line-height: 1.02 !important;
  }

  .hero p {
    font-size: 15px !important;
    line-height: 1.55 !important;
  }

  .eyebrow {
    gap: 10px !important;
    font-size: 11px !important;
    letter-spacing: .12em !important;
  }

  .stat-row {
    grid-template-columns: 1fr !important;
    gap: 20px !important;
  }

  .why-item {
    gap: 14px !important;
  }

  .pkg-body,
  .testi-card {
    padding: 22px !important;
  }

  .pkg-img {
    height: 210px !important;
  }
}
