
:root {

--ej-navy: #0C2240; 
--ej-midnight: #081830; 
--ej-gold: #C6A15B; 
--ej-gold-light: #DCC38A; 
--ej-brass: #B8924A; 
--ej-gold-pale: #E0C585; 
--ej-cream: #F7F3EC;
--ej-ivory: #FBF9F4;
--ej-slate: #516175; 
--ej-mist: #9FB1C6; 
--ej-silver: #A3ABB5;
--ej-silver-light:#CDD3DA;
--ej-silver-dark: #79828D;

--ej-link: var(--ej-gold-light);
--ej-link-rule: var(--ej-gold-light);
--ej-link-hover: var(--ej-gold-pale);

--ej-serif: 'Cormorant Garamond', 'EJ Cormorant Fallback', Georgia, 'Times New Roman', serif;
--ej-label: 'Marcellus', 'Cormorant Garamond', Georgia, serif;
--ej-sans: 'Mulish', 'EJ Mulish Fallback', 'Segoe UI', system-ui, -apple-system, sans-serif;
}

html,
body,
.summary-conts p,
.summary-icons p,
.lodging-contents .lodging-details h6,
.gold-light-btn-hero,
.silver-light-btn,
.ej-sidebar-list li,
.notready-bar-desc,
.notready-bar-lead-text,
.notready-bar-no-email-text,
.ej-cat-toggle-btn,
.video-destination-label,
.fred-headline-sub,
.fred-photo-cap,
.fred-quote-author,
.vtc-text-overlay .vtc-quote,
.vtc-big-play,
.vtc-time,
.vtc-outro-subtitle,
.vtc-outro-replay,
.vtc-polaroid-name,
.vtc-idle-name,
.vtc-idle-quote,
.vtc-video-thumb-name,
.vtc-video-thumb-quote { font-family: var(--ej-sans) !important; }

[style*="Montserrat"] { font-family: var(--ej-sans) !important; }

h2.allheaders-gold, h3.allheaders-gold, h2.allheaders-silver, h3.allheaders-silver,
h2.trust-title, h3.trust-title { font-family: var(--ej-serif) !important; }
.vtc-outro-title { font-family: var(--ej-label) !important; }
body {
font-family: var(--ej-sans) !important;
font-size: 16px !important; 
font-weight: 400;
letter-spacing: 0;
}


