h3.expeditionsub { font-size: 24px; font-weight: 400; font-family: futura-pt; width: 100%; text-align: center; margin-bottom: 30px; display: block; }
h3.expeditionsub.detailssub { margin-bottom: 15px; }

.banneroverlaytext { position: absolute; width: 100%; }
.expeditionoverlay { background: rgba(255,255,255, 0.8); position: relative; } 
.expeditionoverlay { top: 75px; left: calc(50% - 578px); width: 400px; text-align: left; padding: 25px; }
.expeditionoverlay .icon { position: absolute; right: -20px; top: 30px; background: #007583; padding: 10px; }
.expeditionoverlay .icon svg { width: 50px; }
.expeditionoverlay svg * { fill: white; stroke: white; }
.expeditionoverlay .summary { max-height: 270px; overflow-y: hidden; position: relative }
.expeditionoverlay h1 { color: #294144; margin-bottom: 5px; margin-right: 35px}
.expeditionoverlay p { color: #294144 }
.expeditionoverlay h1.smallunderline:after { border-bottom: 2px solid #007583 }
.expeditionoverlay .duration { margin-top: 20px; font-size: 18px; font-weight: 400; }

.banner.expeditionbanner { margin-bottom: 30px; }
.banner.expeditionbanner img { width: 100%; aspect-ratio: 3840/1336; } /* Based on aspect ratio of BANNER image */
.expeditionbanner .slick-dots { display: none !important; }
.expeditionbanner .slick-prev, .expeditionbanner .slick-next { z-index: 10000; }

.ctabuttons a { float: right; position: relative;min-width: 130px; text-align: center}
.dateselection { float: left; }
.dateselection.open:before { content: ""; border-left: 12px solid transparent; border-right: 12px solid transparent; border-bottom: 12px solid #007583; position: absolute; bottom: -26px; left: calc(50% - 10px);  }
.dateselector { background: #007583; padding: 20px 0px; color: white; margin-top: 25px; }

.dateselector { display: none; margin-left: -10px; margin-right: -10px; }
.dateselector .years { text-align: center; margin: 0px auto; }
.dateselector .years .year { display: inline-block; margin: 0px 10px 10px 10px; padding: 5px 10px;  }
.dateselector .years .year.selected, .dateselector .departures .departure.selected  { background: #294144 }
.dateselector .years .year a { color: white; text-decoration: none; font-weight: 400; font-size: 1.0rem;}
.dateselector .departures { text-align: center }
.dateselector .departure { vertical-align: top; cursor: pointer; display: inline-block; width: 160px; height: 90px; background: #33919c; padding: 20px; margin: 8px; text-align: center }
.dateselector .departure:hover { background: #294144 }
.dateselector .departure p { margin: 0px;}
.dateselector .departure a { text-decoration: none; color: inherit; }
.dateselector .departure .inaidof { font-style: italic; overflow: hidden; max-height: 50px; }
.dateselector .departure.available { border-bottom: 2px solid #24d20c }
.dateselector .departure.limited { border-bottom: 2px solid #f7af20 }
.dateselector .departure.full { border-bottom: 2px solid #e92525 }
.dateselector .departure.unavailable { border-bottom: 2px solid #e92525 !important }

.availability div { display: inline-block; margin: 20px 20px 10px 0px; }
.availability div:before { content: ""; width: 13px; height: 13px; display: inline-block; position: relative; top:1px; left: -7px }
.availability div { font-size: 10pt; margin-left: 17px; font-style: italic; }
.availability div.available:before { background: #24d20c }
.availability div.available:after { content: "Spaces available" }
.availability div.limited:before { background: #f7af20 }
.availability div.limited:after { content: "Limited spaces" }
.availability div.full:before { background: #e92525 }
.availability div.full:after { content: "Not available" }

.availability.main { border-top: 1px solid #979795; margin-top: 20px; }
.availability.main div { margin-top: 10px; margin-left: 7px }
.availability.main div:before { border-radius: 50%; }

.specialoffer { padding: 1px 30px 20px 30px; margin: 20px 0px; border: 1px solid #F9F9F7; border-radius: 4px; border-top-left-radius: 0px; background: #F9F9F7;}
.specialoffer.offer:before { left: -1px; top: -1px; border-width: 38px 38px 0px 0px; }

.pdfbuttons { float: right; margin-top: 25px; }
.pdfbuttons a { position: relative; width: 170px; display: inline-block; text-align: center; margin-left: 18px; border: 2px solid #294144; color: #294144; text-decoration: none; padding: 10px; font-family: futura-pt; font-size: 12pt}
.pdfbuttons a:before { content: ""; background-image: url('/images/icons/kit.svg'); width: 21px; height: 28px; display: inline-block; background-repeat: no-repeat; position: absolute; left: 20px; bottom: 4px;}
.pdfbuttons a.tripnotes:before { background-image: url('/images/icons/tripnotes.svg'); left: 10px; bottom: 2px;}

h2.dates { font-weight: 400; font-size: 1.7rem; font-family: fira-sans; text-transform: none; margin-bottom: 0px;  }
.inaidof h3 { font-weight: 400; font-family: fira-sans; font-style: italic; text-transform: none; margin: 0px 0px 20px 0px }
.inaidof h3 a { text-decoration: none; color: inherit; }
.inaidof h3 a:hover { text-decoration: underline; }

.logos { margin-bottom: 30px; }
.logos a { text-decoration: none; }

.container .bannerinfo { background: #007583; padding: 20px 0px; color: white; margin-top: 25px; text-align: center }
.container .bannerinfo.bannerinfo_orange { background: #e6560d; }

.expeditiontabs { margin: 40px 0px 30px 0px; text-align: center; }
.expeditiontabs .tab { opacity: 0.5; width: calc(25% - 18px); margin-bottom: 30px; cursor: pointer; height: 108px; background: #f4f4f2; text-align: center;  }
.expeditiontabs .tab:last-child { margin-right: 0px; }
.expeditiontabs .tab a { text-decoration: none; color: inherit }
.expeditiontabs .tab p.head { font-weight: 500; margin-top: 25px; font-size: 18px; font-family: futura-pt; }
.expeditiontabs .tab p.text { font-weight: 200; color: #929290; font-style: italic }
.expeditiontabs .tab.selected { opacity: 1}

.expeditionbullets { margin-bottom: 30px; margin-left: 5px; }
.expeditionbullets li { color: #007583; font-weight: 400; margin-bottom: 15px; }
.expmaincopy { font-size: 0.9rem; }

.media-slide { position: relative; width: 150% !important; max-width: 150%; left: -50%; 
	height: calc(0px + 50vw/1.9375); } /* Based on aspect ratio of CHALLENGE_MEDIA image type, and 2 images, with space for dots */
.media-slide .slick-slide > img { aspect-ratio: 2232/1152; } /* Based on aspect ratio of CHALLENGE_MEDIA image type */
.media-slide .slick-prev, .media-slide .slick-next { top: calc(50%); -ms-transform: translateY(-50%); /* IE 9 */ -webkit-transform: translateY(-50%); /* Chrome, Safari, Opera */ transform: translateY(-50%); margin: 0px   }
.media-slide .slick-active { opacity: 0.3; -webkit-filter: grayscale(100%); filter: grayscale(100%); }
.media-slide .slick-center, .media-slide .slick-dots .slick-active { opacity: 1.0; -webkit-filter: grayscale(0%); filter: grayscale(0%); }
.media-slide .slick-dots { display: none !important; max-height: 20px; overflow: hidden; bottom: 5px; }
.media-slide .slick-dots li { margin: 0px 5px}
.media-slide .slick-dots button:before { font-size: 0pt; opacity: 1.0; border: 1px solid #fff; background: none; border-radius: 50%; width: 11px; height: 11px;  }
.media-slide .slick-dots .slick-active button:before { background: #fff; }

.media-slide .slick-prev { left: 28% }
.media-slide .slick-next { right: 28% }
.media-slide .slick-prev, .media-slide .slick-next { width: 65px; height: 60px;  z-index: 100}
.media-slide .slick-prev:before, .media-slide .slick-next:before { font-size: 70px; color: #444; }
.media-slide .imginfo { position: absolute; bottom: 10px; left: 10px; display: none; }
.media-slide .slick-center .imginfo { display: block; }
.media-slide .imginfo p { color: white; text-align: left;}
.media-slide .imginfo p.imgtitle { font-family: futura-pt; text-transform: uppercase; font-size: 24px; line-height: 24px; margin: 10px 0px 0px 0px}
.media-slide .imginfo p.credit { font-size: 15px; margin: 0px}

.maplinks a.flatbutton { display: inline-block; width: 170px; margin: 0px 10px 10px 10px }

.extension { vertical-align: top; text-align: left; }
.extension .extensiontext { height: 350px; overflow-y: auto }
.extension li { font-weight: 400; }
.extension li.single { margin-top: 20px; }
.extension .flatbutton { margin: 20px auto 30px auto; display: block; }

.rhitems .infoitem h2 { margin: 3px 0px 15px 0px; color: #007583; font-size: 1.25rem}
.infoactionbuttons .button { display: inline-block; margin: 15px 0 10px 10px; }

.payops { text-align: center; margin: 50px auto 50px auto; font-size: 1.0rem }
.payops .payop { display: inline-block; vertical-align: top; width: 33%; border-left: 1px solid #929290; padding: 0px 20px; min-height: 260px; }
.payops .payop:first-child { border-left: 0px; }
.payops .payop p { padding: 10px 0px; }
.payops .payop .hl { font-weight: 700 }

.payops .extended .payop { display: block; border: none; width: 100%; min-height: 0px; text-align: left;}
.payops .extended .payop h2 { margin-bottom: 0px; }

.inclusioncol { float: left; width: 50%; padding-right: 30px; }
.inclusioncol h4 { font-family: futura-pt; text-transform: uppercase; margin-bottom: 20px;}
.inclusioncol li { padding-bottom: 15px; }

.costdetails .detailblock { border-top: 1px solid #929290; clear: both;  }
.costdetails .detailblock h2 { float: left; width: 50%; padding-right: 30px; font-size: 1.2rem; }
.costdetails .detailblock .desc { margin: 20px 0px; width: 50%; float: left; font-size: 0.9rem;}

.paymentvideocontainer { position: relative; padding-bottom: 56.25%; /* 16:9 */ height: 0; margin-bottom: 55px; }
.paymentvideocontainer iframe { position: absolute; width: 100%; height: 100%; }

.fedialog.sharedialog { width: 80% !important; max-width: 900 }
.fedialog.sharedialog .linktoshare { background: white; padding: 2px 4px; margin-top: 0px; word-wrap: break-word; }
.fedialog.sharedialog .sharelinks img { width: 40px;  }
.fedialog.sharedialog .flatbutton { margin: 10px 0px 0px 0px }
.fedialog.sharedialog .ui-dialog-titlebar { display: inline-block; background: none; height: 0px; width: 100%; position: absolute; }
.fedialog.sharedialog .ui-dialog-titlebar .ui-dialog-titlebar-close { cursor: pointer; display: block !important; position: absolute; right: 20px; z-index: 1000 }

@media screen and (max-width: 1800px)
{
	.expeditionbanner .expeditionoverlay { top: 0px }
}

@media screen and (max-width: 1162px)
{
	.thechallenge .col-2 { display: block; margin: 10px auto 30px auto; }
} 

@media screen and (max-width: 1400px)
{
	.expeditionbanner .expeditionoverlay { top: 75px }
	.expeditionbanner .expeditionoverlay .summary { display: none; }
}

@media screen and (max-width: 1200px)
{
	.expeditionbanner { margin-bottom: 0px; }
	.expeditionbanner .banner-slide { margin-bottom: 0px }
	.expeditionbanner .banneroverlaytext { position: static !important; width: 100%; transform: unset; -ms-transform: translateY(0%); /* IE 9 */ -webkit-transform: translateY(0%); /* Chrome, Safari, Opera */ transform: translateY(0%);  }
	.expeditionbanner .banneroverlaytext.inner { width: 100%; padding: 0px; }
	.expeditionoverlay { position: static; left: 0px !important; margin-bottom: 30px} 
	.expeditionoverlay { width: 100%; text-align: left; padding: 25px; }
	.expeditionoverlay .icon { left: 20px; top: 20px; width: 70px}
 	.expeditionoverlay h1 { margin-left: 80px; margin-right: 0px; padding-bottom: 0px }
 	.expeditionoverlay h1.smallunderline:after { border: none;}
	.media-slide .slick-prev, .media-slide .slick-next { width: 35px; height: 35px; }
	.media-slide .slick-prev:before, .media-slide .slick-next:before { font-size: 35px; }
}

@media screen and (max-width: 900px)
{
	.payops .payop { width: 290px;}
	.payops .payop:nth-child(3) { border: none; }
}

@media screen and (max-width: 850px) {
	.extension .extensiontext { height: auto; }
}

@media screen and (max-width: 800px) and (min-width: 600px)
{
	.pdfbuttons { width: 140px; margin-top: 10px }
	.pdfbuttons a { margin-bottom: 5px; width: 130px; padding-left: 31px; text-align: left; margin-left: 5px}
	.pdfbuttons a:before { left: 5px !important;}
} 

@media screen and (max-width: 800px)
{  
	.expeditionoverlay .icon { left: auto; right: 20px; top: 20px;}
	.expeditionoverlay h1 { line-height: 2.0rem; margin: -5px 80px 10px -10px; }
	.expeditionoverlay .duration { margin: 0px 80px 0px -10px }
	h2.dates { margin-left: 5px } 
	.inaidof { margin-left: 5px }
	.media-slide { width: 100% !important; max-width: 100%; left: 0px; height: calc(100vw/1.9375); } /* Based on aspect ratio of CHALLENGE_MEDIA image type, and 1 image */
	.media-slide .slick-slide img { width: 100% !important; }
	.media-slide .slick-slide .imginfo img { width: auto !important; }
	.media-slide .slick-prev:before, .media-slide .slick-next:before { color: #ffffff; }
	.media-slide .slick-prev { left: 3px }
	.media-slide .slick-next { right: 3px }
	.media-slide .slick-prev, .media-slide .slick-next { top: calc(50%); }
	/* CC-3221 Hide dots on all resolutions
	.media-slide .slick-dots { display: block !important } 
  	.media-slide .slick-dots li { margin: 0px 0px; }
	.media-slide .slick-dots button { padding: 0px;  width: 8px; height: 8px; } 
  	.media-slide .slick-dots button:before { width: 8px; height: 8px; } */

	.expeditiontabs .tab { width: calc(25% - 18px); height: auto; margin-bottom: 0; border: 2px solid #294144; }
	.expeditiontabs .tab a, .expeditiontabs .tab .text { font-size: 0.8em !important;}
	.expeditiontabs .tab p.head { margin-top: 12px; }
	.costdetails .detailblock h2 { float: none; width: 100%; padding: 0 10px; }
	.costdetails .detailblock .desc { float: none; width: 100%; margin: 0; padding: 0 10px; }
	.inclusioncol { float: none; width: 100%; padding: 0 10px; }
}

@media screen and (max-width: 600px)
{
	.expeditionoverlay .icon { width: 50px; height: 50px; padding: 5px }
	.expeditionoverlay .icon svg { width: 40px }
	.expeditionoverlay h1 { font-size: 1.4rem; line-height: 1.5rem; }
	.expeditionoverlay .duration { font-size: 1.0rem; }
	 h2.dates { font-size: 1.4rem; clear: both; }
	.ctabuttons, .pdfbuttons { width: 100%; margin: 0; text-align: center; float: none; }
	.ctabuttons a, .pdfbuttons a { display: inline-block; width: auto; margin: 5px 0 0 0; font-size: 10pt; }
	.pdfbuttons a { float: none; }
	.ctabuttons a:first-child, .pdfbuttons a:first-child { margin-right: 5px }
	.payops .payop { border: none; border-bottom: 1px solid #929290; height: auto; min-height: auto}
	.pdfbuttons a.tripnotes, .pdfbuttons a.kitlist { padding-left: 36px; text-align: left; }
	.pdfbuttons a.tripnotes:before, .pdfbuttons a.kitlist:before { left: 10px; bottom: 2px; }
	.media-slide .slick-slide .imginfo { bottom: 0px }
	.media-slide .slick-slide .imginfo img { width: 20px !important; padding-bottom: 0px !important}
	.media-slide .slick-slide .imginfo .imgtitle, .media-slide .slick-slide .imginfo .credit { margin-top: 5px; font-size: 0.9rem !important; line-height: 1.1rem }
	.media-slide .slick-prev, .media-slide .slick-next { width: 20px; height: 20px; }
	.media-slide .slick-prev:before, .media-slide .slick-next:before { font-size: 20px; }
	.fedialog.sharedialog { max-width: 300px; padding: 0px }
}

@media screen and (max-width: 550px)
{
	.expeditiontabs .tab { width: calc(50% - 18px); margin-bottom: 18px; float: left; }
}
