


#hotels .lodging-details h4,
#hotels .lodging-card-header h4 {
white-space: normal !important;
min-width: 0;
max-width: 100%;
font-size: 13px !important;
line-height: 1.45 !important;
overflow-wrap: break-word;
text-wrap: balance;
}
@media (max-width: 767px) {
#hotels .lodging-details h4,
#hotels .lodging-card-header h4 { letter-spacing: .12em !important; padding: 7px 12px !important; }
#hotels .lodging-card-header { gap: 12px; }
}

.video-testim-stage { position: relative; overflow: hidden; }
.vtc-side-panel { display: none; flex: 1; min-width: 0; position: relative; overflow: hidden; }
@media (min-width: 900px) { .vtc-side-panel { display: block; } }
.vtc-outro-desktop, .vtc-outro-mobile { display: none; }

.ej-platinum-eyebrow { font-size: 13px; }
@media (max-width: 767px) {
#price .ej-platinum-band { margin: 30px 0 6px; padding: 22px 20px 22px; }
#price .ej-platinum-eyebrow { font-size: 13px; letter-spacing: .2em; }
#price .ej-platinum-q { margin-top: 10px; font-size: 16px; line-height: 1.5; }
#price .ej-platinum-invite { margin-top: 8px; font-size: 25px; line-height: 1.18; }
#price .ej-platinum-band .ej-platinum-cta {
width: 100%;
height: 48px;
margin-top: 20px;
padding: 0 16px;
font-size: 15px;
}
}

@media (max-width: 767px) {
#price .price-mobile-wrapper table.price-mobile-table {
width: 100% !important;
margin: 0 !important;
border-collapse: separate !important;
border-spacing: 0 !important;
background: var(--ej-ivory) !important;
border: 1px solid rgba(12, 34, 64, .09) !important;
border-radius: 4px !important;
overflow: hidden;
}
#price .price-mobile-wrapper table.price-mobile-table > tbody > tr > th,
#price .price-mobile-wrapper table.price-mobile-table > tbody > tr > td {
border: 0 !important;
border-radius: 0 !important;
background: transparent !important;
padding: 14px 18px !important;
vertical-align: middle !important;
line-height: 1.35 !important;
}

#price .price-mobile-wrapper table.price-mobile-table > tbody > tr:first-child > th {
padding: 16px 18px 12px !important;
font-family: var(--ej-label) !important;
font-size: 15px !important;
font-weight: 400 !important;
letter-spacing: .16em !important;
text-transform: uppercase !important;
text-align: left !important;
color: #7F5D23 !important;
}

#price .price-mobile-wrapper table.price-mobile-table > tbody > tr:nth-child(2) > th {
padding: 0 18px 9px !important;
font-family: var(--ej-sans) !important;
font-size: 13px !important;
font-weight: 700 !important;
letter-spacing: .12em !important;
text-transform: uppercase !important;
text-align: left !important;
color: var(--ej-body) !important;
border-bottom: 2px solid var(--ej-gold) !important;
}
#price .price-mobile-wrapper table.price-mobile-table > tbody > tr:nth-child(2) > th:last-child { text-align: right !important; }

#price .price-mobile-wrapper table.price-mobile-table > tbody > tr:nth-child(n+4) > td {
border-top: 1px solid #E3D8C2 !important;
}
#price .price-mobile-wrapper table.price-mobile-table > tbody > tr > td.price-mobile-table-category {
width: auto !important;
text-align: left !important;
font-weight: 600 !important;
}
#price .price-mobile-wrapper table.price-mobile-table > tbody > tr > td.price-mobile-table-price {
width: 1% !important;
white-space: nowrap !important;
text-align: right !important;
font-weight: 600 !important;
color: var(--ej-ink) !important;
font-variant-numeric: tabular-nums lining-nums;
}
#price .price-mobile-wrapper .price-mobile-section-gap { height: 18px !important; }
}


#hotels .lodging-contents .lodging-details ul li .hotel-destination-name { font-size: 13px !important; }

#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 { font-size: 13px !important; letter-spacing: .2em; }