body { background-color: var(--ej-navy) !important; }
body { color: #F2F5F8 !important; } 

[style*="#001628"], [style*="#041D35"], [style*="#001E3C"],
[style*="rgb(0, 22, 40)"], [style*="rgb(0,22,40)"] {
background-color: var(--ej-navy) !important;
}
.vtc-outro-desktop, .vtc-intro { background: var(--ej-navy) !important; }
.vtc-vc-av, .vtc-vc-av-more { border-color: var(--ej-navy) !important; }
.vtc-outro-desktop .vtc-outro-replay,
.vtc-outro-mobile .vtc-outro-replay { color: var(--ej-navy) !important; }


h2.allheaders-gold, h3.allheaders-gold,
h2.trust-title-gold, h3.trust-title-gold,
h3.destination-header-h3-gold,
p.destination-header-p-gold,
.lodging-contents .lodging-details .h4-gold,
.fred-headline-sub, .fred-photo-name-text, .mdash-desktop,
.flight-total-includes-title,
.ej-faq-group-title, .ej-faq-quote-name,
.vtc-vc-stars, .vtc-vc-review-count, .vtc-vc-title span,
.vc-say { color: var(--ej-gold-light) !important; }

[style*="color:#dbb166"], [style*="color: #dbb166"],
[style*="color:#DBB166"], [style*="color: #DBB166"] { color: var(--ej-gold-light) !important; }

.destination-header-gold { border-top-color: var(--ej-gold) !important; }
.ej-faq-quote { border-left-color: var(--ej-gold) !important; }
.trip-overview-icon,
.ej-faq-chev,
.luggage-icon-gold,

.flight-total-includes i.luggage-icon-gold,
.airfare-benefits-list li i.luggage-icon-gold,
i.fa-solid.fa-compass, i.fa-solid.fa-calendar-day, i.fa-solid.fa-clock,
i.fa-solid.fa-map-marked-alt, i.fa-solid.fa-car, i.fa-solid.fa-utensils,
i.fa-solid.fa-star, i.fa-solid.fa-location-dot { color: var(--ej-gold) !important; }
.airplane-seat-icon-gold { background-color: var(--ej-gold) !important; }
.vtc-vc-av-more { background: var(--ej-gold) !important; }
.vtc-doodle-arrow::before { background-color: var(--ej-gold) !important; }
.vtc-vc-badge {
background: rgba(198, 161, 91, .15) !important;
border-color: rgba(198, 161, 91, .35) !important;
}

img[style*="#dbb166"] {
background-image: linear-gradient(45deg, var(--ej-gold), #ffffff) !important;
}

h3.destination-header-h3-silver,
p.destination-header-p-silver,
.lodging-contents .lodging-details .h4-silver,
.silver .trip-overview-icon,
.airfare-benefits-list li i.luggage-icon-silver { color: var(--ej-silver-light) !important; }
.destination-header-silver { border-top-color: var(--ej-silver) !important; }
.airplane-seat-icon-silver { background-color: var(--ej-silver-light) !important; }

h2.allheaders-silver, h3.allheaders-silver, .trust-title-silver {
background: linear-gradient(to bottom, var(--ej-silver-light) 0%,
var(--ej-silver) 50%, var(--ej-silver-dark) 100%) !important;
-webkit-background-clip: text !important;
background-clip: text !important;
}

.fred-cta-btn, .fred-cta-btn i,
.vtc-video-thumb-info, .vtc-video-thumb-name, .vtc-video-thumb-quote {
color: var(--ej-navy) !important;
}

.video-slide-placeholder, .slider-video-container, .booklet-section {
background-color: var(--ej-navy) !important;
}

section.trust-section-worry-free { background-color: var(--ej-navy) !important; }
.video-modal-close { background: var(--ej-midnight) !important; }

.fred-cta-btn {
background: linear-gradient(135deg, var(--ej-gold), var(--ej-brass)) !important;
}
.fred-cta-btn:hover {
background: var(--ej-gold-pale) !important;
box-shadow: 0 6px 24px rgba(198, 161, 91, .30) !important;
}

a:not(.ej-navbar *):not(.dbdtourbtn-gold):not(.dbdtourbtn-silver):not(.gold-light-btn):not(.silver-light-btn):not(.ej-sidebar-list li a):not(.promo-back-hub):not(.ej-cat-toggle-btn):not(.ej-sticky-email-btn):not(.rqf-wrap .rqf-return a),
.modal-body a:not(.ej-navbar *):not(.dbdtourbtn-gold):not(.dbdtourbtn-silver):not(.gold-light-btn):not(.silver-light-btn):not(.ej-sidebar-list li a):not(.promo-back-hub):not(.ej-cat-toggle-btn):not(.ej-sticky-email-btn):not(.rqf-wrap .rqf-return a),
.summary-conts p a,
.lodging-contents .lodging-details ul li a,
.prices-section .prices-contents table th p a,
.prices-section .prices-contents table th a,
.link-button,
.fred-quotes-link {

color: var(--ej-link) !important;
text-decoration-line: none !important;
background-image: linear-gradient(var(--ej-link-rule), var(--ej-link-rule));
background-repeat: no-repeat;
background-position: 0 100%;
background-size: 0% 1px;

padding-bottom: 2px;
transition-property: background-size, color;
transition-timing-function: cubic-bezier(.4, 0, .2, 1);
transition-duration: 300ms;
}

a:hover:not(.ej-navbar *):not(.dbdtourbtn-gold):not(.dbdtourbtn-silver):not(.gold-light-btn):not(.silver-light-btn):not(.ej-sidebar-list li a):not(.promo-back-hub):not(.ej-cat-toggle-btn):not(.ej-sticky-email-btn):not(.rqf-wrap .rqf-return a),
a:focus-visible:not(.ej-navbar *):not(.dbdtourbtn-gold):not(.dbdtourbtn-silver):not(.gold-light-btn):not(.silver-light-btn):not(.ej-sidebar-list li a):not(.promo-back-hub):not(.ej-cat-toggle-btn):not(.ej-sticky-email-btn):not(.rqf-wrap .rqf-return a),
.summary-conts p a:hover, .summary-conts p a:focus-visible,
.lodging-contents .lodging-details ul li a:hover,
.lodging-contents .lodging-details ul li a:focus-visible,
.prices-section .prices-contents table th p a:hover,
.prices-section .prices-contents table th a:hover,
.link-button:hover, .link-button:focus-visible,
.fred-quotes-link:hover, .fred-quotes-link:focus-visible {
color: var(--ej-link-hover) !important;
background-size: 100% 1px;
text-decoration-line: none !important;
}

@media (prefers-reduced-motion: reduce) {
a:not(.ej-navbar *):not(.ej-sidebar-list li a),
.link-button, .fred-quotes-link { transition-property: none !important; }
}

.ej-sidebar-list li a,
.ej-sidebar-translate .skiptranslate,
.ej-sidebar-translate .goog-te-combo,
.ej-close-btn, .ej-close-btn i { color: var(--ej-gold-light) !important; }
.ej-sidebar-translate .goog-te-combo { border-color: var(--ej-gold-light) !important; }
.ej-sidebar-list li a:hover { border-left-color: var(--ej-gold-light) !important; }
.ej-close-btn:focus-visible { outline-color: var(--ej-gold-light) !important; }

.silver-light-btn:hover, .video-modal-close { color: var(--ej-silver-light) !important; }
.video-modal-content { background: var(--ej-silver-light) !important; }

h2.allheaders-gold, h3.allheaders-gold,
h2.allheaders-silver, h3.allheaders-silver,
h2.trust-title, h3.trust-title {
font-size: 32px !important;
font-weight: 600 !important;
letter-spacing: .01em !important;
line-height: 1.18 !important;
text-transform: none !important;

text-align: left !important;
margin-left: 0 !important;
margin-right: auto !important;
}

h2.allheaders-gold, h3.allheaders-gold,
h2.allheaders-silver, h3.allheaders-silver,
h2.trust-title, h3.trust-title,
.highlight-carousel-title,
.fred-headline h3 {
font-variant-numeric: lining-nums !important;
-webkit-font-feature-settings: "lnum" 1 !important;
font-feature-settings: "lnum" 1 !important;
}
h3.destination-header-h3-gold, h3.destination-header-h3-silver {
font-family: var(--ej-label) !important;
font-size: 24px !important;
font-weight: 400 !important;
letter-spacing: .085em !important;
line-height: 1.3 !important;
text-transform: uppercase !important;
}
.highlight-carousel-title {
font-family: var(--ej-serif) !important;
font-size: 24px !important;
font-weight: 600 !important;
letter-spacing: .005em !important;
line-height: 1.22 !important;
}
.day-header h4 {
font-family: var(--ej-sans) !important;
font-size: 18px !important;
font-weight: 600 !important;
letter-spacing: .002em !important;
}

.summary-icons h4 {
font-family: var(--ej-label) !important;
font-size: 17px !important;
font-weight: 400 !important;
letter-spacing: .07em !important;
text-transform: uppercase !important;
}
.lodging-contents .lodging-details .h4-gold,
.lodging-contents .lodging-details .h4-silver {
font-family: var(--ej-label) !important;
font-size: 16px !important;
font-weight: 400 !important;
letter-spacing: .08em !important;
text-transform: uppercase !important;
}

.fred-headline h3 { font-family: var(--ej-serif) !important; }


@media screen and (max-width: 768px) {
body h2.allheaders-gold, body h3.allheaders-gold,
body h2.allheaders-silver, body h3.allheaders-silver,
body h2.trust-title, body h3.trust-title { font-size: 27px !important; }
body h3.destination-header-h3-gold,
body h3.destination-header-h3-silver { font-size: 21px !important; }

body h3.highlight-carousel-title:not(.allheaders-gold):not(.allheaders-silver):not(.destination-header-h3-gold) {
font-size: 21px !important;
}

body .day-header h4 { font-size: 17px !important; }
body .summary-icons h4 { font-size: 16px !important; }
}
@media screen and (max-width: 425px) {

body h2.allheaders-gold, body h3.allheaders-gold,
body h2.allheaders-silver, body h3.allheaders-silver,
body h2.trust-title, body h3.trust-title { font-size: 24px !important; }
body h3.destination-header-h3-gold,
body h3.destination-header-h3-silver { font-size: 19px !important; }
}

@media pdfcrowd, print {
body, p, div, span, li, td, th { font-family: var(--ej-sans) !important; }
body h2.allheaders-gold, body h3.allheaders-gold,
body h2.allheaders-silver, body h3.allheaders-silver,
body h2.trust-title, body h3.trust-title {
font-family: var(--ej-serif) !important;
text-transform: none !important;
}
body h3.destination-header-h3-gold, body h3.destination-header-h3-silver,
body .summary-icons h4 { font-family: var(--ej-label) !important; }
}

:root {
--ej-ink: #0C2240; 
--ej-body: #516175; 

--ej-link: #7F5D23; 
--ej-link-rule: #C6A15B; 
--ej-link-hover: #0C2240; 
}

body { background-color: var(--ej-cream) !important; color: var(--ej-body) !important; }

[style*="#001628"], [style*="#041D35"], [style*="#001E3C"],
[style*="rgb(0, 22, 40)"], [style*="rgb(0,22,40)"] {
background-color: transparent !important;
}
section.trust-section-worry-free, .booklet-section {
background-color: var(--ej-cream) !important;
}

.destination-header-gold, .destination-header-silver,
.lodging-contents, .flights-contents,
.summary-icons, .trip-overview-container,
.ej-faq-quote, .booklet-info, .highlight-carousel-item {
background-color: var(--ej-ivory) !important;
border-color: rgba(12, 34, 64, .10) !important;
}

h2.allheaders-gold, h3.allheaders-gold,
h2.allheaders-silver, h3.allheaders-silver,
h2.trust-title, h3.trust-title,
h2.trust-title-gold, h3.trust-title-gold { color: var(--ej-ink) !important; }

h2.allheaders-silver, h3.allheaders-silver, .trust-title-silver {
background: none !important;
-webkit-text-fill-color: currentColor !important;
}

h3.destination-header-h3-gold, h3.destination-header-h3-silver,
.lodging-contents .lodging-details .h4-gold,
.lodging-contents .lodging-details .h4-silver,
.flight-total-includes-title, .ej-faq-group-title,
.fred-headline-sub, .fred-photo-name-text { color: #7F5D23 !important; }

.trip-overview-icon, .ej-faq-chev,
.destination-header-gold { border-top-color: var(--ej-gold) !important; }

.prices-section .prices-info h4,
.hotels-section .hotels-details h5,.hotels-section .hotels-details h3,
.inlodging-section .inlodging-info h6,
.summary-icons h4,.summary-icons p,.booklet-section .booklet-info p,
.highlight-carousel-title,
.day-header h4,
.fred-headline h3,
.fred-headline h3 em,
.booklet-testimonials-carousel .highlight-carousel-title,
.booklet-cards-section .highlight-carousel-title { color: var(--ej-ink) !important; }
.daybyday-contents,
.daybyday-contents .daybyday-heading ul li span,
.daybyday-contents .daybyday-img ul li a,
.daybyday-contents p,
.daybyday-contents p:nth-child(1),
.lodging-contents .lodging-details ul li,
.flights-section .flights-contents p,
.prices-section .prices-info p,
.hotels-section .hotels-info p,
.hotels-section .hotels-details ul li,
.hotels-section .hotels-note p,
.inlodging-section .inlodging-info p,
.inlodging-contents .inlodging-details p,
.inlodging-section .inlodging-note p,
.wqtours-section .wqtours-info p,
.wqtours-section .wqtours-details p,
.bookinfo_section p,
.highlight-quote,
.highlight-author,
.booklet-section .booklet-title p,
.bookinfo_section span,
.prices-section .prices-contents table td span,
.prices-section .prices-contents table i,
.airfare-price-table .price-amount,
.summary-conts p,
.weather-section .weather-title p,
.tour-slider-nav,.hotel-slider-nav,
.tour-slider-counter,.hotel-slider-counter,
.tour-slider-caption,.hotel-slider-caption,
.activity-description strong,
.transfer-item,
.transfer-item strong,
.free-day-item,
.important-notice,
.ej-slider-nav,
.ej-slider-counter,
.dbd-flight-time,
 body,
 .summary-pg .p,
.notready-bar-lead-text,
a.ej-cat-toggle-btn:hover,
.video-fullscreen-btn,
.video-destination-label,
.fred-photo-name-role,
 .fred-photo-cap,
 .fred-bio-role,
.fred-message,
#fredQuotesModal .modal-title,
#fredQuotesModal .close,
.fred-quote-slide::before,
.fred-quote-text,
.fred-cta-note,
.referencesbtn,
.about-ic,
.booklet-testimonials-carousel .highlight-quote,
.booklet-testimonials-carousel .highlight-author,
.ej-faq summary { color: var(--ej-body) !important; }


.flights-section .flights-contents table th,
.prices-section .prices-contents table th {
background: var(--ej-navy) !important;
color: var(--ej-cream) !important;
border-right: none !important;
border-bottom: 2px solid var(--ej-gold) !important;
font-family: var(--ej-sans) !important;
font-size: 10.5px !important;
font-weight: 800 !important;
letter-spacing: 1.6px !important;
text-transform: uppercase !important;
}

.flights-section .flights-contents table td,
.prices-section .prices-contents table td,
.price-mobile-wrapper .price-mobile-table td {
background: var(--ej-ivory) !important;
color: var(--ej-ink) !important;
border-right: none !important;
border-bottom: 1px solid #E3D8C2 !important; 
}

html { scrollbar-color: var(--ej-brass) transparent; }

.summary-icons, .summary-icons h4, .summary-icons p,
.about-ic, .about-quotes, .item,
.highlight-quote, .highlight-author,
.dest-market-name, .video-testim-subtitle, .carousel-counter {
color: var(--ej-body) !important;
}
h3.highlight-carousel-title, .about-quotes strong { color: var(--ej-ink) !important; }

a.dbdtourbtn-gold, a.dbdtourbtn-silver,
button.gold-light-btn, a.gold-light-btn,
button.silver-light-btn, a.silver-light-btn {
color: #7F5D23 !important;
border-color: var(--ej-gold) !important;
}
a.dbdtourbtn-gold:hover, button.gold-light-btn:hover, a.gold-light-btn:hover {
color: var(--ej-ink) !important;
border-color: var(--ej-brass) !important;
background-color: rgba(198, 161, 91, .10) !important;
}

.about-ic.about-ic.about-ic,
.highlight-quote.highlight-quote.highlight-quote,
.highlight-author.highlight-author.highlight-author { color: var(--ej-body) !important; }
.highlight-carousel-title.highlight-carousel-title.highlight-carousel-title {
color: var(--ej-ink) !important;
}

[style*="color: white"], [style*="color:white"],
[style*="color: #ffffff"], [style*="color:#ffffff"],
[style*="color: #fff;"], [style*="color:#fff;"] { color: var(--ej-body) !important; }


.wq-ticker-item, .trip-overview-details, .trip-overview-heading,
[style*="rgba(255, 255, 255, 0.9)"], [style*="rgba(255,255,255,.9)"] {
color: var(--ej-body) !important;
}
.ej-faq-quote-name, .mdash-desktop { color: #7F5D23 !important; }

.ej-slider-counter, .tour-slider-counter, .tour-slider-caption,
.video-destination-label, .vtc-video-thumb-name, .vtc-video-thumb-quote,
.vtc-video-thumb-info {
color: var(--ej-cream) !important;
}

.flight-total-includes-title { color: var(--ej-gold-light) !important; }

.container-fluid,
.fred-inner,
.highlights-carousel-section,
.trip-overview-container,
.booklet-info,
.booklet-contents,
.wq-ticker-wrap {
max-width: 1180px !important;
margin-left: auto !important;
margin-right: auto !important;
}
.container-fluid, .fred-inner, .highlights-carousel-section {
padding-left: 24px !important;
padding-right: 24px !important;
}

.video-testimonials-section, .video-testim-stage { max-width: none !important; }

.ej-i { width: 18px; height: 18px; vertical-align: -3px; margin-right: 7px; flex: 0 0 auto; }

.ej-slider-wrapper {
float: none !important;
margin: 0 0 18px 0 !important;
width: 100% !important;
}
.ej-media-slider { width: 100% !important; max-width: 100% !important; }
.ej-slider-track {
position: relative !important;
height: auto !important;

padding-bottom: 40% !important;
}
@media screen and (max-width: 768px) {

.ej-slider-track { padding-bottom: 56.25% !important; }
}
.ej-slide { position: absolute !important; top: 0 !important; left: 0 !important; }

@media screen and (min-width: 769px) {
.tour-option-content .ej-slider-wrapper { float: none !important; width: 100% !important; }
}

.ej-navbar-container {
position: fixed !important;
top: 0 !important; left: 0 !important; right: 0 !important;
width: 100% !important;
z-index: 1000;
}
.ej-navbar.ej-tabbar,
.ej-navbar-silver.ej-tabbar {
display: flex !important;
align-items: center !important;
gap: 0 !important;
width: 100% !important;
padding: 0 24px !important;
background: var(--ej-cream) !important; 
border: none !important;
border-bottom: 1px solid rgba(12, 34, 64, .10) !important;
border-radius: 0 !important;
box-shadow: none !important;
}
.ej-tab-crest {
display: inline-flex; align-items: center; justify-content: center;
color: var(--ej-gold); padding: 0 14px 0 0; flex: 0 0 auto; text-decoration: none;
}
.ej-tab-crest:hover { color: var(--ej-brass); }

.ej-tabs {
display: flex; align-items: stretch; gap: 0; min-width: 0; flex: 1 1 auto;
overflow-x: auto; overflow-y: visible;
scrollbar-width: none; -ms-overflow-style: none;
}
.ej-tabs::-webkit-scrollbar { display: none; }
.ej-tab {
font-family: var(--ej-label) !important;
font-size: 12px !important;
font-weight: 400 !important;
letter-spacing: .14em !important;
text-transform: uppercase !important;
color: #5B6B80 !important; 
white-space: nowrap;
padding: 19px 14px 17px !important;
background: none !important;
border: none !important;
border-bottom: 2px solid transparent !important;
text-decoration: none !important;
cursor: pointer;
transition: color 150ms cubic-bezier(.4, 0, .2, 1),
border-color 150ms cubic-bezier(.4, 0, .2, 1);
display: inline-flex; align-items: center; gap: 6px;
}
.ej-tab:hover, .ej-tab:focus-visible { color: var(--ej-ink) !important; }

.ej-tab.is-current {
color: var(--ej-ink) !important;
border-bottom-color: var(--ej-gold) !important;
}

.ej-tab-more { position: relative; display: inline-flex; }
.ej-more-menu {
position: absolute; top: 100%; right: 0; min-width: 244px;
background: var(--ej-ivory);
border: 1px solid rgba(12, 34, 64, .12);
border-radius: 4px;
box-shadow: 0 12px 30px rgba(12, 34, 64, .12);
padding: 7px 0; z-index: 1200;
}
.ej-more-menu[hidden] { display: none !important; }
.ej-more-menu a, .ej-more-menu .ej-more-call {
display: flex; align-items: center; gap: 8px; width: 100%;
padding: 9px 16px; text-align: left;
font-family: var(--ej-sans) !important;
font-size: 14px !important; font-weight: 500;
color: var(--ej-ink) !important;
text-decoration: none !important;
background: none !important; border: none; cursor: pointer;

background-image: none !important;
}
.ej-more-menu a:hover, .ej-more-menu .ej-more-call:hover {
background: rgba(198, 161, 91, .12) !important;
color: var(--ej-ink) !important;
}
.ej-more-menu .ej-more-cta { color: #7F5D23 !important; font-weight: 700; }
.ej-more-sep { height: 1px; background: rgba(12, 34, 64, .10); margin: 7px 0; }
.ej-more-translate { padding: 6px 16px 2px; }

body { padding-top: var(--ejBarH, 56px) !important; }
html { scroll-padding-top: calc(var(--ejBarH, 56px) + 12px) !important; }

#ejSidebar { display: none !important; }
@media screen and (max-width: 768px) {
.ej-navbar.ej-tabbar, .ej-navbar-silver.ej-tabbar { padding: 0 10px !important; }
.ej-tab { font-size: 11px !important; padding: 15px 10px 13px !important; letter-spacing: .12em !important; }
.ej-tab-crest { padding-right: 8px; }
}

.ej-navbar.ej-tabbar .ej-tab-more { flex: 0 0 auto; margin-left: auto; }

.ej-flight-table { border-collapse: collapse !important; }
.ej-flight-table th {
text-align: left !important;
padding: 12px 14px !important;
vertical-align: bottom !important;
}
.ej-flight-table th.t, .ej-flight-table td.t {
text-align: right !important;
font-variant-numeric: tabular-nums;
white-space: nowrap;
}
.ej-flight-table td {
padding: 13px 14px !important;
vertical-align: top !important;
font-size: 14.5px !important;
text-align: left !important;
min-width: 0 !important; 
}

.ej-flight-table td.date { white-space: nowrap; }
.ej-flight-table .dow {
display: block;
font-family: var(--ej-sans);
font-size: 10.5px; font-weight: 800;
letter-spacing: 1.4px; text-transform: uppercase;
color: #7F5D23;
}
.ej-flight-table .city { font-weight: 700; color: var(--ej-ink); }
.ej-flight-table .clar { display: block; font-size: 11.5px; color: var(--ej-body); }
.ej-flight-table td.dur { color: var(--ej-ink); font-weight: 700; }
.ej-flight-table td.fl { white-space: nowrap; font-weight: 700; color: var(--ej-ink); }
.ej-flight-table .al { display: block; font-size: 11px; font-weight: 400; color: var(--ej-body); }

.ej-flight-table sup.plus { color: #7F5D23; font-size: 10px; font-weight: 800; }
.vh { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }

.ej-flight-table tr:first-child th:first-child,
.ej-flight-table tr:first-child th:last-child,
.ej-flight-table tr:last-child td:first-child,
.ej-flight-table tr:last-child td:last-child { border-radius: 0 !important; }
@media screen and (max-width: 768px) {

body .ej-flight-table td { font-size: 13.5px !important; padding: 10px 8px !important; }
body .ej-flight-table th { font-size: 9.5px !important; padding: 9px 8px !important; letter-spacing: 1px !important; }
body .ej-flight-table .clar, body .ej-flight-table .al { font-size: 10px !important; }
body .ej-flight-table .dow { font-size: 9.5px !important; }
}

.flights-section .flights-contents { max-width: 1180px !important; }
.flights-section .flights-contents .ej-flight-table { max-width: none !important; min-width: 0 !important; }

.ej-wx-card {
display: flex; align-items: center; justify-content: space-between; gap: 18px;
background: var(--ej-ivory);
border: 1px solid rgba(12, 34, 64, .08);
border-radius: 4px;
padding: 14px 18px;
margin: 0 0 10px;
}
.ej-wx-place { flex: 0 0 auto; min-width: 168px; text-align: left; }
.ej-wx-dest {
display: block;
font-family: var(--ej-serif); font-style: italic; font-weight: 600;
font-size: 21px; line-height: 1.15; color: var(--ej-ink);
}
.ej-wx-month {
display: block;
font-family: var(--ej-sans); font-size: 10.5px; font-weight: 800;
letter-spacing: 1.5px; text-transform: uppercase; color: #7F5D23;
margin-top: 3px;
}
.ej-wx-tiles { display: flex; gap: 8px; flex: 1 1 auto; justify-content: flex-end; flex-wrap: wrap; }
.ej-wx-tile {
flex: 0 0 118px; display: flex; flex-direction: column; align-items: center;
gap: 2px; text-align: center;
}
.ej-wx-ico { color: var(--ej-gold); line-height: 0; }
.ej-wx-val {
font-family: var(--ej-sans); font-size: 13.5px; font-weight: 700;
color: var(--ej-ink); white-space: nowrap; font-variant-numeric: tabular-nums;
}
.ej-wx-lab {
font-family: var(--ej-sans); font-size: 9.5px; font-weight: 700;
letter-spacing: 1px; text-transform: uppercase; color: var(--ej-body);
}

.weather-section .weather-contents { max-width: 760px !important; margin: 0 auto !important; }
@media screen and (max-width: 768px) {

.ej-wx-card { flex-direction: column; align-items: flex-start; gap: 12px; }
.ej-wx-tiles { justify-content: flex-start; width: 100%; }
.ej-wx-tile { flex: 1 1 calc(50% - 8px); }
body .ej-wx-val { font-size: 13px !important; }
body .ej-wx-lab { font-size: 9px !important; }
}

.modal-overlay .allheaders-gold, .modal-overlay .allheaders-silver,
.modal-overlay h3, .modal-overlay h4, .modal-overlay h5,
.video-modal-overlay h3, .video-modal-overlay h4 {
color: var(--ej-gold-light) !important;
background: none !important;
-webkit-text-fill-color: currentColor !important;
}
.modal-overlay, .modal-overlay p, .modal-overlay li, .modal-overlay span,
.modal-overlay div:not(.ej-wx-card):not([class*="ej-wx"]) {
color: #E6EBF2;
}

.modal-overlay .ej-wx-card, .modal-overlay .ej-wx-card * { color: inherit; }
.modal-overlay .ej-wx-dest, .modal-overlay .ej-wx-val { color: var(--ej-ink) !important; }
.modal-overlay .ej-wx-lab { color: var(--ej-body) !important; }
.modal-overlay .ej-wx-month { color: #7F5D23 !important; }
.modal-overlay .ej-wx-ico { color: var(--ej-gold) !important; }


.modal-overlay p:not(.ej-wx-card *),
.modal-overlay li:not(.ej-wx-card *),
.modal-overlay span:not(.ej-wx-card *),
.modal-overlay td:not(.ej-wx-card *),
.modal-overlay th:not(.ej-wx-card *),
.modal-overlay h6:not(.ej-wx-card *),
.modal-overlay div:not(.ej-wx-card):not(.ej-wx-card *) {
color: #E6EBF2 !important;
}
.modal-overlay .ej-wx-dest, .modal-overlay .ej-wx-val { color: var(--ej-ink) !important; }
.modal-overlay .ej-wx-lab { color: var(--ej-body) !important; }
.modal-overlay .ej-wx-month { color: #7F5D23 !important; }
.modal-overlay .ej-wx-ico { color: var(--ej-gold) !important; }

svg.ej-lucide { width: 1em; height: 1em; display: inline-block; vertical-align: -0.13em; flex: 0 0 auto; }
.trip-overview-icon svg.ej-lucide { width: 1em; height: 1em; }

.ej-exp, .ej-exp-head, .ej-exp-list, .ej-exp-more { text-align: left !important; }
.ej-exp-more { margin-left: 0 !important; }

.ej-hero-scrim {
background: linear-gradient(to bottom,
rgba(12,34,64,0.62) 0%,
rgba(12,34,64,0.30) 28%,
rgba(12,34,64,0.68) 62%,
rgba(12,34,64,0.90) 82%,
rgba(12,34,64,0.97) 100%) !important;
}
.ej-hero-eyebrow, .ej-hero-title, .ej-hero-sub {
text-shadow: 0 1px 20px rgba(12, 34, 64, .55), 0 1px 3px rgba(12, 34, 64, .35);
}

.tour-image-wrapper img, .hotel-image-wrapper img {
border: none !important;
border-radius: 4px !important;
box-shadow: 0 1px 0 rgba(12, 34, 64, .10), 0 10px 28px rgba(12, 34, 64, .10) !important;
}
.tour-slider-track, .hotel-slider-track,
.trip-summary-slider-wrapper, .ej-media-slider { border-radius: 4px !important; }

.trip-summary-gallery { background: var(--ej-cream) !important; }

.ej-sechead { max-width: 1180px; margin: 0 auto; padding: 34px 24px 12px; text-align: left; }
.ej-sechead-kicker {
font-family: var(--ej-sans); font-size: 12.5px; font-weight: 600;
letter-spacing: .22em; text-transform: uppercase; color: #7F5D23;
}
.ej-sechead-title {
font-family: var(--ej-serif); font-size: clamp(34px, 4.4vw, 52px);
font-weight: 500; line-height: 1.04; color: var(--ej-ink);
margin: 14px 0 0; text-wrap: balance;
font-variant-numeric: lining-nums;
}


body .flight-total-includes-title,
body .flight-total-includes-title span,
body .airfare-benefits-list li,
body .airfare-benefits-list li i,
body .airfare-benefits-list li svg { color: var(--ej-gold-light) !important; }

.price-mobile-table-header.price-mobile-table-header.price-mobile-table-header {
background: var(--ej-navy) !important;
color: var(--ej-cream) !important;
border-bottom: 2px solid var(--ej-gold) !important;
}

.airfare-price-table, .airfare-price-table td,
.airfare-price-table tr, .price-mobile-text, .ej-flight-rows {
background-color: var(--ej-navy) !important;
}
.airfare-price-table td, .airfare-price-table span, .airfare-price-table p,
.price-mobile-text, .price-mobile-text span,
.ej-flight-rows, .ej-flight-rows span,
.airfare-benefits-list li, .flight-total-includes-title,
.flight-total-includes-title span { color: var(--ej-gold-light) !important; }
.airfare-price-table .price-amount { color: var(--ej-cream) !important; }

.price-mobile-wrapper .flight-total-includes-title,
.price-mobile-wrapper .flight-total-includes-title span,
.price-mobile-wrapper .flight-total-includes li,
.price-mobile-wrapper .airfare-benefits-list li {
color: #7F5D23 !important;
}


.price-mobile-wrapper .price-mobile-table .price-mobile-table-header,
.price-mobile-wrapper .price-mobile-table > tbody > tr > th.price-mobile-table-header:not(.ej-never) {
color: var(--ej-ink) !important;
font-weight: 700 !important;
}


.tour-slider-nav, .ej-slider-nav, .video-fullscreen-btn,
.highlight-nav-button, .carousel-nav:not([data-carousel-id]) button {
background: rgba(247, 243, 236, .92) !important;
color: var(--ej-ink) !important;
border: none !important;
box-shadow: 0 2px 10px rgba(12, 34, 64, .22) !important;
transition: background 160ms ease, transform 160ms ease !important;
}
.tour-slider-nav:hover, .ej-slider-nav:hover,
.video-fullscreen-btn:hover, .highlight-nav-button:hover {
background: var(--ej-cream) !important;
color: var(--ej-ink) !important;

}
.tour-slider-nav svg, .ej-slider-nav svg, .video-fullscreen-btn svg,
.highlight-nav-button svg, .carousel-nav button svg { color: var(--ej-ink) !important; }

.tour-slider-counter, .ej-slider-counter {
background: rgba(12, 34, 64, .82) !important;
color: var(--ej-cream) !important;
border-radius: 4px !important;
font-family: var(--ej-sans) !important;
font-variant-numeric: tabular-nums;
}

.tour-image-wrapper img, .hotel-image-wrapper img {
border-left: 6px solid var(--ej-cream) !important;
border-right: 6px solid var(--ej-cream) !important;
border-top: none !important;
border-bottom: none !important;
}

h2.allheaders-gold, h3.allheaders-gold,
h2.allheaders-silver, h3.allheaders-silver,
h2.trust-title, h3.trust-title, h2.trust-title-gold, h3.trust-title-gold,
.ej-sechead-title {
font-size: clamp(34px, 4.4vw, 52px) !important;
font-weight: 500 !important;
line-height: 1.04 !important;
}

.day-header {
background: var(--ej-ivory) !important;
border-top: 1px solid rgba(198, 161, 91, .45) !important;
border-bottom: 1px solid rgba(12, 34, 64, .07) !important;
}
.day-header h4 { color: var(--ej-ink) !important; }

.fred-banner-section::before, .daybyday-section::before, .lodging-section::before,
.meals-section::before, .transport-section::before, .weather-section-webquote::before,
.reviews-section::before, .trust-section-worry-free::before, .flights-section::before,
.booklet-section::before, .prices-section::before, .policy-section::before,
.video-testimonials-section::before, .tsummary-section::before {
display: none !important;
content: none !important;
}

.daybyday-section, .flights-section, .booklet-section, .prices-section {
background: var(--ej-ivory) !important;
}
.tsummary-section, .lodging-section, .reviews-section, .policy-buttons-section {
background: var(--ej-cream) !important;
}

.fred-section, .video-testimonials-section, .trust-section-worry-free {
width: 100vw !important;
margin-left: calc(-50vw + 50%) !important;
margin-right: calc(-50vw + 50%) !important;
max-width: none !important;
}

.fred-section { position: relative; background-color: var(--ej-navy) !important; }
.fred-section::after {
content: ''; position: absolute; inset: 0; z-index: 0; pointer-events: none;
background: linear-gradient(to bottom, rgba(12,34,64,.86), rgba(12,34,64,.93));
}
.fred-section > * { position: relative; z-index: 1; }
.fred-section, .fred-section p, .fred-section li, .fred-section div,
.fred-inner, .fred-inner p, .fred-quote-author, .fred-photo-cap, .fred-cta-note {
color: #E6EBF2 !important;
}
.fred-headline h3, .fred-headline h3 em { color: var(--ej-cream) !important; }
.fred-headline-sub, .fred-photo-name-text { color: var(--ej-gold-light) !important; }
.fred-quotes-link { color: var(--ej-gold-light) !important; }

.video-testimonials-section { background: var(--ej-navy) !important; padding: 48px 0 40px !important; }
.video-testim-wrap { border: none !important; box-shadow: 0 16px 44px rgba(0,0,0,.45) !important; border-radius: 6px !important; }
.video-testimonials-section .allheaders-gold,
.video-testimonials-section .allheaders-silver { color: var(--ej-gold-light) !important; }
.video-testim-subtitle { color: #C9D4E2 !important; }
.vtc-polaroid-name { color: var(--ej-ink) !important; }

html, body, * { scrollbar-width: thin; }
html, body { scrollbar-color: var(--ej-brass) transparent; }
.modal-overlay, .modal-overlay *, .transfer-modal-content, .meals-modal-content,
.video-modal-content, iframe, .ej-faq, .fred-section, .fred-section *,
.video-testimonials-section, .video-testimonials-section * {
scrollbar-color: var(--ej-gold-light) transparent;
}

.ej-slider-buttons {
display: block !important;
text-align: left !important;
margin: 4px 0 10px !important;
width: auto !important;
}
.ej-slider-buttons a.dbdtourbtn-gold,
.ej-slider-buttons a.dbdtourbtn-silver,
.ej-slider-buttons a.dbdtourbtn {
display: inline-flex !important;
width: auto !important;
max-width: none !important;
padding: 9px 18px !important;
border: 1px solid var(--ej-gold) !important;
border-radius: 4px !important;
background: none !important;
color: #7F5D23 !important;
font-family: var(--ej-sans) !important;
font-size: 13px !important;
font-weight: 700 !important;
letter-spacing: .04em !important;
text-decoration: none !important;
background-image: none !important; 
}
.ej-slider-buttons a:hover {
background: rgba(198, 161, 91, .12) !important;
color: var(--ej-ink) !important;
border-color: var(--ej-brass) !important;
}

.prices-section .prices-contents table th {
text-transform: none !important;
font-size: 15px !important;
font-weight: 400 !important;
letter-spacing: normal !important;
background: transparent !important;
border-bottom: none !important;
text-align: left !important;
line-height: 1.55 !important;
}

.prices-section .prices-contents table > tbody > tr:nth-child(2) > th {
font-family: var(--ej-sans) !important;
font-size: 10.5px !important;
font-weight: 800 !important;
letter-spacing: 1.6px !important;
text-transform: uppercase !important;
border-bottom: 2px solid var(--ej-gold) !important;
}

.prices-section .prices-contents table > tbody > tr:first-child > th {
font-family: var(--ej-sans) !important;
font-size: 14px !important;
color: var(--ej-gold-light) !important;
text-align: center !important;
padding-bottom: 14px !important;
}

.airfare-price-table td, .airfare-price-table th {
text-transform: none !important;
letter-spacing: normal !important;
font-size: 15px !important;
font-weight: 400 !important;
line-height: 1.6 !important;
text-align: left !important;
}
.airfare-price-table .price-amount {
font-family: var(--ej-serif) !important;
font-size: 26px !important;
font-weight: 600 !important;
}
.airfare-benefits-list li { line-height: 1.6 !important; margin-bottom: 6px !important; }

.dbd-flight-desktop, .dbd-flight-mobile {
background: var(--ej-cream) !important;
border: 1px solid rgba(12, 34, 64, .10) !important;
border-left: 3px solid var(--ej-gold) !important;
border-radius: 4px !important;
padding: 12px 16px !important;
margin: 12px 0 !important;
}
.dbd-flight-desktop, .dbd-flight-desktop *, .dbd-flight-mobile, .dbd-flight-mobile * {
color: var(--ej-ink) !important;
}
.dbd-flight-time, .dbd-flight-desktop .dbd-flight-time {
font-family: var(--ej-sans) !important;
font-weight: 700 !important;
font-variant-numeric: tabular-nums;
}
.dbd-flight-airport { color: var(--ej-body) !important; font-size: 13.5px !important; }
.dbd-flight-number { color: #7F5D23 !important; font-weight: 600 !important; }
.dbd-flight-arrow { color: var(--ej-gold) !important; }
.dbd-flight-label, a.dbd-flight-label { color: #7F5D23 !important; }

.booklet-contents, .booklet-info, .about-conts {
background: transparent !important;
}
.booklet-testimonials-carousel, .highlight-carousel-item {
background: var(--ej-cream) !important;
border: 1px solid rgba(12, 34, 64, .09) !important;
border-radius: 4px !important;
}
.ej-faq { background: transparent !important; }
.ej-faq summary {
background: var(--ej-cream) !important;
border: 1px solid rgba(12, 34, 64, .10) !important;
border-radius: 4px !important;
padding: 14px 18px !important;
margin-bottom: 8px !important;
color: var(--ej-ink) !important;
font-family: var(--ej-sans) !important;
font-weight: 600 !important;
}
.ej-faq summary:hover { background: var(--ej-ivory) !important; border-color: rgba(198,161,91,.45) !important; }
.ej-faq-group-title {
font-family: var(--ej-sans) !important;
font-size: 12.5px !important; font-weight: 600 !important;
letter-spacing: .22em !important; text-transform: uppercase !important;
color: #7F5D23 !important; margin: 26px 0 10px !important;
}
.ej-faq-quote {
background: var(--ej-ivory) !important;
border-left: 3px solid var(--ej-gold) !important;
border-radius: 0 4px 4px 0 !important;
padding: 12px 16px !important;
}

.reviews-section, .trust-section, .trust-section-worry-free {
padding: 52px 0 46px !important;
}
.trust-section-worry-free {
background-color: var(--ej-navy) !important;
}
.trust-section-worry-free .trust-title,
.trust-section-worry-free .trust-title-gold,
.trust-section-worry-free h2, .trust-section-worry-free h3 {
color: var(--ej-cream) !important;
background: none !important; 
-webkit-text-fill-color: currentColor !important;
}
.trust-section-worry-free p, .trust-section-worry-free li,
.trust-section-worry-free div:not(.highlight-carousel-item) { color: #D7DFEA !important; }
.trust-section-worry-free .highlight-carousel-item {
background-color: rgba(255, 255, 255, .06) !important;
border: 1px solid rgba(220, 195, 138, .22) !important;
}
.trust-section-worry-free .highlight-carousel-title { color: var(--ej-gold-light) !important; }
.trust-section-worry-free .highlight-quote,
.trust-section-worry-free .highlight-author { color: #D7DFEA !important; }

.prices-section, .prices-section .prices-contents,
.prices-section .prices-contents table,
.prices-section .prices-contents table td,
.prices-section .prices-contents table th,
.airfare-price-table, .airfare-price-table td, .airfare-price-table th,
.airfare-price-table tr, .price-mobile-text, .ej-flight-rows,
.flight-total-includes {
background: transparent !important;
background-color: transparent !important;
}
.prices-section .prices-contents table th,
.prices-section .prices-contents table td,
.airfare-price-table td, .airfare-price-table th,
.airfare-price-table p, .airfare-price-table span,
.airfare-benefits-list li, .price-mobile-text, .price-mobile-text span,
.ej-flight-rows, .ej-flight-rows span {
color: var(--ej-body) !important;
}
.prices-section .prices-contents table > tbody > tr:nth-child(2) > th,
.flight-total-includes-title, .flight-total-includes-title span,
.airfare-price-table .price-amount,
.prices-section .prices-contents table > tbody > tr:first-child > th {
color: #7F5D23 !important;
}

.prices-section .prices-contents table td {
font-family: var(--ej-sans) !important;
color: var(--ej-ink) !important;
}

.airfare-price-table {
background-color: var(--ej-cream) !important;
border: 1px solid rgba(12, 34, 64, .10) !important;
border-radius: 4px !important;
}
.airfare-benefits-list li svg, .airfare-benefits-list li i,
.luggage-icon-gold, .airplane-seat-icon-gold { color: var(--ej-gold) !important; }

.reviews-section .trust-title, .reviews-section .trust-title-gold,
.reviews-section h2, .reviews-section h3,
.trust-section:not(.trust-section-worry-free) .trust-title,
.trust-section:not(.trust-section-worry-free) h2 {
color: var(--ej-ink) !important;
background: none !important; 
-webkit-text-fill-color: currentColor !important;
}
.reviews-section p, .reviews-section li,
.reviews-section .highlight-quote, .reviews-section .highlight-author,
.trust-section:not(.trust-section-worry-free) p {
color: var(--ej-body) !important;
}
.reviews-section .highlight-carousel-item,
.trust-section:not(.trust-section-worry-free) .highlight-carousel-item {
background-color: var(--ej-cream) !important;
border: 1px solid rgba(12, 34, 64, .09) !important;
}
.reviews-section .highlight-carousel-title { color: var(--ej-ink) !important; }

.fred-section .fred-photo-name-role,
.fred-section .fred-photo-cap, .fred-section .fred-quote-author,
.fred-section span:not(.fred-photo-name-text),
.fred-section small { color: #C9D4E2 !important; }

.fred-section .fred-cta-btn, a.fred-cta-btn.fred-cta-btn.fred-cta-btn {
background-image: linear-gradient(135deg, var(--ej-gold), var(--ej-brass)) !important;
background-color: var(--ej-gold) !important;
border-radius: 4px !important;
}
.fred-section .fred-cta-btn, .fred-section .fred-cta-btn svg,
a.fred-cta-btn.fred-cta-btn.fred-cta-btn { color: var(--ej-navy) !important; }

body .flight-total-includes-title,
body .flight-total-includes-title span,
body .airfare-benefits-list li,
body .airfare-price-table td, body .airfare-price-table th,
body .airfare-price-table span, body .airfare-price-table p {
color: var(--ej-body) !important;
}
body .flight-total-includes-title, body .flight-total-includes-title span {
color: #7F5D23 !important;
font-weight: 700 !important;
}

section.trust-section-worry-free, div.trust-section-worry-free {
background-color: var(--ej-navy) !important;
background-color: var(--ej-navy) !important;
}
section.trust-section-worry-free .trust-title,
section.trust-section-worry-free h2, section.trust-section-worry-free h3,
section.trust-section-worry-free .comma-mobile,
section.trust-section-worry-free .mdash-desktop {
color: var(--ej-cream) !important;
background: none !important; 
-webkit-text-fill-color: currentColor !important;
}
section.trust-section-worry-free p,
section.trust-section-worry-free li,
section.trust-section-worry-free span:not(.mdash-desktop) { color: #D7DFEA !important; }


:root { --ej-vw: 100vw; }
.tsummary-infos, section#dbd, section#hotels, section#flights,
#weather.flights-section.weather,
section#fred.fred-section, section#video, section#reviews,
section.trust-section-worry-free, section#tb, section#price, section#faq {
box-sizing: border-box !important;
width: var(--ej-vw, 100vw) !important;
max-width: none !important;
margin-left: calc(50% - var(--ej-vw, 100vw) / 2) !important;
margin-right: calc(50% - var(--ej-vw, 100vw) / 2) !important;
padding-left: max(20px, calc((var(--ej-vw, 100vw) - 1180px) / 2)) !important;
padding-right: max(20px, calc((var(--ej-vw, 100vw) - 1180px) / 2)) !important;
}

:root { --ej-parchment: #F3ECE0; }
.tsummary-infos { background: var(--ej-ivory) !important; }
section#dbd { background: var(--ej-cream) !important; }
section#hotels { background: var(--ej-parchment) !important; }
section#flights { background: var(--ej-ivory) !important; }
#weather.flights-section.weather { background: var(--ej-cream) !important; }
section#video { background: var(--ej-midnight) !important; }
section#reviews { background: var(--ej-parchment) !important; }
section.trust-section-worry-free { background-color: var(--ej-navy) !important; }
section#tb { background: var(--ej-ivory) !important; }
section#price { background: var(--ej-cream) !important; }
section#faq { background: var(--ej-parchment) !important; }

.tsummary-section, .daybyday-section, .lodging-section, .meals-section,
.transport-section, .flights-section, .policy-buttons-section,
.booklet-section, .prices-section, .video-testimonials-section,
.trust-section, .about-conts, .booklet-conts, .flights-contents,
.summary-conts, .wrapperbox_middleonly, .container-fluid, .summary-holder {
background: transparent !important;
}

#weather.flights-section.weather { background: var(--ej-cream) !important; }

.tsummary-infos, section#hotels, section#flights, section#tb,
section#price, section#faq, section#reviews,
section.trust-section-worry-free, section#video {
padding-top: 52px !important;
padding-bottom: 52px !important;
}
section#dbd { padding-top: 8px !important; padding-bottom: 40px !important; }
#weather.flights-section.weather { padding-top: 40px !important; padding-bottom: 44px !important; }
.policy-buttons-section { padding-top: 4px !important; padding-bottom: 0 !important; }
@media (max-width: 768px) {
.tsummary-infos, section#hotels, section#flights, section#tb,
section#price, section#faq, section#reviews,
section.trust-section-worry-free, section#video {
padding-top: 36px !important;
padding-bottom: 36px !important;
}
}

@media print {
.tsummary-infos, section#dbd, section#hotels, section#flights,
#weather.flights-section.weather, section#fred.fred-section, section#video,
section#reviews, section.trust-section-worry-free, section#tb,
section#price, section#faq {
width: auto !important;
margin-left: 0 !important;
margin-right: 0 !important;
padding-left: 0 !important;
padding-right: 0 !important;
background: #fff !important;
}
}

.ej-flight-table { table-layout: fixed !important; width: 100% !important; }
.ej-flight-table th,
.ej-flight-table td,
.ej-flight-table th.t, .ej-flight-table td.t,
.ej-flight-table td.dur, .ej-flight-table td.date, .ej-flight-table td.fl {
text-align: left !important;
}
.ej-flight-table th:nth-child(1), .ej-flight-table td:nth-child(1) { width: 15% !important; }
.ej-flight-table th:nth-child(2), .ej-flight-table td:nth-child(2) { width: 17% !important; }
.ej-flight-table th:nth-child(3), .ej-flight-table td:nth-child(3) { width: 17% !important; }
.ej-flight-table th:nth-child(4), .ej-flight-table td:nth-child(4) { width: 12% !important; }
.ej-flight-table th:nth-child(5), .ej-flight-table td:nth-child(5) { width: 12% !important; }
.ej-flight-table th:nth-child(6), .ej-flight-table td:nth-child(6) { width: 11% !important; }
.ej-flight-table th:nth-child(7), .ej-flight-table td:nth-child(7) { width: 16% !important; }

.ej-flight-table td.t, .ej-flight-table td.dur { font-variant-numeric: tabular-nums; }

section#fred.fred-section, .fred-section, .fred-breakout {
border-radius: 0 !important;
overflow: hidden;
}
.fred-section::after { border-radius: 0 !important; }

.fred-cta-btn, a.fred-cta-btn {
display: inline-flex !important;
align-items: center !important;
justify-content: center !important;
gap: 10px !important;
width: auto !important;
padding: 15px 30px !important;
background: var(--ej-gold) !important;
color: var(--ej-navy) !important;
border: 1px solid var(--ej-gold) !important;
border-radius: 2px !important;
font-family: var(--ej-label) !important;
font-size: 13.5px !important;
font-weight: 400 !important;
letter-spacing: .16em !important;
text-transform: uppercase !important;
text-decoration: none !important;
background-image: none !important;
box-shadow: none !important;
transition: background-color 180ms ease, color 180ms ease, border-color 180ms ease !important;
}
.fred-cta-btn:hover, a.fred-cta-btn:hover,
.fred-cta-btn:focus-visible, a.fred-cta-btn:focus-visible {
background: transparent !important;
color: var(--ej-gold-light) !important;
border-color: var(--ej-gold-light) !important;
}
.fred-cta-btn svg, .fred-cta-btn i { flex: none; }
.fred-cta-btn:hover svg { color: var(--ej-gold-light) !important; }

.video-testimonials-section .allheaders-gold,
.video-testimonials-section .allheaders-silver,
.video-testimonials-section .ej-sechead-title,
.video-testim-subtitle {
text-align: center !important;
margin-left: auto !important;
margin-right: auto !important;
}
.video-testimonials-section { padding-left: 0 !important; padding-right: 0 !important; }

.trip-overview-container > .ej-exp {
grid-column: 1 / -1 !important;
margin: 0 0 6px !important;
padding-bottom: 18px !important;
border-bottom: 1px solid rgba(198, 161, 91, .30) !important;
max-width: none !important;
}

.ej-sectionhead { max-width: 700px; margin: 0 auto; text-align: center; }
.ej-sectionhead-kicker {
font-family: var(--ej-label);
font-size: 12.5px;
line-height: 1.2;
text-transform: uppercase;
letter-spacing: .3em;
}
.ej-sectionhead-rule {
display: block;
width: 56px;
height: 1px;
margin: 14px auto 0;
}
h2.ej-sectionhead-title, .ej-sectionhead-title {
margin: 14px 0 0 !important;
font-family: var(--ej-serif) !important;
font-size: clamp(34px, 4.4vw, 52px) !important;
font-weight: 500 !important;
line-height: 1.04 !important;
text-align: center !important;
text-wrap: balance;
background: none !important;
-webkit-text-fill-color: currentColor !important;
}
.ej-sectionhead-lead {
margin: 18px auto 0 !important;
max-width: 62ch;
font-family: var(--ej-sans) !important;
font-size: 16px !important;
line-height: 1.6 !important;
text-align: center !important;
}

.ej-sectionhead--alt .ej-sectionhead-kicker { color: var(--ej-navy); }
.ej-sectionhead--alt .ej-sectionhead-rule { background: rgba(184, 146, 74, .60); }
.ej-sectionhead--alt .ej-sectionhead-title { color: var(--ej-navy) !important; }
.ej-sectionhead--dark .ej-sectionhead-kicker { color: var(--ej-gold-light); }
.ej-sectionhead--dark .ej-sectionhead-rule { background: rgba(220, 195, 138, .60); }
.ej-sectionhead--dark .ej-sectionhead-title { color: var(--ej-cream) !important; }
.ej-sectionhead--dark .ej-sectionhead-lead { color: #C9D4E2 !important; }
.ej-band { display: block; }
.ej-band-inner { max-width: 1180px; margin: 0 auto; }

section.trust-section.ej-band { padding: 0 !important; background: transparent !important; }
section.trust-section.ej-band::before { display: none !important; content: none !important; }

.ej-tc-grid {
display: grid;
grid-template-columns: 1fr;
align-items: stretch;
gap: 40px;
margin-top: 48px;
}
@media (min-width: 1024px) { .ej-tc-grid { grid-template-columns: repeat(3, 1fr); } }
.ej-tc {
display: flex;
flex-direction: column;
height: 100%;
overflow: hidden;
border-radius: 6px;
border: 1px solid transparent;
}
.ej-tc--light { border-color: rgba(184, 146, 74, .30); background: var(--ej-ivory); }
.ej-tc--dark { border-color: rgba(255, 255, 255, .10); background: var(--ej-navy);
box-shadow: 0 18px 44px rgba(0, 0, 0, .38); }

.ej-tc-photos { position: relative; height: 192px; flex: none; overflow: hidden; background: rgba(12, 34, 64, .06); }
.ej-tc--dark .ej-tc-photos { background: rgba(255, 255, 255, .05); }
.ej-tc-photo { position: absolute; inset: 0; opacity: 0; transition: opacity 400ms ease; }
.ej-tc-photo.is-on { opacity: 1; }
.ej-tc-photo img {
width: 100%; height: 100%; object-fit: cover; display: block;
border: 0 !important; border-radius: 0 !important;
transition: transform 700ms ease;
}
.ej-tc:hover .ej-tc-photo.is-on img { transform: scale(1.03); }
.ej-tc-body { display: flex; flex-direction: column; flex: 1; padding: 28px; }
.ej-tc-eyebrow { display: flex; align-items: center; gap: 12px; }
.ej-tc-num {
flex: none;
font-family: var(--ej-label);
font-size: 11px;
line-height: 1;
letter-spacing: .3em;
font-variant-numeric: lining-nums;
font-feature-settings: "lnum" 1;
}
.ej-tc-rule { height: 1px; flex: 1; transition: background-color 300ms ease; }
.ej-tc--light .ej-tc-num { color: rgba(12, 34, 64, .75); }
.ej-tc--light .ej-tc-rule { background: rgba(184, 146, 74, .35); }
.ej-tc--light:hover .ej-tc-rule { background: rgba(12, 34, 64, .35); }
.ej-tc--dark .ej-tc-num { color: var(--ej-gold-light); }
.ej-tc--dark .ej-tc-rule { background: rgba(255, 255, 255, .15); }
.ej-tc--dark:hover .ej-tc-rule { background: rgba(198, 161, 91, .50); }

.ej-tc-labels { display: grid; }
h3.ej-tc-label, .ej-tc-label {
margin: 12px 0 0 !important;
font-family: var(--ej-serif) !important;
font-size: 15px !important;
font-weight: 600 !important;
line-height: 1.3 !important;
text-transform: uppercase !important;
letter-spacing: .05em !important;
text-align: left !important;
text-wrap: pretty;
background: none !important;
-webkit-text-fill-color: currentColor !important;
}
.ej-tc-stack { grid-column: 1; grid-row: 1; opacity: 0; pointer-events: none; transition: opacity 300ms ease; }
.ej-tc-stack.is-on { opacity: 1; pointer-events: auto; }
.ej-tc--light .ej-tc-label { color: var(--ej-navy) !important; }
.ej-tc--dark .ej-tc-label { color: var(--ej-cream) !important; }
.ej-tc-stories { display: grid; flex: 1; margin-top: 20px; }
.ej-tc-story { grid-column: 1; grid-row: 1; opacity: 0; pointer-events: none; transition: opacity 300ms ease; }
.ej-tc-story.is-on { opacity: 1; pointer-events: auto; }
blockquote.ej-tc-quote, .ej-tc-quote {
margin: 0 !important;
padding: 0 !important;
border: 0 !important;
background: none !important;
font-family: var(--ej-serif) !important;
font-size: 20px !important;
font-style: italic !important;
font-weight: 400 !important;
line-height: 1.375 !important;
text-align: left !important;
quotes: none;
}
.ej-tc-quote::before, .ej-tc-quote::after { content: none !important; }
.ej-tc--light .ej-tc-quote { color: var(--ej-navy) !important; }
.ej-tc--dark .ej-tc-quote { color: var(--ej-cream) !important; }

.ej-tc-credit { display: flex; align-items: stretch; gap: 10px; margin-top: 20px; }
.ej-tc-tick { flex: none; width: 2px; align-self: stretch; border-radius: 999px; transition: background-color 300ms ease; }
.ej-tc-who { min-width: 0; }
.ej-tc-name {
display: block;
font-family: var(--ej-sans);
font-size: 12.5px;
line-height: 1.35;
text-transform: uppercase;
letter-spacing: .1em;
}

.ej-tc-loc {
display: block;
margin-top: 4px;
font-family: var(--ej-sans);
font-size: 12.5px;
line-height: 1.375;
letter-spacing: .02em;
}
.ej-tc--light .ej-tc-tick { background: var(--ej-gold); }
.ej-tc--light:hover .ej-tc-tick { background: var(--ej-brass); }
.ej-tc--light .ej-tc-name { color: var(--ej-slate); }

.ej-tc--light .ej-tc-loc { color: #656F7C; }
.ej-tc--dark .ej-tc-tick { background: var(--ej-gold-light); }
.ej-tc--dark:hover .ej-tc-tick { background: var(--ej-gold); }
.ej-tc--dark .ej-tc-name { color: var(--ej-mist); }
.ej-tc--dark .ej-tc-loc { color: var(--ej-silver); }

.ej-tc-pager { display: flex; align-items: center; justify-content: space-between; margin-top: 24px; padding-top: 16px; border-top: 1px solid transparent; }
.ej-tc--light .ej-tc-pager { border-top-color: rgba(184, 146, 74, .25); }
.ej-tc--dark .ej-tc-pager { border-top-color: rgba(255, 255, 255, .10); }
button.ej-tc-arrow, .ej-tc-arrow {
display: inline-flex !important;
align-items: center !important;
justify-content: center !important;
width: 44px !important; height: 44px !important;
flex: none !important;
padding: 0 !important;
border-radius: 50% !important;
border: 1px solid transparent !important;
background: transparent !important;
box-shadow: none !important;
cursor: pointer;
transition: background-color 200ms ease, color 200ms ease, border-color 200ms ease !important;
}

.ej-tc--light .ej-tc-arrow { border-color: rgba(198, 161, 91, .40) !important; color: #7F5D23 !important; }
.ej-tc--light .ej-tc-arrow:hover { background: var(--ej-gold) !important; color: var(--ej-navy) !important; border-color: var(--ej-gold) !important; }
.ej-tc--dark .ej-tc-arrow { border-color: rgba(220, 195, 138, .45) !important; color: var(--ej-gold-light) !important; }
.ej-tc--dark .ej-tc-arrow:hover { background: var(--ej-gold) !important; color: var(--ej-navy) !important; border-color: var(--ej-gold) !important; }
.ej-tc-arrow svg { display: block; }
.ej-tc-dots { display: flex; align-items: center; }
button.ej-tc-dot, .ej-tc-dot {
display: flex !important;
align-items: center !important;
height: 44px !important;
padding: 0 3px !important;
border: 0 !important;
background: transparent !important;
box-shadow: none !important;
cursor: pointer;
}
.ej-tc-dot > span { display: block; height: 6px; width: 6px; border-radius: 999px; transition: width 300ms ease, background-color 300ms ease; }
.ej-tc-dot.is-on > span { width: 20px; }
.ej-tc--light .ej-tc-dot > span { background: rgba(12, 34, 64, .18); }
.ej-tc--light .ej-tc-dot:hover > span { background: rgba(12, 34, 64, .32); }
.ej-tc--light .ej-tc-dot.is-on > span { background: var(--ej-gold); }
.ej-tc--dark .ej-tc-dot > span { background: rgba(255, 255, 255, .22); }
.ej-tc--dark .ej-tc-dot:hover > span { background: rgba(255, 255, 255, .42); }
.ej-tc--dark .ej-tc-dot.is-on > span { background: var(--ej-gold-light); }
@media (prefers-reduced-motion: reduce) {
.ej-tc-photo img, .ej-tc-rule, .ej-tc-tick, .ej-tc-dot > span { transition: none !important; }
.ej-tc:hover .ej-tc-photo.is-on img { transform: none; }
}

.ej-tc a { background-image: none !important; }

@media print {
.ej-tc-grid { display: block; }
.ej-tc { break-inside: avoid; border: 0; margin-bottom: 14px; }
.ej-tc-photos, .ej-tc-pager { display: none !important; }
.ej-tc-stack:not(.is-on), .ej-tc-story:not(.is-on) { display: none !important; }
}

:root {
--ej-band-ivory: #FDFCF8; 
--ej-band-cream: #F7F3EC; 
--ej-band-parch: #F0E7D8; 
}
.tsummary-infos, section#flights, section#tb { background: var(--ej-band-ivory) !important; }
section#dbd, #weather.flights-section.weather, section#price { background: var(--ej-band-cream) !important; }
section#hotels, section#reviews, section#faq { background: var(--ej-band-parch) !important; }
.tsummary-infos { padding-bottom: 0 !important; }
section#dbd { padding-bottom: 56px !important; }
section#fred.fred-section, .fred-section { margin-bottom: 0 !important; }
section#faq { margin-top: 0 !important; }

section#flights .flights-contents > p,
#weather.flights-section.weather > p {
text-align: left !important;
max-width: 82ch;
margin-left: 0 !important;
margin-right: 0 !important;
}

.container-fluid .container-fluid {
max-width: none !important;
padding-left: 0 !important;
padding-right: 0 !important;
margin-left: 0 !important;
margin-right: 0 !important;
}
.tsummary-infos, section#dbd, section#hotels, section#flights,
#weather.flights-section.weather,
section#fred.fred-section, section#video, section#reviews,
section.trust-section-worry-free, section#tb, section#price, section#faq {
padding-left: max(24px, calc((var(--ej-vw, 100vw) - 1132px) / 2)) !important;
padding-right: max(24px, calc((var(--ej-vw, 100vw) - 1132px) / 2)) !important;
}
.ej-band-inner { max-width: 1132px; }
.video-testimonials-section { padding-left: 0 !important; padding-right: 0 !important; }

.ej-sechead {
max-width: none !important;
padding-left: 0 !important;
padding-right: 0 !important;
}

.cross-category-card {
background: var(--ej-ivory) !important;
border: 1px solid rgba(12, 34, 64, .10) !important;
border-left: 3px solid var(--ej-gold) !important;
}
.cross-category-card p, .cross-category-card li, .cross-category-card span {
color: var(--ej-body) !important;
}
.cross-category-card a { color: #7F5D23 !important; text-decoration: none !important; }
.cross-category-card a:hover { color: var(--ej-ink) !important; }

.ej-faq, .lodging-contents, .flights-contents {
margin-left: 0 !important;
margin-right: auto !important;
}

.prices-section .prices-contents table > tbody > tr:first-child > th {
text-align: left !important;
padding-left: 0 !important;
}

@media print, pdfcrowd {
.tsummary-infos, section#dbd, section#hotels, section#flights,
#weather.flights-section.weather, section#fred.fred-section, section#video,
section#reviews, section.trust-section-worry-free, section#tb,
section#price, section#faq,
.container-fluid, .fred-inner, .highlights-carousel-section {
width: auto !important;
max-width: none !important;
margin-left: 0 !important;
margin-right: 0 !important;
padding-left: 0 !important;
padding-right: 0 !important;
background: none !important;
background-color: #fff !important;
}
.tsummary-infos, section#dbd, section#hotels, section#flights,
#weather.flights-section.weather, section#tb, section#price, section#faq,
section#reviews, section.trust-section-worry-free, section#video {
padding-top: 0 !important;
padding-bottom: 0 !important;
}

.ej-tc-grid { display: none !important; }
.ej-sectionhead-lead { color: #000 !important; }
}


.trip-overview-container {
padding: 30px 34px 32px !important;
margin-bottom: 40px !important;
}
@media (max-width: 768px) {
.trip-overview-container { padding: 22px 20px 24px !important; margin-bottom: 28px !important; }
}

#printer-friendly-button-desktop a.gold-light-btn,
#printer-friendly-button-desktop a.silver-light-btn,
#printer-friendly-button-mobile a.gold-light-btn,
#printer-friendly-button-mobile a.silver-light-btn {
display: inline-flex !important;
align-items: center !important;
gap: 7px !important;
width: auto !important;
padding: 9px 16px !important;
border: 1px solid rgba(198, 161, 91, .55) !important;
border-radius: 3px !important;
background: transparent !important;
background-image: none !important;
box-shadow: none !important;
font-family: var(--ej-sans) !important;
font-size: 14px !important;
font-weight: 600 !important;
letter-spacing: normal !important;
text-transform: none !important;
text-decoration: none !important;
color: #7F5D23 !important;
transition: background-color 160ms ease, color 160ms ease, border-color 160ms ease !important;
}
#printer-friendly-button-desktop a.gold-light-btn:hover,
#printer-friendly-button-desktop a.silver-light-btn:hover,
#printer-friendly-button-mobile a.gold-light-btn:hover,
#printer-friendly-button-mobile a.silver-light-btn:hover {
background: rgba(198, 161, 91, .12) !important;
color: var(--ej-ink) !important;
border-color: var(--ej-brass) !important;
}
#printer-friendly-button-desktop .trip-overview-content { padding: 0 !important; }

#dbd .activity-item:not(.ej-fl) > p:first-of-type {
font-family: var(--ej-serif) !important;
font-size: clamp(23px, 2.3vw, 29px) !important;
font-weight: 600 !important;
line-height: 1.14 !important;
color: var(--ej-ink) !important;
margin: 4px 0 14px !important;
text-wrap: pretty;
}
#dbd .activity-item:not(.ej-fl) > p:first-of-type b,
#dbd .activity-item:not(.ej-fl) > p:first-of-type strong,
#dbd .activity-item:not(.ej-fl) > p:first-of-type font {
font-weight: 600 !important;
color: inherit !important;
}

.tour-slider-nav:hover, .ej-slider-nav:hover,
.video-fullscreen-btn:hover, .highlight-nav-button:hover,
.tour-slider-nav:focus-visible, .ej-slider-nav:focus-visible,
.video-fullscreen-btn:focus-visible, .highlight-nav-button:focus-visible {
background: var(--ej-cream) !important;
color: var(--ej-ink) !important;
box-shadow: 0 4px 16px rgba(12, 34, 64, .34) !important;
}

.tour-slider-nav:hover, .tour-slider-nav:focus-visible,
.ej-slider-nav:hover, .ej-slider-nav:focus-visible { transform: translateY(-50%); }

.tour-slider-nav, .ej-slider-nav, .video-fullscreen-btn, .highlight-nav-button {
transition: background-color 160ms ease, box-shadow 160ms ease !important;
}

.tour-image-wrapper, .hotel-image-wrapper, .ej-slide-zoom {
cursor: zoom-in;
overflow: hidden;
}
.tour-image-wrapper img, .hotel-image-wrapper img {
transition: transform 520ms cubic-bezier(.2, .6, .2, 1);
will-change: transform;
}
.tour-image-wrapper:hover img, .hotel-image-wrapper:hover img { transform: scale(1.045); }
@media (prefers-reduced-motion: reduce) {
.tour-image-wrapper img, .hotel-image-wrapper img { transition: none; }
.tour-image-wrapper:hover img, .hotel-image-wrapper:hover img { transform: none; }
}

.ej-lb { position: fixed; inset: 0; z-index: 99999; display: none;
background: rgba(6, 16, 30, .94); }
.ej-lb.is-open { display: flex; align-items: center; justify-content: center; }
.ej-lb-stage { position: relative; width: min(94vw, 1280px); height: min(88vh, 860px);
display: flex; align-items: center; justify-content: center; }
.ej-lb-fig { margin: 0; max-width: 100%; max-height: 100%; display: flex;
flex-direction: column; align-items: center; gap: 14px; }
.ej-lb-fig img { max-width: 100%; max-height: calc(88vh - 96px); object-fit: contain;
display: block; border-radius: 2px; box-shadow: 0 24px 70px rgba(0, 0, 0, .6); }
.ej-lb-cap { font-family: var(--ej-sans); font-size: 14.5px; line-height: 1.5;
color: #E6EBF2; text-align: center; max-width: 74ch; }
.ej-lb-count { font-family: var(--ej-sans); font-size: 12px; letter-spacing: .18em;
text-transform: uppercase; color: var(--ej-gold-light); font-variant-numeric: tabular-nums; }
.ej-lb-btn { position: absolute; top: 50%; transform: translateY(-50%);
width: 52px; height: 52px; display: flex; align-items: center; justify-content: center;
border-radius: 50%; border: 1px solid rgba(220, 195, 138, .45); background: rgba(12, 34, 64, .55);
color: var(--ej-gold-light); cursor: pointer; padding: 0;
transition: background-color 160ms ease, color 160ms ease; }
.ej-lb-btn:hover { background: var(--ej-gold); color: var(--ej-navy); border-color: var(--ej-gold); }
.ej-lb-prev { left: -8px; }
.ej-lb-next { right: -8px; }
.ej-lb-close { position: absolute; top: -6px; right: -6px; transform: none;
width: 44px; height: 44px; }
@media (max-width: 768px) {
.ej-lb-prev { left: 2px; } .ej-lb-next { right: 2px; }
.ej-lb-btn { width: 44px; height: 44px; }
.ej-lb-close { top: 2px; right: 2px; }
}
body.ej-lb-open { overflow: hidden; }

.ej-fl {
background: var(--ej-ivory) !important;
border: 1px solid rgba(12, 34, 64, .10) !important;
border-left: 3px solid var(--ej-gold) !important;
border-radius: 4px !important;
padding: 14px 18px 12px !important;
margin: 14px 0 !important;
}
.ej-fl-head { display: flex; align-items: baseline; gap: 10px; margin-bottom: 10px; }
.ej-fl-kicker {
font-family: var(--ej-sans) !important;
font-size: 11px !important;
font-weight: 700 !important;
letter-spacing: .18em !important;
text-transform: uppercase !important;
color: #7F5D23 !important;
}
.ej-fl-conn-note {
font-family: var(--ej-sans); font-size: 11px; letter-spacing: .12em;
text-transform: uppercase; color: var(--ej-body);
}
.ej-fl-rows { display: grid; gap: 2px; }
.ej-fl-row {
display: grid;
grid-template-columns: minmax(0, auto) 78px minmax(0, 1fr) 26px 78px minmax(0, 1fr) minmax(0, auto);
align-items: baseline;
column-gap: 12px;
padding: 9px 0;
border-top: 1px solid rgba(12, 34, 64, .07);
}
.ej-fl-row:first-child { border-top: 0; }
.ej-fl:not(.ej-fl--conn) .ej-fl-row {
grid-template-columns: 78px minmax(0, 1fr) 26px 78px minmax(0, 1fr) minmax(0, auto);
}
.ej-fl-leg {
font-family: var(--ej-sans); font-size: 10.5px; font-weight: 700;
letter-spacing: .14em; text-transform: uppercase; color: var(--ej-body);
white-space: nowrap;
}
.ej-fl-t {
font-family: var(--ej-sans); font-size: 15px; font-weight: 700;
color: var(--ej-ink); font-variant-numeric: tabular-nums; white-space: nowrap;
}
.ej-fl-c { font-family: var(--ej-sans); font-size: 15px; color: var(--ej-ink); min-width: 0; }
.ej-fl-clar { display: block; font-size: 11.5px; line-height: 1.3; color: var(--ej-body); }
.ej-fl-mark { color: var(--ej-gold); display: inline-flex; align-items: center; justify-content: center; }
.ej-fl-no {
font-family: var(--ej-sans); font-size: 12.5px; color: var(--ej-body);
text-align: right; white-space: nowrap;
}
@media (max-width: 900px) {
.ej-fl-row, .ej-fl:not(.ej-fl--conn) .ej-fl-row {
grid-template-columns: 72px minmax(0, 1fr);
row-gap: 2px;
}
.ej-fl-leg { grid-column: 1 / -1; }
.ej-fl-mark { display: none; }
.ej-fl-no { grid-column: 1 / -1; text-align: left; padding-top: 2px; }
}

.destination-header-gold, .destination-header-silver {
background: linear-gradient(to right, rgba(198, 161, 91, .17), rgba(198, 161, 91, .06) 62%, rgba(198, 161, 91, 0)) !important;
border-top: 2px solid var(--ej-gold) !important;
border-bottom: 1px solid rgba(198, 161, 91, .35) !important;
padding: 18px 22px !important;
margin-top: 34px !important;
}
.destination-header-h3-gold, .destination-header-h3-silver {
color: var(--ej-ink) !important;
font-family: var(--ej-serif) !important;
letter-spacing: .04em !important;
}
.destination-header-p-gold, .destination-header-p-silver { color: var(--ej-body) !important; }

.ej-sechead--hotels { padding-top: 0 !important; }
.ej-sechead-lede {
margin: 12px 0 0 !important;
font-family: var(--ej-sans) !important;
font-size: 16px !important;
line-height: 1.55 !important;
color: var(--ej-body) !important;
}
.lodging-row { margin-top: 30px !important; }
.lodging-card-header { display: flex; align-items: center; gap: 16px; margin-bottom: 10px; }
.lodging-card-header::after {
content: ''; flex: 1; height: 1px; background: rgba(198, 161, 91, .45);
}
.lodging-details h4, .lodging-card-header h4 {
margin: 0 !important;
padding: 7px 14px !important;
border: 1px solid rgba(198, 161, 91, .55) !important;
border-radius: 2px !important;
font-family: var(--ej-label) !important;
font-size: 11.5px !important;
font-weight: 400 !important;
letter-spacing: .18em !important;
text-transform: uppercase !important;
color: #7F5D23 !important;
background: transparent !important;
white-space: nowrap;
}
.lodging-details ul.list-unstyled {
margin: 0 !important; padding: 0 !important; list-style: none !important;
background: var(--ej-ivory);
border: 1px solid rgba(12, 34, 64, .09);
border-radius: 4px;
}
li.ej-htl {
display: grid !important;
grid-template-columns: 46px minmax(0, 1fr) minmax(0, auto);
align-items: center;
column-gap: 16px;
padding: 14px 18px !important;
border-top: 1px solid rgba(12, 34, 64, .08);
margin: 0 !important;
list-style: none !important;
}
li.ej-htl:first-child { border-top: 0; }
.ej-htl-thumb {
width: 46px; height: 46px; border-radius: 50%; overflow: hidden; flex: none;
background: rgba(198, 161, 91, .14); display: block;
}
.ej-htl-thumb img { width: 100%; height: 100%; object-fit: cover; display: block; border: 0 !important; }
.ej-htl-main { min-width: 0; }
.ej-htl-dest {
display: block;
font-family: var(--ej-serif);
font-size: 19px;
font-weight: 600;
line-height: 1.2;
color: var(--ej-ink);
}
.ej-htl-sub { display: block; margin-top: 3px; font-family: var(--ej-sans); font-size: 13.5px; line-height: 1.45; }
a.ej-htl-name { color: #7F5D23 !important; font-weight: 600; }
.ej-htl-room { color: var(--ej-body); }
.ej-htl-room::before { content: ' \00b7 '; color: rgba(12, 34, 64, .35); }
.ej-htl-nights {
font-family: var(--ej-sans); font-size: 11px; font-weight: 700;
letter-spacing: .16em; text-transform: uppercase; color: var(--ej-body);
white-space: nowrap; text-align: right;
}
.lodging-img { display: none !important; } 
.lodging-disclaimer { font-size: 13.5px !important; color: var(--ej-body) !important; margin-top: 14px !important; }
@media (max-width: 640px) {
li.ej-htl { grid-template-columns: 40px minmax(0, 1fr); row-gap: 4px; }
.ej-htl-thumb { width: 40px; height: 40px; }
.ej-htl-nights { grid-column: 2; text-align: left; }
}

section#flights .airfare-price-table {
background: transparent !important;
max-width: none !important;
width: 100% !important;
margin-left: 0 !important;
margin-right: 0 !important;
}
section#flights .airfare-price-table td.airfare-note,
section#flights .airfare-price-table td, section#flights .airfare-price-table th {
padding-left: 0 !important;
padding-right: 0 !important;
}
section#flights .policy-buttons-section,
#weather .policy-buttons-section { padding-left: 0 !important; padding-right: 0 !important; }

.ej-wx-units { display: flex; align-items: center; justify-content: flex-end; gap: 12px; margin: 0 0 18px; }
.ej-wx-units-label {
font-family: var(--ej-sans); font-size: 11.5px; font-weight: 600;
letter-spacing: .12em; text-transform: uppercase; color: var(--ej-body);
transition: color 180ms ease;
}
.ej-wx-units-label.is-on { color: var(--ej-ink); }
.ej-switch-input {
position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0;
overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0;
}
.ej-switch {
display: inline-block; position: relative; width: 46px; height: 26px; flex: none;
border-radius: 999px; background: rgba(12, 34, 64, .18); cursor: pointer;
transition: background-color 220ms ease;
}
.ej-switch::after {
content: ''; position: absolute; top: 3px; left: 3px; width: 20px; height: 20px;
border-radius: 50%; background: #fff; box-shadow: 0 1px 4px rgba(12, 34, 64, .35);
transition: transform 220ms cubic-bezier(.3, .8, .3, 1);
}
.ej-switch-input:checked + .ej-switch { background: var(--ej-gold); }
.ej-switch-input:checked + .ej-switch::after { transform: translateX(20px); }
.ej-switch-input:focus-visible + .ej-switch { outline: 2px solid var(--ej-brass); outline-offset: 3px; }
@media (prefers-reduced-motion: reduce) { .ej-switch, .ej-switch::after { transition: none; } }

.weather-contents .ej-u-si { display: none; }
.weather-contents.ej-units-si .ej-u-us { display: none; }
.weather-contents.ej-units-si .ej-u-si { display: inline; }
@media print, pdfcrowd {
.ej-wx-units { display: none !important; }
.ej-u-si { display: inline !important; }
.ej-u-si::before { content: ' / '; }
}

.fred-headline { display: flex !important; flex-direction: column !important; }
.fred-headline .fred-headline-sub {
order: -1 !important;
margin: 0 0 12px !important;
font-family: var(--ej-label) !important;
font-size: 12.5px !important;
font-weight: 400 !important;
letter-spacing: .3em !important;
text-transform: uppercase !important;
color: var(--ej-gold-light) !important;
}

.ej-band--worry.ej-band--photo {
position: relative;
background-size: cover !important;
background-position: center !important;
background-repeat: no-repeat !important;
}
.ej-band--worry.ej-band--photo::before {
content: ''; position: absolute; inset: 0; z-index: 0; pointer-events: none;
background: linear-gradient(to bottom, rgba(8, 24, 48, .93), rgba(8, 24, 48, .88) 45%, rgba(8, 24, 48, .95));
}
.ej-band--worry.ej-band--photo > * { position: relative; z-index: 1; }
.ej-tc--stage {
max-width: 900px;
margin: 40px auto 0;
border-radius: 6px;
}
.ej-tc--stage .ej-tc-body { padding: 34px 38px 26px; }
.ej-tc--stage .ej-tc-quote { font-size: clamp(20px, 2.2vw, 26px) !important; }
.ej-tc--stage .ej-tc-label { font-size: 16px !important; }
.ej-tc-count {
flex: none; margin-left: 12px;
font-family: var(--ej-sans); font-size: 11px; letter-spacing: .16em;
color: var(--ej-mist); font-variant-numeric: tabular-nums;
}

.ej-tc--stage .ej-tc-dots { display: none; }
.ej-tc--stage .ej-tc-pager { justify-content: flex-start; gap: 10px; }
@media (max-width: 640px) {
.ej-tc--stage .ej-tc-body { padding: 24px 20px 18px; }
}

.booklet-section .about-conts h4,
.booklet-cards-section h4 {
font-family: var(--ej-label) !important;
font-size: 12.5px !important;
font-weight: 400 !important;
letter-spacing: .16em !important;
text-transform: uppercase !important;
color: #7F5D23 !important;
border: 0 !important;
border-bottom: 1px solid rgba(198, 161, 91, .40) !important;
padding: 0 0 8px !important;
margin: 0 0 10px !important;
background: none !important;
}
.booklet-section .about-conts p,
.booklet-cards-section p {
border: 0 !important;
background: none !important;
font-size: 14.5px !important;
line-height: 1.55 !important;
color: var(--ej-body) !important;
text-align: left !important;
margin: 0 !important;
}
.booklet-section .about-conts h4,
.booklet-cards-section h4,
.booklet-section .about-conts p,
.booklet-cards-section p { text-align: left !important; }
.booklet-info, .booklet-contents { margin-left: 0 !important; margin-right: auto !important; }
.booklet-testimonials-carousel { margin-left: 0 !important; }
.booklet-section .highlight-carousel-title {
text-align: left !important;
font-family: var(--ej-label) !important;
font-size: 12.5px !important;
letter-spacing: .18em !important;
text-transform: uppercase !important;
color: #7F5D23 !important;
}

.prices-section .prices-contents table th,
.prices-section .prices-contents table td,
.prices-section .prices-contents table > tbody > tr > th,
.prices-section .prices-contents table > tbody > tr > td {
text-align: left !important;
}
.prices-section .prices-contents table { width: 100% !important; margin-left: 0 !important; }
.prices-section .prices-contents table > tbody > tr > th:first-child,
.prices-section .prices-contents table > tbody > tr > td:first-child { padding-left: 0 !important; }
.prices-section, .prices-contents, .ej-faq, .about-conts,
.prices-section .prices-contents { margin-left: 0 !important; margin-right: auto !important; }
section#price .prices-section > *, section#faq .prices-section > * { margin-left: 0 !important; }

li.ej-htl { position: relative; }
li.ej-htl > a[name] {
position: absolute; top: 0; left: 0; width: 0; height: 0;
overflow: hidden; padding: 0; margin: 0;
}
.lodging-contents .lodging-details ul li .ej-htl-dest,
li.ej-htl .ej-htl-dest {
font-family: var(--ej-serif) !important;
font-size: 20px !important;
font-weight: 600 !important;
line-height: 1.2 !important;
color: var(--ej-ink) !important;
}
.lodging-contents .lodging-details ul li .ej-htl-sub,
.lodging-contents .lodging-details ul li a.ej-htl-name,
.lodging-contents .lodging-details ul li .ej-htl-room,
li.ej-htl .ej-htl-sub, li.ej-htl a.ej-htl-name, li.ej-htl .ej-htl-room {
font-family: var(--ej-sans) !important;
font-size: 14px !important;
line-height: 1.45 !important;
}
.lodging-contents .lodging-details ul li a.ej-htl-name,
li.ej-htl a.ej-htl-name { color: #7F5D23 !important; font-weight: 600 !important; }
.lodging-contents .lodging-details ul li .ej-htl-room,
li.ej-htl .ej-htl-room { color: var(--ej-body) !important; font-weight: 400 !important; }
.lodging-contents .lodging-details ul li .ej-htl-nights,
li.ej-htl .ej-htl-nights {
font-family: var(--ej-sans) !important;
font-size: 11px !important;
font-weight: 700 !important;
letter-spacing: .16em !important;
text-transform: uppercase !important;
color: var(--ej-body) !important;
text-align: right !important;
}

.lodging-row .row, .lodging-row .col-12, .lodging-row .col-md-10 {
padding-left: 0 !important; padding-right: 0 !important;
}

.ej-band--worry.ej-band--photo::before {
content: '' !important;
display: block !important;
position: absolute !important;
inset: 0 !important;
z-index: 0 !important;
pointer-events: none !important;
background: linear-gradient(to bottom, rgba(8, 24, 48, .95), rgba(8, 24, 48, .90) 45%, rgba(8, 24, 48, .96)) !important;
}

.weather-contents .ej-u-si { display: none; }
#ejWxUnits:checked ~ .weather-contents .ej-u-us,
#ejWxUnits:checked ~ * .weather-contents .ej-u-us { display: none; }
#ejWxUnits:checked ~ .weather-contents .ej-u-si,
#ejWxUnits:checked ~ * .weather-contents .ej-u-si { display: inline; }
#ejWxUnits:checked ~ .ej-wx-units .ej-switch { background: var(--ej-gold); }
#ejWxUnits:checked ~ .ej-wx-units .ej-switch::after { transform: translateX(20px); }
#ejWxUnits:focus-visible ~ .ej-wx-units .ej-switch { outline: 2px solid var(--ej-brass); outline-offset: 3px; }
.ej-wx-units .ej-wx-us { color: var(--ej-ink); }
.ej-wx-units .ej-wx-si { color: var(--ej-body); }
#ejWxUnits:checked ~ .ej-wx-units .ej-wx-us { color: var(--ej-body); }
#ejWxUnits:checked ~ .ej-wx-units .ej-wx-si { color: var(--ej-ink); }

.tour-image-wrapper, .tour-image-wrapper *,
.hotel-image-wrapper, .hotel-image-wrapper * { cursor: zoom-in !important; }
.tour-image-wrapper a, .tour-image-wrapper button,
.hotel-image-wrapper a, .hotel-image-wrapper button { cursor: pointer !important; }
.ej-lb, .ej-lb * { cursor: default; }
.ej-lb-btn { cursor: pointer !important; }


section#flights .airfare-price-table,
section#flights .airfare-price-table td,
section#flights .airfare-price-table th,
section#flights .airfare-price-table tr { border: 0 !important; }
section#flights .airfare-benefits-list,
section#flights .airfare-price-table ul { padding-left: 18px !important; margin-left: 0 !important; }

.prices-section .flight-total-includes,
.prices-section .price-mobile-wrapper,
.prices-section .pricemobile { padding-left: 0 !important; margin-left: 0 !important; }

.ej-faq, .ej-faq-group-title, .ej-faq summary { margin-left: 0 !important; }
.ej-faq { padding-left: 0 !important; }

.booklet-section .booklet-info > p,
.booklet-section .booklet-contents > p,
.booklet-section > p,
.booklet-title, .booklet-subtitle {
text-align: left !important;
margin-left: 0 !important;
max-width: 82ch;
}
.booklet-testimonials-carousel {
background: var(--ej-ivory) !important;
border: 1px solid rgba(12, 34, 64, .09) !important;
border-radius: 4px !important;
padding: 22px 26px !important;
max-width: 820px;
}
.booklet-section .highlight-quote,
.booklet-section .highlight-author { text-align: left !important; }
.booklet-section .highlight-carousel-title,
.booklet-section .about-conts .highlight-carousel-title {
color: #7F5D23 !important;
margin: 0 0 12px !important;
}
.booklet-section .highlight-carousel-nav,
.booklet-section .about-conts .highlight-carousel-nav,
.booklet-cards-section .carousel-nav,
.booklet-section .desktop-cards-nav {
justify-content: flex-start !important;
text-align: left !important;
}

.booklet-cards-section > div, .booklet-cards-section .booklet-card,
.about-conts.booklet-cards-section > div {
border: 0 !important;
background: transparent !important;
padding: 0 18px 0 0 !important;
}

@media print, pdfcrowd {
.ej-tc--stage { display: none !important; }
.ej-band--worry.ej-band--photo::before { display: none !important; }
.ej-band--worry.ej-band--photo { background-image: none !important; }
}

.lodging-contents {
background: transparent !important;
max-width: none !important;
width: 100% !important;
padding: 0 !important;
}
.lodging-row { background: transparent !important; }
.lodging-row .row { margin-left: 0 !important; margin-right: 0 !important; }

@media screen and (max-width: 640px) {
body .lodging-contents .lodging-details ul li.ej-htl .ej-htl-dest {
font-size: 18px !important;
line-height: 1.2 !important;
}
body .lodging-contents .lodging-details ul li.ej-htl .ej-htl-sub,
body .lodging-contents .lodging-details ul li.ej-htl a.ej-htl-name,
body .lodging-contents .lodging-details ul li.ej-htl .ej-htl-room {
font-size: 13.5px !important;
line-height: 1.45 !important;
}
body .lodging-contents .lodging-details ul li.ej-htl .ej-htl-nights {
font-size: 10.5px !important;
text-align: left !important;
grid-column: 2 !important;
padding-top: 2px;
}
body li.ej-htl { padding: 13px 15px !important; column-gap: 12px !important; }
}

@media screen and (max-width: 640px) {
body .lodging-section .lodging-contents .lodging-details ul li.ej-htl .ej-htl-main
.ej-htl-dest:not(.ej-never-a):not(.ej-never-b):not(.ej-never-c) {
font-size: 18px !important;
line-height: 1.2 !important;
}
body .lodging-section .lodging-contents .lodging-details ul li.ej-htl .ej-htl-main
.ej-htl-sub:not(.ej-never-a):not(.ej-never-b):not(.ej-never-c),
body .lodging-section .lodging-contents .lodging-details ul li.ej-htl .ej-htl-main
a.ej-htl-name:not(.ej-never-a):not(.ej-never-b):not(.ej-never-c),
body .lodging-section .lodging-contents .lodging-details ul li.ej-htl .ej-htl-main
.ej-htl-room:not(.ej-never-a):not(.ej-never-b):not(.ej-never-c) {
font-size: 13.5px !important;
line-height: 1.45 !important;
}
body .lodging-section .lodging-contents .lodging-details ul li.ej-htl
.ej-htl-nights:not(.ej-never-a):not(.ej-never-b):not(.ej-never-c) {
font-size: 10.5px !important;
text-align: left !important;
}
}

section#tb .highlight-quote, section#tb .highlight-author,
section#tb .booklet-testimonials-carousel * { text-align: left !important; }
section#tb .about-conts > div, section#tb .about-conts > div > div,
section#tb .booklet-cards-section > div {
border: 0 !important;
background: transparent !important;
box-shadow: none !important;
}
section#tb .about-conts h4 { border-bottom: 1px solid rgba(198, 161, 91, .40) !important; }

.tour-image-wrapper, .hotel-image-wrapper {
background: #1a1a1a !important;
padding: 0 !important;
}
.tour-image-wrapper img, .hotel-image-wrapper img {
box-sizing: border-box !important;
border: 10px solid #1a1a1a !important;
border-radius: 20px !important;
background-clip: padding-box;
box-shadow: 0 10px 40px rgba(0, 0, 0, .5) !important;
}
@media screen and (max-width: 767px) {

.tour-image-wrapper img, .hotel-image-wrapper img {
border-left-width: 0 !important;
border-right-width: 0 !important;
border-radius: 0 !important;
}
}

.tsummary-infos section#summary + * , .tsummary-section { margin-top: 0; }
.tsummary-infos > section#summary h3,
.tsummary-infos .ej-sechead-title { margin-bottom: 0 !important; }
.tsummary-section { padding-top: 26px !important; }
.trip-overview-container {
border-radius: 6px !important;
border: 1px solid rgba(12, 34, 64, .09) !important;
padding-top: 34px !important;
}
.trip-overview-container > .ej-exp { margin-top: 0 !important; }
.ej-exp-head { margin-bottom: 12px !important; }

.trip-overview-content a,
.trip-overview-content .various,
.trip-overview-details a {
font-size: 14.5px !important;
font-weight: 600 !important;
line-height: 1.5 !important;
}
.trip-overview-container .ej-exp-list li,
.trip-overview-container .ej-exp-list li a { font-size: 15.5px !important; }

section#dbd { padding-top: 44px !important; }
section#dbd > .daybyday-section > h3:first-of-type,
section#dbd h3.allheaders-gold, section#dbd h3.allheaders-silver { margin-top: 0 !important; }
.destination-header-gold, .destination-header-silver {
background: var(--ej-navy) !important;
background-image: none !important;
border: 0 !important;
border-radius: 3px 3px 0 0 !important;
padding: 16px 22px !important;
margin-top: 34px !important;
}
.destination-header-gold *, .destination-header-silver * { background: none !important; }
.destination-header-h3-gold, .destination-header-h3-silver {
color: var(--ej-gold-light) !important;
-webkit-text-fill-color: currentColor !important;
font-family: var(--ej-label) !important;
font-size: 19px !important;
font-weight: 400 !important;
letter-spacing: .12em !important;
text-transform: uppercase !important;
margin: 0 !important;
}
.destination-header-p-gold, .destination-header-p-silver {
color: #D7DFEA !important;
font-size: 14.5px !important;
margin: 6px 0 0 !important;
}

.ej-fl-row,
.ej-fl:not(.ej-fl--conn) .ej-fl-row {
grid-template-columns: auto auto minmax(0, max-content) auto auto minmax(0, max-content) 1fr !important;
column-gap: 14px !important;
align-items: baseline;
}
.ej-fl:not(.ej-fl--conn) .ej-fl-row {
grid-template-columns: auto minmax(0, max-content) auto auto minmax(0, max-content) 1fr !important;
}
.ej-fl-t { min-width: 72px; }
.ej-fl-leg { min-width: 84px; }
.ej-fl-no { justify-self: end; padding-left: 18px; }
@media screen and (max-width: 900px) {
.ej-fl-row, .ej-fl:not(.ej-fl--conn) .ej-fl-row {
grid-template-columns: 72px minmax(0, 1fr) !important;
row-gap: 2px;
}
.ej-fl-leg { grid-column: 1 / -1; }
.ej-fl-mark { display: none; }
.ej-fl-no { grid-column: 1 / -1; justify-self: start; padding-left: 0; padding-top: 2px; }
}

li.ej-htl { grid-template-columns: minmax(0, 1fr) minmax(0, auto) !important; }
.ej-htl-room::before { content: '\0020\00b7\0020' !important; color: rgba(12, 34, 64, .35); }
@media screen and (max-width: 640px) {
li.ej-htl { grid-template-columns: minmax(0, 1fr) !important; }
body .lodging-contents .lodging-details ul li.ej-htl
.ej-htl-nights:not(.ej-never-a):not(.ej-never-b):not(.ej-never-c) { grid-column: 1 !important; }
}

.ej-btn-row, .policy-buttons-section { text-align: left !important; }
button.gold-light-btn, button.silver-light-btn {
display: inline-flex !important;
align-items: center !important;
gap: 8px !important;
width: auto !important;
padding: 11px 20px !important;
border: 1px solid rgba(198, 161, 91, .55) !important;
border-radius: 3px !important;
background: transparent !important;
background-image: none !important;
box-shadow: none !important;
font-family: var(--ej-sans) !important;
font-size: 14px !important;
font-weight: 600 !important;
letter-spacing: normal !important;
text-transform: none !important;
color: #7F5D23 !important;
cursor: pointer;
transition: background-color 160ms ease, color 160ms ease, border-color 160ms ease !important;
}
button.gold-light-btn:hover, button.silver-light-btn:hover {
background: rgba(198, 161, 91, .12) !important;
color: var(--ej-ink) !important;
border-color: var(--ej-brass) !important;
}

.ej-wx-lede {
max-width: 46ch !important;
text-align: left !important;
margin-left: 0 !important;
margin-right: 0 !important;
color: var(--ej-body) !important;
}

.fred-photo-name, .fred-photo-name-text, .fred-photo-name * {
color: var(--ej-gold-light) !important;
}
.fred-photo-role, .fred-photo-title { color: #C9D4E2 !important; }

.vtc-video-thumb-name, .vtc-video-thumb-quote {
color: var(--ej-navy) !important;
text-shadow: 0 1px 10px rgba(255, 255, 255, .85), 0 0 3px rgba(255, 255, 255, .9) !important;
}

.ej-tc--stage .ej-tc-label, .ej-tc--stage h3.ej-tc-label {
font-family: var(--ej-label) !important;
font-size: 14.5px !important;
font-weight: 400 !important;
letter-spacing: .16em !important;
text-transform: uppercase !important;
line-height: 1.35 !important;
color: var(--ej-gold-light) !important;
}
.ej-tc--stage .ej-tc-count {
margin-left: 0 !important;
order: -1;
}
.ej-tc--stage .ej-tc-eyebrow { gap: 0 12px; }
.ej-tc--stage .ej-tc-num { display: none !important; }

.ej-price-sub, span.ej-price-sub {
display: block !important;
margin-top: 10px !important;
font-family: var(--ej-sans) !important;
font-size: 12px !important;
font-weight: 700 !important;
letter-spacing: .18em !important;
text-transform: uppercase !important;
color: #7F5D23 !important;
}


.airfare-benefits-list li {
display: flex !important;
align-items: flex-start !important;
gap: 10px !important;
list-style: none !important;
margin-bottom: 8px !important;
}
.airfare-benefits-list li > svg, .airfare-benefits-list li > i,
.airfare-price-table ul li > svg, .airfare-price-table ul li > i,
.airfare-benefits-list li .ej-i, .airfare-price-table ul li .ej-i {
flex: 0 0 auto !important;
width: 17px !important;
height: 17px !important;
margin: 3px 0 0 !important;
vertical-align: baseline !important;
color: var(--ej-brass) !important;
}

.ej-faq details[open] > summary {
background: var(--ej-navy) !important;
color: var(--ej-cream) !important;
border-color: var(--ej-navy) !important;
border-radius: 4px 4px 0 0 !important;
margin-bottom: 0 !important;
}
.ej-faq details[open] > summary * { color: var(--ej-cream) !important; }
.ej-faq details[open] > summary svg { color: var(--ej-gold-light) !important; }
.ej-faq details[open] > *:not(summary) {
background: var(--ej-ivory) !important;
border: 1px solid rgba(12, 34, 64, .10) !important;
border-top: 0 !important;
border-left: 3px solid var(--ej-gold) !important;
border-radius: 0 0 4px 4px !important;
padding: 16px 18px 18px !important;
margin: 0 0 10px !important;
}
.ej-faq details[open] { margin-bottom: 8px; }

.ejtb { max-width: 1132px; }
.ej-sechead--tb { padding-top: 0 !important; }
.ejtb-label {
margin: 40px 0 16px;
font-family: var(--ej-sans);
font-size: 11.5px;
font-weight: 700;
letter-spacing: .2em;
text-transform: uppercase;
color: #7F5D23;
display: flex;
align-items: center;
gap: 16px;
}
.ejtb-label::after { content: ''; flex: 1; height: 1px; background: rgba(198, 161, 91, .40); }
.ejtb-grid {
display: grid;
grid-template-columns: repeat(4, minmax(0, 1fr));
gap: 26px 30px;
}
@media (max-width: 1023px) { .ejtb-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 599px) { .ejtb-grid { grid-template-columns: 1fr; gap: 22px; } }
.ejtb-card { min-width: 0; }
.ejtb-num {
display: block;
font-family: var(--ej-label);
font-size: 11px;
line-height: 1;
letter-spacing: .3em;
color: rgba(12, 34, 64, .55);
font-variant-numeric: lining-nums;
}
h4.ejtb-card-title, .ejtb-card-title {
margin: 9px 0 7px !important;
font-family: var(--ej-serif) !important;
font-size: 19px !important;
font-weight: 600 !important;
line-height: 1.2 !important;
color: var(--ej-ink) !important;
letter-spacing: normal !important;
text-transform: none !important;
border: 0 !important;
background: none !important;
text-align: left !important;
}
p.ejtb-card-body, .ejtb-card-body {
margin: 0 !important;
font-family: var(--ej-sans) !important;
font-size: 14px !important;
line-height: 1.55 !important;
color: var(--ej-body) !important;
text-align: left !important;
border: 0 !important;
background: none !important;
}
.ejtb-quotes {
display: grid;
grid-template-columns: repeat(2, minmax(0, 1fr));
gap: 22px 34px;
max-width: 1000px;
}
@media (max-width: 767px) { .ejtb-quotes { grid-template-columns: 1fr; } }
figure.ejtb-quote, .ejtb-quote { margin: 0 !important; }
.ejtb-quote blockquote {
margin: 0 !important;
padding: 0 !important;
border: 0 !important;
background: none !important;
font-family: var(--ej-serif) !important;
font-size: 19px !important;
font-style: italic !important;
line-height: 1.4 !important;
color: var(--ej-ink) !important;
text-align: left !important;
}
.ejtb-quote blockquote::before { content: '\201C'; }
.ejtb-quote blockquote::after { content: '\201D'; }
.ejtb-quote figcaption {
display: flex;
align-items: stretch;
gap: 10px;
margin-top: 12px;
font-family: var(--ej-sans);
font-size: 12.5px;
text-transform: uppercase;
letter-spacing: .1em;
color: var(--ej-body);
}
.ejtb-tick { flex: none; width: 2px; align-self: stretch; border-radius: 999px; background: var(--ej-gold); }
.ejtb-note {
margin: 38px 0 0 !important;
padding-top: 18px;
border-top: 1px solid rgba(198, 161, 91, .35);
font-family: var(--ej-sans) !important;
font-size: 14.5px !important;
color: var(--ej-body) !important;
text-align: left !important;
max-width: 72ch;
}
@media print, pdfcrowd {
.ejtb-grid { display: block; }
.ejtb-card { break-inside: avoid; margin-bottom: 10px; }
.ejtb-quotes { display: block; }
}

.tour-image-wrapper[data-is-video="true"] {
border: 0 !important;
border-radius: 0 !important;
background: #1a1a1a !important;
}
.video-slide-placeholder {
box-sizing: border-box !important;
border: 10px solid #1a1a1a !important;
border-radius: 20px !important;
overflow: hidden !important;
background: #1a1a1a !important;
}
.video-slide-placeholder > picture,
.video-slide-placeholder .slider-video-container { border-radius: 8px; overflow: hidden; }
.slider-video-container .video-player {
border-top: 0 !important;
border-bottom: 0 !important;
}
@media screen and (max-width: 767px) {
.video-slide-placeholder {
border-left-width: 0 !important;
border-right-width: 0 !important;
border-radius: 0 !important;
}
.video-slide-placeholder > picture,
.video-slide-placeholder .slider-video-container { border-radius: 0; }
}

.ej-fl-rows { display: grid; }
@supports (grid-template-columns: subgrid) {
.ej-fl--conn .ej-fl-rows {
grid-template-columns: auto auto minmax(0, max-content) auto auto minmax(0, max-content) 1fr;
}
.ej-fl:not(.ej-fl--conn) .ej-fl-rows {
grid-template-columns: auto minmax(0, max-content) auto auto minmax(0, max-content) 1fr;
}
.ej-fl-row, .ej-fl:not(.ej-fl--conn) .ej-fl-row {
grid-column: 1 / -1;
grid-template-columns: subgrid !important;
}
@media screen and (max-width: 900px) {
.ej-fl--conn .ej-fl-rows,
.ej-fl:not(.ej-fl--conn) .ej-fl-rows { grid-template-columns: 72px minmax(0, 1fr); }
}
}

.airfare-benefits-list li {
display: flex !important;
align-items: baseline !important;
gap: 9px !important;
list-style: none !important;
margin: 0 0 9px !important;
padding: 0 !important;
}
.airfare-benefits-list li > svg,
.airfare-benefits-list li > i {
flex: 0 0 18px !important;
width: 18px !important;
height: 18px !important;
margin: 0 !important;
align-self: flex-start;
position: relative;
top: 3px;
color: var(--ej-brass) !important;
background: none !important;
}

.airplane-seat-icon-gold { background-image: none !important; }
.airfare-benefits-list { padding-left: 0 !important; margin-left: 0 !important; }

.ej-band--worry.ej-band--photo::before {

width: 100% !important;
height: 100% !important;
max-width: 100% !important;
min-height: 0 !important;
max-height: none !important;
background-image: linear-gradient(to bottom, rgba(8, 24, 48, .93), rgba(8, 24, 48, .88) 45%, rgba(8, 24, 48, .95)) !important;
background-color: transparent !important;
}

.ej-band--worry.ej-band--photo {
box-shadow: inset 0 0 0 9999px rgba(8, 24, 48, .90) !important;
}
.ej-band--worry.ej-band--photo::before {
content: none !important;
display: none !important;
}
@media print, pdfcrowd {
.ej-band--worry.ej-band--photo { box-shadow: none !important; }
}

h3.destination-header-h3-gold, h3.destination-header-h3-silver,
.destination-header-gold h3, .destination-header-silver h3 {
color: var(--ej-gold-light) !important;
-webkit-text-fill-color: currentColor !important;
}
p.destination-header-p-gold, p.destination-header-p-silver,
.destination-header-gold p, .destination-header-silver p {
color: #D7DFEA !important;
}

.vtc-video-thumb-info, .vtc-video-thumb-caption {
background: linear-gradient(to bottom, rgba(255, 255, 255, 0), rgba(251, 249, 244, .82) 38%, rgba(251, 249, 244, .94)) !important;
padding: 30px 18px 16px !important;
}
.vtc-video-thumb-name, .vtc-video-thumb-quote {
color: var(--ej-navy) !important;
text-shadow: none !important;
}

.ejtb-num, span.ejtb-num { color: #7F5D23 !important; }


.ej-hero-meta { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 22px; }
.ej-hero-badge {
display: inline-flex; align-items: center; gap: 7px;
padding: 7px 14px;
border: 1px solid rgba(220, 195, 138, .45);
border-radius: 999px;
background: rgba(8, 24, 48, .40);
backdrop-filter: blur(2px);
font-family: var(--ej-sans);
font-size: 12px; font-weight: 700;
letter-spacing: .14em; text-transform: uppercase;
color: var(--ej-gold-light);
white-space: nowrap;
}
.ej-hero-badge--silver { border-color: rgba(205, 211, 218, .5); color: var(--ej-silver-light); }
.ej-hero-badge--plain { border-color: rgba(255, 255, 255, .30); color: #E6EBF2; }
.ej-hero-badge svg { flex: none; }
@media screen and (max-width: 600px) { .ej-hero-badge { font-size: 11px; padding: 6px 11px; } }

.tour-image-wrapper, .hotel-image-wrapper { position: relative; overflow: hidden; }
.tour-image-wrapper::after, .hotel-image-wrapper::after {
content: ''; position: absolute; inset: 0; z-index: 2; pointer-events: none;
border: 10px solid #1a1a1a;
border-radius: 20px;
}
.tour-image-wrapper img, .hotel-image-wrapper img {
border: 0 !important;
border-radius: 20px !important;
box-sizing: content-box !important;
}
.video-slide-placeholder { border-radius: 20px !important; }
@media screen and (max-width: 767px) {
.tour-image-wrapper::after, .hotel-image-wrapper::after {
border-left-width: 0; border-right-width: 0; border-radius: 0;
}
.tour-image-wrapper img, .hotel-image-wrapper img { border-radius: 0 !important; }
}

.tour-image-wrapper:not(.active), .hotel-image-wrapper:not(.active),
.tour-image-wrapper:not(.active) *, .hotel-image-wrapper:not(.active) * { cursor: default !important; }
.tour-image-wrapper:not(.active):hover img, .hotel-image-wrapper:not(.active):hover img { transform: none; }

.ej-lb-close { top: 0 !important; right: 0 !important; transform: translate(50%, -50%) !important; }
@media screen and (max-width: 900px) {
.ej-lb-close { top: 6px !important; right: 6px !important; transform: none !important; }
}

.trip-overview-container,
.trip-overview-container p,
.trip-overview-container span,
.trip-overview-container li,
.trip-overview-container a,
.trip-overview-container button,
.trip-overview-container .trip-overview-details,
.trip-overview-container .trip-overview-heading,
.trip-overview-container .ej-exp-list li,
.trip-overview-container .link-button,
.trip-overview-container .various,
.trip-overview-container .iframe15 {
font-size: 16px !important;
line-height: 1.55 !important;
}

.trip-overview-container .ej-exp-more { font-size: 14px !important; }
.trip-overview-container .dest-market-name { font-size: 16px !important; }

.trip-overview-container > .ej-exp { margin-top: 6px !important; padding-top: 6px !important; }
.trip-overview-container > .trip-overview-item {
position: relative;
padding-top: 22px !important;
margin-top: 0 !important;
}
.trip-overview-container > .trip-overview-item::before {
content: ''; position: absolute; top: 0; left: 10px; right: 10px;
height: 1px; background: rgba(198, 161, 91, .28);
}

.trip-overview-container > .trip-overview-item:nth-child(2)::before,
.trip-overview-container > .trip-overview-item:nth-child(3)::before { content: none; }

.modal-overlay { background: rgba(6, 16, 30, .88) !important; backdrop-filter: blur(3px); }
.transfer-modal-content, .meals-modal-content, .video-modal-content,
.modal-overlay > div:not(.ej-lb-stage) {
background: var(--ej-midnight) !important;
border: 1px solid rgba(220, 195, 138, .22) !important;
border-radius: 6px !important;
box-shadow: 0 30px 90px rgba(0, 0, 0, .55) !important;
padding: 0 !important;
max-width: 860px !important;
overflow: hidden;
}
.transfer-modal-content > *, .meals-modal-content > * { padding-left: 40px; padding-right: 40px; }
.transfer-modal-content > .modal-close-sticky,
.transfer-modal-content > .modal-close,
.meals-modal-content > .modal-close-sticky,
.meals-modal-content > .modal-close { padding: 0; }
.transfer-modal-body, .meals-modal-body { padding: 8px 40px 38px !important; }
.transfer-modal-content h3, .meals-modal-content h3,
.transfer-modal-content h2, .transfer-modal-body h3, .meals-modal-body h3 {
margin: 34px 0 0 !important;
padding: 0 0 0 0 !important;
font-family: var(--ej-serif) !important;
font-size: clamp(28px, 3.2vw, 40px) !important;
font-weight: 500 !important;
line-height: 1.06 !important;
text-align: left !important;
color: var(--ej-cream) !important;
background: none !important;
-webkit-text-fill-color: currentColor !important;
}

.transfer-modal-content h3::before, .meals-modal-content h3::before {
content: ''; display: block; width: 46px; height: 1px;
background: rgba(220, 195, 138, .65); margin: 0 0 16px;
}
.transfer-modal-content p, .meals-modal-content p,
.transfer-modal-body p, .meals-modal-body p,
.transfer-modal-content li, .meals-modal-content li {
text-align: left !important;
max-width: 66ch;
font-family: var(--ej-sans) !important;
font-size: 16px !important;
line-height: 1.62 !important;
color: #D7DFEA !important;
}
.transfer-modal-content ul, .meals-modal-content ul,
.transfer-modal-body ul, .meals-modal-body ul { padding-left: 20px !important; margin: 14px 0 !important; }
.transfer-modal-content li::marker, .meals-modal-content li::marker { color: var(--ej-gold); }
.transfer-modal-content strong, .transfer-modal-content b,
.meals-modal-content strong { color: var(--ej-cream) !important; }
.modal-close, .modal-close-sticky, .video-modal-close {
position: absolute !important;
top: 18px !important; right: 18px !important;
width: 40px !important; height: 40px !important;
display: flex !important; align-items: center !important; justify-content: center !important;
border-radius: 50% !important;
border: 1px solid rgba(220, 195, 138, .40) !important;
background: rgba(255, 255, 255, .06) !important;
color: var(--ej-gold-light) !important;
font-size: 20px !important;
line-height: 1 !important;
cursor: pointer;
transition: background-color 160ms ease, color 160ms ease !important;
}
.modal-close:hover, .modal-close-sticky:hover, .video-modal-close:hover {
background: var(--ej-gold) !important; color: var(--ej-navy) !important;
}
.transfer-modal-content, .meals-modal-content { position: relative; }

.ej-fl {
background: none !important;
border: 0 !important;
border-radius: 0 !important;
padding: 6px 0 10px !important;
margin: 6px 0 !important;
}
.ej-fl-head { display: flex; align-items: baseline; gap: 10px; margin-bottom: 12px; }
.ej-fl-rows { display: grid; gap: 14px; }
.ej-fl-row {
display: grid !important;
grid-template-columns: 22px minmax(0, auto) minmax(80px, 1fr) minmax(0, auto) minmax(0, auto) !important;
align-items: center;
column-gap: 16px !important;
}
.ej-fl--conn .ej-fl-row {
grid-template-columns: 22px minmax(0, auto) minmax(0, auto) minmax(80px, 1fr) minmax(0, auto) minmax(0, auto) !important;
}
.ej-fl-ico { color: var(--ej-brass); display: inline-flex; align-items: center; }
.ej-fl-end { display: block; min-width: 0; }
.ej-fl-c {
display: block;
font-family: var(--ej-sans) !important;
font-size: 15.5px !important;
font-weight: 700 !important;
line-height: 1.25 !important;
color: var(--ej-ink) !important;
}
.ej-fl-clar { display: block; font-size: 11.5px; font-weight: 400; line-height: 1.3; color: var(--ej-body); }
.ej-fl-t {
display: block; margin-top: 2px;
font-family: var(--ej-sans) !important;
font-size: 13.5px !important;
font-weight: 400 !important;
color: var(--ej-body) !important;
font-variant-numeric: tabular-nums;
}
.ej-fl-arrow { display: flex; align-items: center; gap: 0; color: var(--ej-gold); min-width: 60px; }
.ej-fl-line { flex: 1; height: 1px; background: rgba(198, 161, 91, .55); }
.ej-fl-arrow svg { flex: none; margin-left: -4px; }
.ej-fl-no {
font-family: var(--ej-sans) !important;
font-size: 13px !important;
color: var(--ej-body) !important;
text-align: right; white-space: nowrap; justify-self: end;
}
@media screen and (max-width: 760px) {
.ej-fl-row, .ej-fl--conn .ej-fl-row {
grid-template-columns: 22px minmax(0, 1fr) !important;
row-gap: 6px;
}
.ej-fl-arrow { display: none; }
.ej-fl-leg { grid-column: 2; }
.ej-fl-no { grid-column: 2; justify-self: start; text-align: left; }
}

.day-content .activity-item + .activity-item,
.daybyday-section .activity-item + .activity-item {
position: relative;
padding-top: 30px;
margin-top: 26px;
}
.day-content .activity-item + .activity-item::before,
.daybyday-section .activity-item + .activity-item::before {
content: ''; position: absolute; top: 0; left: 22px; right: 22px;
height: 1px; background: rgba(12, 34, 64, .12);
}

.lodging-details h4, .lodging-card-header h4 {
background: #fff !important;
border-color: rgba(198, 161, 91, .70) !important;
}

.ej-flight-table {
border-radius: 6px !important;
overflow: hidden;
box-shadow: 0 0 0 1px rgba(198, 161, 91, .45) !important;
}
.ej-flight-table tr:first-child th:first-child { border-top-left-radius: 6px !important; }
.ej-flight-table tr:first-child th:last-child { border-top-right-radius: 6px !important; }
.ej-flight-table tr:last-child td:first-child { border-bottom-left-radius: 6px !important; }
.ej-flight-table tr:last-child td:last-child { border-bottom-right-radius: 6px !important; }
.ej-flight-table tr:last-child td { border-bottom: 0 !important; }

.airfare-price-table ul li { display: list-item !important; }
.flight-total-care-list, .airfare-price-table ul:not(.airfare-benefits-list) {
list-style: disc !important;
padding-left: 22px !important;
}
.flight-total-care-list li, .airfare-price-table ul:not(.airfare-benefits-list) li {
display: list-item !important;
margin-bottom: 5px !important;
}
.flight-total-care-list li::marker { color: var(--ej-gold); }

.ej-wx-units { justify-content: flex-start; margin: 4px 0 22px; }
.ej-switch {
background: rgba(220, 195, 138, .22) !important;
border: 1px solid rgba(220, 195, 138, .55) !important;
width: 48px !important; height: 27px !important;
}
.ej-switch::after { background: var(--ej-gold-light) !important; top: 2px !important; left: 2px !important; }
#ejWxUnits:checked ~ .ej-wx-units .ej-switch { background: var(--ej-gold) !important; border-color: var(--ej-gold) !important; }
#ejWxUnits:checked ~ .ej-wx-units .ej-switch::after { background: var(--ej-navy) !important; transform: translateX(21px); }
.ej-wx-units .ej-wx-us, .ej-wx-units .ej-wx-si { color: var(--ej-mist) !important; }
.ej-wx-units .ej-wx-us { color: var(--ej-cream) !important; }
#ejWxUnits:checked ~ .ej-wx-units .ej-wx-us { color: var(--ej-mist) !important; }
#ejWxUnits:checked ~ .ej-wx-units .ej-wx-si { color: var(--ej-cream) !important; }

.ej-wx-val.is-counting .ej-u-us, .ej-wx-val.is-counting .ej-u-si { display: none !important; }
.ej-wx-anim { display: none; }
.ej-wx-val.is-counting .ej-wx-anim { display: inline; }

.fred-photo-name-text, .fred-photo-name, .fred-photo-name * {
color: var(--ej-gold) !important;
}

.vtc-video-thumb-info, .vtc-video-thumb-caption {
background: none !important;
padding: 18px !important;
}
.vtc-video-thumb-name, .vtc-video-thumb-quote {
color: var(--ej-navy) !important;
text-shadow: none !important;
}

.ejtb-quotes { display: block !important; max-width: 820px; }
.ejtb-quotes-stage { display: grid; }
.ejtb-quote {
grid-column: 1; grid-row: 1;
opacity: 0; pointer-events: none;
transition: opacity 300ms ease;
}
.ejtb-quote.is-on { opacity: 1; pointer-events: auto; }
.ejtb-quote blockquote { font-size: 21px !important; }
.ejtb-pager { display: flex; align-items: center; gap: 10px; margin-top: 20px; }
.ejtb-count {
margin-left: 6px;
font-family: var(--ej-sans); font-size: 11px; letter-spacing: .16em;
color: var(--ej-body); font-variant-numeric: tabular-nums;
}
.ejtb-quotes .ej-tc-arrow {
border-color: rgba(198, 161, 91, .40) !important;
color: #7F5D23 !important;
}
.ejtb-quotes .ej-tc-arrow:hover {
background: var(--ej-gold) !important; color: var(--ej-navy) !important; border-color: var(--ej-gold) !important;
}
@media print, pdfcrowd {
.ejtb-quote { opacity: 1 !important; position: static; }
.ejtb-quotes-stage { display: block; }
.ejtb-pager { display: none !important; }
}

.airfare-benefits-list li > svg, .airfare-benefits-list li > i {
color: #7F5D23 !important;
stroke-width: 2 !important;
opacity: 1 !important;
}

.ej-faq details[open] > *:not(summary) {
border-left: 1px solid rgba(12, 34, 64, .10) !important;
}

.ej-fl-row { border-top: 0 !important; padding: 0 !important; }
.ej-fl-leg {
font-family: var(--ej-sans) !important;
font-size: 10.5px !important; font-weight: 700 !important;
letter-spacing: .14em !important; text-transform: uppercase !important;
color: var(--ej-body) !important; white-space: nowrap;
}

.modal-overlay .transfer-modal-content h3,
.modal-overlay .meals-modal-content h3,
.modal-overlay h3.allheaders-gold,
.modal-overlay h3.allheaders-silver,
.modal-overlay h2.allheaders-gold,
.modal-overlay h2.allheaders-silver {
color: var(--ej-cream) !important;
-webkit-text-fill-color: currentColor !important;
text-align: left !important;
font-family: var(--ej-serif) !important;
font-size: clamp(28px, 3.2vw, 40px) !important;
font-weight: 500 !important;
line-height: 1.06 !important;
margin: 30px 0 0 !important;
}
.modal-overlay .text-center,
.modal-overlay .text-center * { text-align: left !important; }
.modal-overlay .row,
.modal-overlay .col-12, .modal-overlay [class*="col-md-"], .modal-overlay [class*="col-lg-"] {
margin-left: 0 !important; margin-right: 0 !important;
padding-left: 0 !important; padding-right: 0 !important;
max-width: 100% !important; flex: 0 0 100% !important;
}

.modal-overlay .transport-title h4,
.modal-overlay .transfer-modal-body > div:first-of-type h4,
.modal-overlay .meals-modal-body h4 {
font-family: var(--ej-sans) !important;
font-size: 16px !important;
font-weight: 400 !important;
line-height: 1.6 !important;
letter-spacing: normal !important;
text-transform: none !important;
color: #D7DFEA !important;
text-align: left !important;
max-width: 66ch;
margin: 16px 0 0 !important;
}
.modal-overlay .transport-contents, .modal-overlay .transfer-modal-body ul { margin-top: 20px !important; }
.modal-overlay .transport-contents li, .modal-overlay .transfer-modal-body li { margin-bottom: 7px !important; }

.trip-overview-container { padding-top: 42px !important; }
.trip-overview-container > .ej-exp { margin-top: 0 !important; padding-top: 0 !important; }

.luggage-icon-gold, .airplane-seat-icon-gold,
svg.luggage-icon-gold, svg.airplane-seat-icon-gold,
.airfare-benefits-list li > svg.ej-lucide {
color: #7F5D23 !important;
stroke-width: 2 !important;
}


.daybyday-contents .carousel-counter,
.carousel-buttons-wrapper .carousel-counter {
background: rgba(247, 243, 236, .92);
border-top: 1px solid rgba(12, 34, 64, .16);
border-bottom: 1px solid rgba(12, 34, 64, .16);
border-left: 0;
border-right: 0;
color: var(--ej-navy, #0C2240);
font-weight: 600;
}

.tour-option-price {
color: var(--ej-link, #7F5D23);
font-weight: 600;
}


[data-ej-island] .ej-frame-win > .ej-video-hero-ov { z-index: 110; }

section#flights .flights-contents table {
max-width: none;
margin-left: 0;
margin-right: 0;
border-collapse: collapse;
}
section#flights .airfare-price-table td,
section#flights .airfare-price-table th {
background: transparent !important;
}

.modal-overlay > div.transfer-modal-content,
.modal-overlay > div.meals-modal-content {
max-height: min(86vh, 900px);
overflow-y: auto;
}

.modal-overlay .modal-close-sticky { left: auto; }


svg.airplane-seat-icon-gold {
-webkit-mask: none;
mask: none;
}


#faq .ej-faq details {
background: transparent;
border: 0;
border-radius: 0;
}

.lodging-card-header { padding: 0; }
.lodging-contents .lodging-details ul li {
position: relative;
padding: 13px 16px 14px;
font-family: var(--ej-sans);
font-size: 15px;
font-weight: 400;
line-height: 1.45;
border-bottom: 1px solid rgba(12, 34, 64, .08);
}
.lodging-contents .lodging-details ul li:last-child { border-bottom: 0; padding-bottom: 14px; }
.lodging-contents .lodging-details ul li > a[name] {
position: absolute; top: 0; left: 0; width: 0; height: 0;
overflow: hidden; padding: 0; margin: 0;
}
.lodging-contents .lodging-details ul li span { font-size: inherit; font-weight: inherit; }
.lodging-contents .lodging-details ul li .hotel-destination-name {
display: block;
margin: 0 0 4px;
font-size: 11px;
font-weight: 700;
line-height: 1.4;
letter-spacing: .14em;
text-transform: uppercase;
color: var(--ej-body);
}
.lodging-contents .lodging-details ul li a { font-weight: 600; }
.lodging-contents .lodging-details ul li > span.desktop-layout {
font-size: 13.5px;
font-weight: 400;
color: var(--ej-body);
}
@media screen and (max-width: 768px) {
body .lodging-section .lodging-contents .lodging-details ul li
.hotel-destination-name:not(.ej-never-a):not(.ej-never-b):not(.ej-never-c) {
font-size: 11.5px !important;
}
body .lodging-section .lodging-contents .lodging-details ul li
> span.desktop-layout:not(.ej-never-a):not(.ej-never-b):not(.ej-never-c),
body .lodging-section .lodging-contents .lodging-details ul li
> span.mobile-layout:not(.ej-never-a):not(.ej-never-b):not(.ej-never-c) {
font-size: 13.5px !important;
}
body .lodging-section .lodging-contents .lodging-details ul li
> span.desktop-layout span:not(.ej-never-a):not(.ej-never-b):not(.ej-never-c),
body .lodging-section .lodging-contents .lodging-details ul li
> span.mobile-layout span:not(.ej-never-a):not(.ej-never-b):not(.ej-never-c) {
font-size: inherit !important;
}
}
@media screen and (max-width: 767px) {
.lodging-contents .lodging-details ul li {
display: grid;
grid-template-columns: minmax(0, 1fr) max-content;
align-items: baseline;
column-gap: 12px;
row-gap: 3px;
}
.lodging-contents .lodging-details ul li .hotel-destination-name {
grid-column: 1 / -1;
order: 1;
margin-bottom: 0;
}
.lodging-contents .lodging-details ul li > a[href] { grid-column: 1 / -1; justify-self: start; order: 2; }
.lodging-contents .lodging-details ul li > span.mobile-layout:last-child { grid-column: 1; order: 3; color: var(--ej-body); }
.lodging-contents .lodging-details ul li .hotel-destination-name + span.mobile-layout {
grid-column: 2;
order: 4;
white-space: nowrap;
color: var(--ej-body);
}
.lodging-contents .lodging-details ul li .mobile-layout br { display: none; }
}


.ej-hero.ej-hero--sample .ej-hero-title {
max-width: 24ch;
font-size: clamp(30px, 4.3vw, 56px);
}

button.ej-exp-more {
display: inline-flex;
align-items: center;
gap: 7px;
width: auto;
padding: 9px 16px;
border: 1px solid rgba(198, 161, 91, .55);
border-radius: 3px;
background: transparent;
background-image: none;
box-shadow: none;
-webkit-appearance: none;
appearance: none;
font-family: var(--ej-sans);
font-weight: 600;
letter-spacing: normal;
text-transform: none;
text-decoration: none;
color: #7F5D23;
cursor: pointer;
transition: background-color 160ms ease, color 160ms ease, border-color 160ms ease;
}

button.ej-exp-more > svg {
width: 18px;
height: 18px;
margin-right: 7px;
flex: 0 0 auto;
}
button.ej-exp-more:hover {
background: rgba(198, 161, 91, .12);
color: var(--ej-ink);
border-color: var(--ej-brass);
}

button.ej-exp-more:focus { outline: none; }
button.ej-exp-more:focus-visible,
#printer-friendly-button-desktop a.gold-light-btn:focus-visible,
#printer-friendly-button-mobile a.gold-light-btn:focus-visible,
#printer-friendly-button-desktop a.silver-light-btn:focus-visible,
#printer-friendly-button-mobile a.silver-light-btn:focus-visible {
outline: 2px solid var(--ej-brass);
outline-offset: 3px;
}

.ej-fl-rows .ej-fl-clar { display: none; }

.ej-fl-rows .ej-fl-line { display: none; }


#dbd .tour-option-description > p:first-of-type {

font-family: var(--ej-serif) !important;
font-size: clamp(23px, 2.3vw, 29px) !important;
font-weight: 600;
line-height: 1.14;
color: var(--ej-ink) !important;
margin: 4px 0 14px;
text-wrap: pretty;
}

#dbd .tour-option-description > p:first-of-type > b {
display: block;
margin: 0 0 6px;
font-family: var(--ej-sans);
font-size: 12px;
font-weight: 600;
letter-spacing: .22em;
line-height: 1.4;
text-transform: uppercase;
color: #7F5D23;
}

section#flights .flights-contents .table-scroll-wrapper:has(> table:not(.airfare-price-table)) {
overflow-x: auto;
border: 1px solid rgba(198, 161, 91, .45);
border-radius: 6px;
}

section#flights .flights-contents .table-scroll-wrapper table { box-shadow: none !important; }
section#flights .flights-contents .table-scroll-wrapper table tr:last-child td { border-bottom: 0 !important; }

section#flights .flights-contents table tr:first-child th:first-child,
section#flights .flights-contents table tr:first-child th:last-child,
section#flights .flights-contents table tr:last-child td:first-child,
section#flights .flights-contents table tr:last-child td:last-child { border-radius: 0; }

.prices-section .flight-total-toggle-wrap { text-align: left; }
.flight-total-switch-label { position: relative; font-family: var(--ej-sans); }
.flight-total-switch-label .flight-total-check {
display: block; position: absolute; width: 1px; height: 1px; margin: -1px;
padding: 0; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0;
}
.flight-total-switch-label .flight-total-slider {
box-sizing: border-box; width: 46px; height: 26px; border-radius: 999px;
background: var(--ej-ivory); border: 1px solid rgba(12, 34, 64, .16);
transition: background-color 220ms ease, border-color 220ms ease;
}
.flight-total-switch-label .flight-total-slider::after {
top: 2px; left: 2px; width: 20px; height: 20px;
background: var(--ej-navy); box-shadow: 0 1px 3px rgba(12, 34, 64, .28);
transform: translateX(0);
transition: transform 220ms cubic-bezier(.3, .8, .3, 1), background-color 220ms ease;
}
.flight-total-switch-label:hover .flight-total-slider { border-color: rgba(12, 34, 64, .32); }
.flight-total-switch-label .flight-total-slider + span { color: var(--ej-body); transition: color 180ms ease; }
.flight-total-switch-label .flight-total-check:checked + .flight-total-slider { background: var(--ej-gold); border-color: var(--ej-gold); }
.flight-total-switch-label .flight-total-check:checked + .flight-total-slider::after { left: 2px; background: var(--ej-ivory); transform: translateX(20px); }
.flight-total-switch-label .flight-total-check:checked + .flight-total-slider + span { color: var(--ej-ink); }
.flight-total-switch-label .flight-total-check:focus-visible + .flight-total-slider { outline: 2px solid var(--ej-brass); outline-offset: 3px; }
.prices-section .flight-total-note { text-align: left; color: var(--ej-body); }
.flight-total-note .flight-total-note-lead { color: #7F5D23; font-weight: 600; }
@media (prefers-reduced-motion: reduce) {
.flight-total-switch-label .flight-total-slider,
.flight-total-switch-label .flight-total-slider::after,
.flight-total-switch-label .flight-total-slider + span { transition: none; }
}

.ej-more-sep { display: none; }
.ej-more-menu .ej-more-cta {
margin-top: 8px;
padding: 11px 16px 10px;
font-family: var(--ej-label) !important;
font-size: 12px !important;
font-weight: 400;
letter-spacing: .14em;
text-transform: uppercase;
}
.ej-more-menu .ej-more-cta:hover,
.ej-more-menu .ej-more-cta:focus-visible { color: #7F5D23 !important; }
.ej-more-translate { padding: 0 16px 0 6px; }
.ej-more-translate:empty { display: none; }
.ej-more-translate .goog-te-gadget { margin-left: 0 !important; padding: 10px 0 4px; }
.ej-more-translate .goog-te-combo {
width: 100%;
padding: 6px 8px;
font-family: var(--ej-sans);
font-size: 13px;
color: var(--ej-ink);
background: var(--ej-ivory);
border: 1px solid rgba(12, 34, 64, .16);
border-radius: 4px;
}

@media (max-width: 768px) {
.trip-overview-container { padding-top: 28px !important; }
}

#tour-slider-trip-summary[data-ej-island] .ej-credits {
position: absolute;
left: 0;
right: 0;
bottom: 30px;
z-index: 10;
min-height: 0;
padding: 0 24px;
background: transparent;
pointer-events: none;
opacity: 0;
transition: opacity .28s ease;
}
#tour-slider-trip-summary[data-ej-island]:hover .ej-credits,
#tour-slider-trip-summary[data-ej-island]:focus-within .ej-credits {
opacity: 1;
}
#tour-slider-trip-summary[data-ej-island] .ej-credits-dash { display: none; }
#tour-slider-trip-summary[data-ej-island] .ej-caption {
width: auto;
max-width: min(60%, 560px);
min-height: 0;
padding: 7px 16px 8px;
border-radius: 4px;
background: rgba(12, 34, 64, .74);
-webkit-backdrop-filter: blur(6px);
backdrop-filter: blur(6px);
}
#tour-slider-trip-summary[data-ej-island] .ej-cap-line {
font-family: var(--ej-sans);
font-size: 13.5px;
font-weight: 500;
line-height: 1.4;
letter-spacing: .02em;
color: var(--ej-cream);
text-shadow: none;
}

#tour-slider-trip-summary[data-ej-island] .ej-caption .ej-cap-line.ej-cap-out { inset: 7px 16px 8px; }

#tour-slider-trip-summary[data-ej-island] .ej-caption:empty { display: none; }
#tour-slider-trip-summary[data-ej-island] .ej-caption:not(:has(.ej-cap-line:not(.ej-cap-out))) { display: none; }
@media (prefers-reduced-motion: reduce) {
#tour-slider-trip-summary[data-ej-island] .ej-credits { transition: none; }
}


#faq .ej-faq-kicker {
margin: 0;
font-family: var(--ej-sans);
font-size: 12.5px;
font-weight: 600;
letter-spacing: .24em;
text-transform: uppercase;
text-align: center;
color: #7F5D23;
}
#faq h3.allheaders-gold, #faq h3.allheaders-silver {
width: auto;
margin: 12px auto 0 !important;
padding-top: 0;
text-align: center !important;
font-size: clamp(32px, 5vw, 56px) !important;
font-weight: 500 !important;
line-height: 1.02 !important;
letter-spacing: 0 !important;
text-wrap: balance;
}

#faq h3.allheaders-gold em, #faq h3.allheaders-silver em {
font-style: italic;
font-weight: inherit;
color: #7F5D23;
-webkit-text-fill-color: currentColor;
}

section#faq .ej-faq {
max-width: 940px;
margin-left: auto !important;
margin-right: auto !important;
padding: 0 !important;
counter-reset: ejfaq;
}

#faq .ej-faq-group-title {
margin: 56px 0 16px !important;
font-family: var(--ej-label) !important;
font-size: 12px !important;
font-weight: 400 !important;
line-height: 1.2;
letter-spacing: .2em !important;
text-transform: uppercase !important;
text-align: left;
color: #7F5D23 !important;
}

#faq .ej-faq details, #faq .ej-faq details[open] {
counter-increment: ejfaq;
margin: 0;
background: transparent;
border: 0;
border-top: 1px solid rgba(12, 34, 64, .16);
border-radius: 0;
}
#faq .ej-faq details:last-of-type { border-bottom: 1px solid rgba(12, 34, 64, .16); }

#faq .ej-faq summary,
#faq .ej-faq details[open] > summary,
#faq .ej-faq summary:hover {
display: flex;
align-items: center;
justify-content: flex-start;
gap: 20px;
margin: 0 !important;
padding: 24px 0 !important;
background: transparent !important;
border: 0 !important;
border-radius: 0 !important;
font-family: var(--ej-serif) !important;
font-size: clamp(20px, 2.6vw, 30px);
font-weight: 500 !important;
line-height: 1.375;
text-align: left;
color: var(--ej-slate) !important;
cursor: pointer;
transition: color .3s;
}
#faq .ej-faq details[open] > summary,
#faq .ej-faq summary:hover { color: var(--ej-ink) !important; }
#faq .ej-faq summary:focus-visible { outline: 2px solid var(--ej-gold); outline-offset: 4px; }
#faq .ej-faq summary .ej-faq-chev { display: none; }
#faq .ej-faq summary::before {
content: counter(ejfaq, decimal-leading-zero);
flex: 0 0 36px;
width: 36px;
font-family: var(--ej-serif);
font-size: 20px;
font-weight: 500;
line-height: 1;
font-variant-numeric: lining-nums;
color: #7F5D23;
opacity: .75;
}
#faq .ej-faq summary::after {
content: "";
flex: 0 0 36px;
width: 36px;
height: 36px;
margin-left: auto;
border: 1px solid rgba(12, 34, 64, .25);
border-radius: 50%;
color: var(--ej-ink);
background-image: linear-gradient(currentColor, currentColor), linear-gradient(currentColor, currentColor);
background-size: 12px 1.5px, 1.5px 12px;
background-position: center;
background-repeat: no-repeat;
transition: transform .3s;
}
#faq .ej-faq details[open] > summary::after { transform: rotate(45deg); }