#flights .flights-contents table > tbody > tr:first-child > th,
#price .pricenomobile table.pricetable > tbody > tr:nth-child(2) > th,
#price .pricenomobile table.pricetable > tbody > tr:nth-child(2) > th a { font-size: 13px !important; }
@media (max-width: 768px) {
body #flights .flights-contents table.ej-flight-table > tbody > tr:first-child > th { font-size: 9.5px !important; }
}

.ej-tc-num, .ej-tc-count { font-size: 13px; }

.ejtb-num, .ejtb-count, .ejtb-label { font-size: 13px; }

@media (max-width: 768px) {

.slider-video-container.video-ready:fullscreen .video-destination-label { display: block !important; }
}

.slider-video-container .video-destination-label { text-shadow: 0 1px 3px rgba(8, 24, 46, .85), 0 0 12px rgba(8, 24, 46, .5); }

@media (max-width: 540px) {
#flights .flights-contents table, .flights-section .flights-contents table { min-width: 0 !important; width: 100% !important; }

#flights .flights-contents table th, #flights .flights-contents table td,
.flights-section .flights-contents table th, .flights-section .flights-contents table td { min-width: 0 !important; }

#flights .flights-contents table tr > td:first-child:nth-last-child(3),
.flights-section .flights-contents table tr > td:first-child:nth-last-child(3) { white-space: nowrap; }
}
@media (max-width: 380px) {
#flights .flights-contents table:not(.airfare-price-table) th, #flights .flights-contents table:not(.airfare-price-table) td,
.flights-section .flights-contents table:not(.airfare-price-table) th,
.flights-section .flights-contents table:not(.airfare-price-table) td { padding-left: 5px !important; padding-right: 5px !important; }
}
@media (max-width: 900px) {
#fred .fred-layout > .fred-photo-col, #fred .fred-layout > .fred-content-col { min-width: 0; }
#fred .fred-cta-btn { white-space: normal; }
}

.carousel-prev, .carousel-next, #vtcPlayBtn, #vtcMuteBtn, button.link-button, a.dbdtourbtn-gold, button.ej-exp-more,
.ej-sticky-cta-wrap > a, #hotels a.iframehtl, .ej-platinum-band .ej-platinum-cta { position: relative; }
.ej-slider-nav::after, .ej-nav::after, .video-fullscreen-btn::after, .modal-close::after,
.carousel-prev::after, .carousel-next::after, #vtcPlayBtn::after, #vtcMuteBtn::after, button.link-button::after,
a.dbdtourbtn-gold::after, button.ej-exp-more::after, .ej-sticky-cta-wrap > a::before, #hotels a.iframehtl::after, .ej-platinum-band .ej-platinum-cta::after {
content: ""; position: absolute; left: 50%; top: 50%; width: max(100%, 44px); height: max(100%, 44px);
transform: translate(-50%, -50%); background: none; border: 0; box-shadow: none;
}
@media print {
.ej-slider-nav::after, .ej-nav::after, .video-fullscreen-btn::after, .modal-close::after,
.carousel-prev::after, .carousel-next::after, #vtcPlayBtn::after, #vtcMuteBtn::after, button.link-button::after,
a.dbdtourbtn-gold::after, button.ej-exp-more::after, .ej-sticky-cta-wrap > a::before, #hotels a.iframehtl::after, .ej-platinum-band .ej-platinum-cta::after { content: none; }
}

#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 { position: relative; }
#printer-friendly-button-desktop a.gold-light-btn::after, #printer-friendly-button-desktop a.silver-light-btn::after,
#printer-friendly-button-mobile a.gold-light-btn::after, #printer-friendly-button-mobile a.silver-light-btn::after {
content: ""; position: absolute; left: 50%; top: 50%; width: max(100%, 44px); height: max(100%, 44px);
transform: translate(-50%, -50%); background: none; border: 0; box-shadow: none;
}
@media print {
#printer-friendly-button-desktop a.gold-light-btn::after, #printer-friendly-button-desktop a.silver-light-btn::after,
#printer-friendly-button-mobile a.gold-light-btn::after, #printer-friendly-button-mobile a.silver-light-btn::after { content: none; }
}

@media (max-width: 900px) {
#fred .fred-layout > .fred-photo-col { width: 100%; }
#fred .fred-photo-frame img { aspect-ratio: auto 4 / 3; }
}