#faq .ej-faq details[open] > .ej-faq-answer {
box-sizing: border-box;
max-width: 680px;
margin: 0 !important;
padding: 0 0 28px 56px !important;
background: transparent !important;
border: 0 !important;
border-radius: 0 !important;
font-family: var(--ej-sans);
font-size: 15.5px;
line-height: 1.625;
text-align: left;
color: var(--ej-slate);
animation: ejFaqReveal .4s ease;
}
@keyframes ejFaqReveal {
from { opacity: 0; transform: translateY(-6px); }
to { opacity: 1; transform: none; }
}
#faq .ej-faq-answer p, #faq .ej-faq-answer li {
font-size: 15.5px;
line-height: 1.625;
color: var(--ej-slate);
text-align: left;
}
#faq .ej-faq-answer p { margin: 0 0 14px; }
#faq .ej-faq-answer p:last-child { margin-bottom: 0; }
#faq .ej-faq-answer b, #faq .ej-faq-answer strong,
#faq .ej-faq-answer [style*="font-weight:500"] { color: var(--ej-ink); }
#faq .ej-faq-answer ul { margin: 0 0 16px; padding-left: 24px; }
#faq .ej-faq-answer li { margin: 6px 0; }
#faq .ej-faq-answer li::marker { color: var(--ej-brass); }
#faq #faq-not-included .tripprice-details > p:first-child::before { color: var(--ej-brass); }

#faq .ej-faq-quote {
margin: 20px 0 16px;
padding: 2px 0 2px 16px !important;
background: transparent !important;
border: 0 !important;
border-left: 2px solid rgba(184, 146, 74, .6) !important;
border-radius: 0 !important;
font-family: var(--ej-serif);
font-size: 19px;
font-style: italic;
line-height: 1.45;
color: var(--ej-ink);
}
#faq .ej-faq-quote-name, #faq span.ej-faq-quote-name {
display: block;
margin-top: 6px;
font-family: var(--ej-sans);
font-size: 12px !important;
font-style: normal;
font-weight: 600;
letter-spacing: .14em;
text-transform: uppercase;
color: #7F5D23 !important;
}
@media (prefers-reduced-motion: reduce) {
#faq .ej-faq details[open] > .ej-faq-answer { animation: none; }
#faq .ej-faq summary, #faq .ej-faq summary::after { transition: none; }
}
@media (max-width: 600px) {
#faq .ej-faq summary,
#faq .ej-faq details[open] > summary,
#faq .ej-faq summary:hover { gap: 14px; padding: 18px 0 !important; }
#faq .ej-faq summary::before { flex-basis: 28px; width: 28px; font-size: 17px; }
#faq .ej-faq summary::after { flex-basis: 32px; width: 32px; height: 32px; }
#faq .ej-faq details[open] > .ej-faq-answer { padding-left: 0 !important; }
}

.activity-item.tour-options-activity {
display: grid;
grid-template-columns: minmax(0, 1fr) auto;
align-items: center;
column-gap: 18px;
row-gap: 14px;
}
.activity-item.tour-options-activity::after { display: none; }

.activity-item.tour-options-activity > p.choose-p-tag-gold,
.activity-item.tour-options-activity > p.choose-p-tag-silver,
#dbd .daybyday-contents .activity-item.tour-options-activity > p.choose-p-tag-gold,
#dbd .daybyday-contents .activity-item.tour-options-activity > p.choose-p-tag-silver {
display: block;
margin: 0 !important;
font-family: var(--ej-label) !important;
font-size: 11.5px !important;
font-weight: 400 !important;
line-height: 1.5 !important;
letter-spacing: .24em;
text-transform: uppercase;
text-wrap: balance;
color: #7F5D23 !important;
}
.activity-item.tour-options-activity > p.choose-p-tag-silver,
#dbd .daybyday-contents .activity-item.tour-options-activity > p.choose-p-tag-silver { color: var(--ej-body) !important; }

.activity-item.tour-options-activity .carousel-nav[data-carousel-id] {
display: flex;
flex-direction: row;
align-items: center;
gap: 0;
margin: 0;
justify-self: end;
}
.activity-item.tour-options-activity .carousel-nav[data-carousel-id] .carousel-buttons-wrapper {
display: flex;
align-items: center;
gap: 10px;
}
.activity-item.tour-options-activity .carousel-nav[data-carousel-id] button {
width: 36px;
height: 36px;
padding: 0;
margin: 0;
display: inline-flex;
align-items: center;
justify-content: center;
background: transparent;
border: 1px solid rgba(12, 34, 64, .28);
border-radius: 50%;
color: var(--ej-ink);
box-shadow: none;
cursor: pointer;
font-size: 16px;
line-height: 1;
transition: background-color 160ms ease, border-color 160ms ease;
}
.activity-item.tour-options-activity .carousel-nav[data-carousel-id] button:hover,
.activity-item.tour-options-activity .carousel-nav[data-carousel-id] button:focus-visible {
background: rgba(12, 34, 64, .06);
border-color: var(--ej-navy);
}
.activity-item.tour-options-activity .carousel-nav[data-carousel-id] button:focus-visible {
outline: 2px solid var(--ej-gold);
outline-offset: 2px;
}
.activity-item.tour-options-activity .carousel-nav[data-carousel-id] button svg,
.activity-item.tour-options-activity .carousel-nav[data-carousel-id] button i {
width: 16px;
height: 16px;
font-size: 16px;
}
.activity-item.tour-options-activity .carousel-nav[data-carousel-id] .carousel-counter {
min-width: 0;
margin: 0;
padding: 0 4px;
background: transparent;
border: 0;
border-radius: 0;
font-family: var(--ej-serif);
font-size: 22px;
font-weight: 500;
line-height: 1;
letter-spacing: .04em;
color: rgba(12, 34, 64, .55) !important;
font-variant-numeric: lining-nums tabular-nums;
font-feature-settings: "lnum" 1, "tnum" 1;
white-space: nowrap;
text-align: center;
cursor: pointer;
}
.activity-item.tour-options-activity .carousel-nav[data-carousel-id] .carousel-counter .current-slide {
font-size: inherit;
font-weight: 600;
color: var(--ej-ink) !important;
}

.activity-item.tour-options-activity .tour-options-carousel {
grid-column: 1 / -1;
margin: 0;
min-width: 0;
}
.tour-options-carousel.ej-track {
display: flex;
flex-wrap: nowrap;
align-items: flex-start;
position: relative;
overflow: hidden;
transition: height 480ms cubic-bezier(.2, .6, .2, 1);
}
.tour-options-carousel.ej-track .tour-option-card {
display: block;
flex: 0 0 100%;
width: 100%;
min-width: 0;
min-height: 0;
margin: 0;
box-sizing: border-box;
transform: translateX(0);
transition: transform 480ms cubic-bezier(.2, .6, .2, 1);
will-change: transform;
}
.tour-options-carousel.ej-track .tour-option-card[aria-hidden="true"] { pointer-events: none; }
@media (prefers-reduced-motion: reduce) {
.tour-options-carousel.ej-track,
.tour-options-carousel.ej-track .tour-option-card { transition: none; }
}

@media print {
.tour-options-carousel.ej-track {
display: block;
overflow: visible;
height: auto !important;
transition: none;
}
.tour-options-carousel.ej-track .tour-option-card {
transform: none !important;
transition: none;
will-change: auto;
}
}


@media (min-width: 1360px) {
#tour-slider-trip-summary[data-ej-island] .ej-frame-win:has(> .slider-video-container),
#tour-slider-trip-summary[data-ej-island] .ej-frame-win:has(> .ej-video-ghost),
#tour-slider-trip-summary[data-ej-island] .ej-frame-win:has(> img.ej-photo[src*="/value/photos/hero/"]) {

width: min(1116px, calc(var(--ej-vw, 100vw) - 64px)) !important;
}
#tour-slider-trip-summary[data-ej-island] .ej-frame-win > img.ej-photo[src*="/value/photos/hero/"] {
width: 100%;
object-fit: cover;
}
}

section#flights .flights-contents .table-scroll-wrapper > table:not(.ej-flight-table):not(.airfare-price-table) th,
section#flights .flights-contents .table-scroll-wrapper > table:not(.ej-flight-table):not(.airfare-price-table) td {
text-align: left;
padding: 13px 14px;
}
section#flights .flights-contents .table-scroll-wrapper > table:not(.ej-flight-table):not(.airfare-price-table) th {
width: auto !important; 
padding: 12px 14px;
vertical-align: bottom;
}
section#flights .flights-contents .table-scroll-wrapper > table:not(.ej-flight-table):not(.airfare-price-table) td {
vertical-align: top;
}

section#flights .flights-contents .table-scroll-wrapper:has(> table:not(.ej-flight-table):not(.airfare-price-table)) {
max-width: fit-content;
min-width: min(100%, 480px);
}
section#flights .flights-contents .table-scroll-wrapper:has(> table:not(.ej-flight-table):not(.airfare-price-table)) > table {
width: auto;
}
@media screen and (max-width: 768px) {
section#flights .flights-contents .table-scroll-wrapper > table:not(.ej-flight-table):not(.airfare-price-table) th { padding: 9px 8px; }
section#flights .flights-contents .table-scroll-wrapper > table:not(.ej-flight-table):not(.airfare-price-table) td { padding: 10px 8px; }
}

.ej-more-menu .ej-more-call { transition: none; }
.ej-more-menu .ej-more-call svg {
color: var(--ej-ink);
fill: none;
stroke: currentColor;
stroke-width: 2;
opacity: 1;
filter: none;
transform: none;
transition: none;
}

.ej-platinum-band {
display: flex;
flex-wrap: wrap;
align-items: center;
justify-content: space-between;
gap: 18px 28px;
box-sizing: border-box;
width: 100%;
margin: 26px 0 6px;
padding: 26px 30px 28px;
background: var(--ej-navy);
border: 1px solid rgba(220, 195, 138, .22);
border-radius: 6px;
text-align: left;
}
.ej-platinum-copy { flex: 1 1 400px; min-width: 0; }

.ej-platinum-eyebrow {
font-family: var(--ej-label);
font-size: 11.5px;
font-weight: 400;
line-height: 1.2;
letter-spacing: .22em;
text-transform: uppercase;
color: var(--ej-gold-light);
}

.ej-platinum-q {
margin-top: 11px;
font-family: var(--ej-sans);
font-size: 14.5px;
font-weight: 400;
line-height: 1.5;
color: var(--ej-mist);
}

.ej-platinum-invite {
margin-top: 7px;
font-family: var(--ej-serif);
font-size: clamp(23px, 2.1vw, 28px);
font-weight: 500;
line-height: 1.16;
letter-spacing: .005em;
color: var(--ej-cream);
}

.ej-platinum-band .ej-platinum-cta {
box-sizing: border-box;
display: inline-flex;
align-items: center;
justify-content: center;
gap: 8px;
flex: 0 0 auto;
height: 42px;
margin: 0;
padding: 0 20px;
background: var(--ej-gold);
background-image: none;
border: 1px solid var(--ej-gold);
border-radius: 5px;
box-shadow: 0 12px 30px rgba(0, 0, 0, .18);
-webkit-appearance: none;
appearance: none;
font-family: var(--ej-sans);
font-size: 14px;
font-weight: 600;
line-height: 1;
letter-spacing: normal;
text-transform: none;
text-decoration: none;
text-shadow: none;
white-space: nowrap;
color: var(--ej-navy);
cursor: pointer;
transition: background-color 200ms ease, border-color 200ms ease, box-shadow 200ms ease, transform 200ms ease;
}
.ej-platinum-band .ej-platinum-cta > svg {
width: 15px;
height: 15px;
flex: 0 0 auto;
}
.ej-platinum-band .ej-platinum-cta:hover {
background: var(--ej-brass);
border-color: var(--ej-brass);
color: var(--ej-navy);
transform: translateY(-1px);
}
.ej-platinum-band .ej-platinum-cta:active {
background: var(--ej-brass);
box-shadow: 0 6px 16px rgba(0, 0, 0, .18);
transform: translateY(0);
}

.ej-platinum-band .ej-platinum-cta:focus { outline: none; }
.ej-platinum-band .ej-platinum-cta:focus-visible {
outline: 2px solid var(--ej-gold-light);
outline-offset: 3px;
}

@media (max-width: 1024px) {
.ej-platinum-band { padding: 22px 22px 24px; }
}
@media (max-width: 900px) {
.ej-platinum-band { display: block; }
.ej-platinum-band .ej-platinum-cta { width: 100%; margin-top: 18px; }
}
@media (prefers-reduced-motion: reduce) {
.ej-platinum-band .ej-platinum-cta,
.ej-platinum-band .ej-platinum-cta:hover,
.ej-platinum-band .ej-platinum-cta:active { transition: none; transform: none; }
}

@media print, pdfcrowd {
.ej-platinum-band {
background: transparent !important;
background-color: transparent !important;
border: 1px solid rgba(12, 34, 64, .16) !important;
page-break-inside: avoid;
break-inside: avoid;
}
.ej-platinum-eyebrow {
font-size: 10.5px !important;
line-height: 1.2 !important;
color: #7F5D23 !important;
}
.ej-platinum-q {
font-size: 12px !important;
line-height: 1.45 !important;
color: var(--ej-body) !important;
}
.ej-platinum-invite {
font-family: var(--ej-serif) !important;
font-size: 20px !important;
line-height: 1.16 !important;
color: var(--ej-navy) !important;
}
.ej-platinum-band .ej-platinum-cta { display: none !important; }
}

#faq .ej-faq-answer a[href] {
color: #7F5D23 !important;
font-weight: inherit;
}
#faq .ej-faq-answer a[href]:hover,
#faq .ej-faq-answer a[href]:focus-visible {
color: var(--ej-link-hover, #0C2240) !important;
}

#faq .ej-faq-answer a.ej-faq-goto[href] {
font-weight: 500;
text-decoration-line: underline !important;
text-decoration-thickness: 1px;
text-decoration-color: rgba(198, 161, 91, .55);
text-underline-offset: 3px;
}
#faq .ej-faq-answer a.ej-faq-goto[href]:hover,
#faq .ej-faq-answer a.ej-faq-goto[href]:focus-visible {
text-decoration-color: currentColor;
}

@media print {
#faq .ej-faq-answer a.ej-faq-goto[href] {
text-decoration-line: none !important;
}
}


#faq-cancellation.ej-faq-plain-list .policy-contents li {
list-style: disc outside !important;
}


html body:is(.ej-has-sticky, #ej-z1):is(.ej-has-faq, section#ej-z2) { padding-bottom: 0; }
body:is(.ej-has-sticky, #ej-z1) section#faq {
padding-bottom: calc(92px + env(safe-area-inset-bottom, 0px)) !important;
}

@media (max-width: 330px) {
body:is(.ej-has-sticky, #ej-z1) section#faq {
padding-bottom: calc(142px + env(safe-area-inset-bottom, 0px)) !important;
}
}
@media print, pdfcrowd {
body:is(.ej-has-sticky, #ej-z1) section#faq { padding-bottom: 0 !important; }
}

#tour-slider-trip-summary[data-ej-island] .ej-frame.ej-active .ej-frame-win::before {
content: "";
position: absolute;
left: 1px;
right: 1px;
bottom: 1px;
height: 44%;
min-height: 96px;
max-height: 240px;
z-index: 102;
pointer-events: none;
opacity: 0;
transition: opacity .28s ease;
background: linear-gradient(to top,
rgba(8, 24, 48, .92) 0%,
rgba(8, 24, 48, .74) 22%,
rgba(8, 24, 48, .40) 50%,
rgba(8, 24, 48, .14) 76%,
rgba(8, 24, 48, 0) 100%);
}
#tour-slider-trip-summary[data-ej-island]:hover:has(.ej-caption .ej-cap-line:not(.ej-cap-out)) .ej-frame.ej-active .ej-frame-win::before,
#tour-slider-trip-summary[data-ej-island]:focus-within:has(.ej-caption .ej-cap-line:not(.ej-cap-out)) .ej-frame.ej-active .ej-frame-win::before {
opacity: 1;
}

#tour-slider-trip-summary[data-ej-island] .ej-frame-win .video-fullscreen-btn { z-index: 104; }

@supports selector(:has(*)) {
#tour-slider-trip-summary[data-ej-island] .ej-credits { bottom: 38px; }
#tour-slider-trip-summary[data-ej-island] .ej-caption {
max-width: min(34%, 420px);
padding: 0;
border-radius: 0;
background: transparent;
-webkit-backdrop-filter: none;
backdrop-filter: none;
}
#tour-slider-trip-summary[data-ej-island] .ej-cap-line { text-shadow: 0 1px 10px rgba(8, 24, 48, .55); }
#tour-slider-trip-summary[data-ej-island] .ej-caption .ej-cap-line.ej-cap-out { inset: 0; }
}
@media (prefers-reduced-motion: reduce) {
#tour-slider-trip-summary[data-ej-island] .ej-frame.ej-active .ej-frame-win::before { transition: none; }
}

@media (max-width: 768px) {
#tour-slider-trip-summary[data-ej-island] .ej-frame.ej-active .ej-frame-win::before { content: none; }
}


#dbd .ej-dbd-tourtype {
display: block;
margin: 0 0 5px;
font-family: var(--ej-sans);
font-size: 12px;
font-weight: 600;
font-style: normal;
letter-spacing: .22em;
line-height: 1.4;
text-transform: uppercase;
color: #7F5D23;
}

#dbd .tour-option-description > p:first-of-type > b > .ej-dbd-tourtype {
display: inline;
margin: 0 0 0 10px;
padding-left: 10px;
border-left: 1px solid rgba(198, 161, 91, .55);
}

.ej-dbd-tourtype {
display: block;
margin: 0 0 5px;
font-family: 'Mulish', 'Segoe UI', system-ui, -apple-system, sans-serif;
font-size: 12px;
font-weight: 600;
font-style: normal;
letter-spacing: .22em;
line-height: 1.4;
text-transform: uppercase;
color: #7F5D23;
}
.tour-option-description > p:first-of-type > b > .ej-dbd-tourtype {
display: inline;
margin: 0 0 0 10px;
padding-left: 10px;
border-left: 1px solid rgba(198, 161, 91, .55);
}

@media (max-width: 768px) {
#dbd .ej-dbd-tourtype { font-size: 12px !important; }
}


.modal-overlay > div.transfer-modal-content > .transfer-modal-body,
.modal-overlay > div.meals-modal-content > .meals-modal-body {
max-height: calc(min(86vh, 900px) - 2px);
overflow-y: auto;
overflow-x: hidden;
overscroll-behavior: contain;
}

#roomInfoModal > .transfer-modal-content { max-width: 500px !important; }
#ejExpModal > .transfer-modal-content { max-width: 760px !important; }

#ejExpModal .ej-exp-list { padding-left: 0 !important; margin: 18px 0 0 !important; }

#ejExpModal .ej-exp-list li::before { background: var(--ej-gold-light) !important; }


.modal-overlay .modal-close:focus-visible,
.modal-overlay .modal-close-sticky:focus-visible,
.ej-lb .ej-lb-btn:focus-visible,
#ejTbPreview .ej-tb-close:focus-visible {
outline: 2px solid var(--ej-gold);
outline-offset: 2px;
}

html body.ej-tb-preview-open #ejTbPreview {
display: flex;
align-items: center;
justify-content: center;
padding: 4vh 16px;
background: rgba(6, 16, 30, .88);
-webkit-backdrop-filter: blur(3px);
backdrop-filter: blur(3px);
}
html #ejTbPreview .ej-tb-panel {
position: relative;
width: min(92%, 860px);
max-width: 860px;
margin: auto;
max-height: min(86vh, 900px);
padding: 34px 40px 38px;
overflow-y: auto;
overflow-x: hidden;
background: var(--ej-midnight) !important;
border: 1px solid rgba(220, 195, 138, .22);
border-radius: 6px;
box-shadow: 0 30px 90px rgba(0, 0, 0, .55);
}

html #ejTbPreview .ej-tb-panel:has(> .ej-tb-body) { padding: 0; overflow: hidden; }
#ejTbPreview .ej-tb-body {
max-height: calc(min(86vh, 900px) - 2px);
padding: 34px 40px 38px;
overflow-y: auto;
overflow-x: hidden;
overscroll-behavior: contain;
}

#ejTbPreview .ej-tb-panel h3 {
margin: 0 !important;
padding: 0 56px 0 0 !important;
font-family: var(--ej-serif) !important;
font-size: clamp(28px, 3.2vw, 40px) !important;
font-weight: 500 !important;
font-style: normal !important;
line-height: 1.06 !important;
letter-spacing: normal !important;
text-align: left !important;
color: var(--ej-cream) !important;
background: none !important;
-webkit-text-fill-color: currentColor !important;
}
#ejTbPreview .ej-tb-panel h3::before {
content: '';
display: block;
width: 46px;
height: 1px;
margin: 0 0 16px;
background: rgba(220, 195, 138, .65);
}
#ejTbPreview .ej-tb-panel p,
#ejTbPreview .ej-tb-list li {
max-width: 66ch;
font-family: var(--ej-sans);
font-size: 16px;
line-height: 1.62;
color: #D7DFEA;
}
#ejTbPreview .ej-tb-list li::before { color: var(--ej-gold); }
#ejTbPreview .ej-tb-lead { color: var(--ej-gold-light); font-weight: 700; }

#ejTbPreview .ej-faq-quote {
margin: 24px 0 4px;
padding: 2px 0 2px 16px !important;
background: transparent !important;
border: 0 !important;
border-left: 2px solid rgba(220, 195, 138, .6) !important;
border-radius: 0 !important;
font-family: var(--ej-serif);
font-size: 19px;
font-style: italic;
line-height: 1.45;
color: var(--ej-cream);
}

#ejTbPreview .ej-faq-quote-name {
display: block;
margin-top: 6px;
font-family: var(--ej-sans);
font-size: 12px !important;
font-style: normal;
font-weight: 600;
line-height: 1.4;
letter-spacing: .14em;
text-transform: uppercase;
color: var(--ej-gold-light) !important;
}
#ejTbPreview .ej-tb-close {
position: absolute;
top: 18px;
right: 18px;
z-index: 2;
float: none;
width: 40px;
height: 40px;
display: flex;
align-items: center;
justify-content: center;
padding: 0;
border: 1px solid rgba(220, 195, 138, .40);
border-radius: 50%;
background: rgba(255, 255, 255, .06);
color: var(--ej-gold-light);
font-size: 20px;
line-height: 1;
transition: background-color 160ms ease, color 160ms ease;
}
#ejTbPreview .ej-tb-close:hover { background: var(--ej-gold); color: var(--ej-navy); }

#ejIframeModal .ej-iframe-holder { border-radius: 6px 6px 0 0; }
#ejIframeModal .ej-iframe-modal-content:not(.has-title) .ej-iframe-holder { border-radius: 6px; }
#ejIframeModal .ej-iframe-title {
padding: 11px 8px;
background: var(--ej-midnight);
color: var(--ej-gold-light);
border-top: 1px solid rgba(220, 195, 138, .22);
border-radius: 0 0 6px 6px;
font-family: var(--ej-label);
font-size: 12px;
font-weight: 600;
letter-spacing: .16em;
text-transform: uppercase;
}
#ejIframeModal .ej-iframe-title i { color: var(--ej-gold); font-size: 16px; }
#ejIframeModal .ej-iframe-spinner { background: var(--ej-midnight); border-radius: 6px; }
#ejIframeModal .ej-iframe-spinner .page-loading-spinner {
border-color: rgba(198, 161, 91, .25);
border-top-color: var(--ej-gold);
}

#ejIframeModal .modal-close { background: var(--ej-midnight) !important; }

#flightMapModal .flight-map-replay-btn {
padding: 9px 16px;
background: rgba(12, 34, 64, .72);
border: 1px solid rgba(220, 195, 138, .40);
border-radius: 5px;
color: var(--ej-gold-light);
font-family: var(--ej-sans);
font-size: 12.5px;
font-weight: 700;
letter-spacing: .12em;
text-transform: uppercase;
transition: background-color 160ms ease, color 160ms ease;
}
#flightMapModal .flight-map-replay-btn:hover { background: var(--ej-gold); color: var(--ej-navy); }

@media (max-width: 600px) {
#ejIframeModal > .ej-iframe-modal-content { border-radius: 0 !important; }
#ejIframeModal .ej-iframe-holder,
#ejIframeModal .ej-iframe-modal-content:not(.has-title) .ej-iframe-holder,
#ejIframeModal .ej-iframe-title { border-radius: 0; }
}
@media (max-width: 768px) {
html #ejTbPreview .ej-tb-panel { width: 94%; max-height: 88vh; padding: 28px 22px 30px; }
#ejTbPreview .ej-tb-body { max-height: calc(88vh - 2px); padding: 28px 22px 30px; }
#ejTbPreview .ej-tb-close { top: 12px; right: 12px; }
#ejTbPreview .ej-tb-panel h3 { padding-right: 44px !important; }
}


#dbd .day-card {
border-top: 0;
border-bottom: 0;
border-left-color: rgba(12, 34, 64, .09);
border-right-color: rgba(12, 34, 64, .09);
box-shadow: none;
}

#dbd .day-card.ej-dc-last {
border-bottom: 1px solid rgba(12, 34, 64, .09);
border-radius: 0 0 3px 3px;
}


#dbd .destination-header-gold,
#dbd .destination-header-silver { box-shadow: none; }

#dbd .activity-item { border-bottom: 0; }

.prices-section .ej-flight-divider {
border-top-color: rgba(12, 34, 64, .16);
}

