/* 
Main:  #0079b2
Hover: #e6f7ff 
*/

*, 
::after, 
::before {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

html, 
body {
    margin: 0;
    padding: 0;
    height: 100%;
}

body {
    background: #FFFFFF;
    /* Prevent font scaling in landscape */
    -webkit-text-size-adjust: none;
    -moz-text-size-adjust: none;
    -ms-text-size-adjust: none;
    text-size-adjust: none;
    overflow-x: hidden;
}

form,
td {
    padding: 0;
    margin: 0;
}

.acClear {
    clear: both;
}

.acHidden {
    display: none;
}
.hide {
    display: none !important;
}

.acNoWrap {
    white-space: nowrap;
}
.acStepDisabled {
    pointer-events: none;
    filter: alpha(opacity=50);
    opacity: 0.5;
    background-color: #E0E0E0;
}

.acWordBreak {
    /* These are technically the same, but use both */
    overflow-wrap: break-word;
    word-wrap: break-word;

    -ms-word-break: break-all;
    /* This is the dangerous one in WebKit, as it breaks things wherever */
    word-break: break-all;
    /* Instead use this non-standard one: */
    word-break: break-word;

    /* Adds a hyphen where the word breaks, if supported (No Blink) */
    -ms-hyphens: none;
    -moz-hyphens: none;
    -webkit-hyphens: none;
    hyphens: none;
}

/********* START DEFAULT Background Colors *********/

.acWebTableHeader,
.acWebGridViewHeaderStyle,
.acWebGridViewRowStyle,
.acWebGridViewAlternatingRowStyle,
.row-warning {
    background-color: #FFFFFF;
}
h2.acWebFormSectionTitle,
.acWebFormSectionTitle {
    background-color: #f5f5f5;
}

tr.acWebTableHeader:hover,
.acHoverBox .acWebGridViewRowStyle:hover,
.acHoverBox .acWebGridViewAlternatingRowStyle:hover,
.acHoverBox .acWebGridViewErrorRowStyle:hover,
.acHoverBox .acWebGridViewSuccessRowStyle:hover,
.acInputForm .acToggleHeader:hover {
    background-color: #e6f7ff;
}

.acWebGridViewSelectedRowStyle {
    background-color: #e6f7ff;
}

.acWebGridViewErrorRowStyle {
    background-color: #FFDDDD;
}
.acWebGridViewSuccessRowStyle {
    background-color: #E6FECD;
}

.acWebTableHeaderError {
    background-color: #CD0202 !important;
}
h4.acWebTableHeader.acWebTableHeaderError {
    color: #FFFFFF;
}

/********* START DEFAULT Font Colors *********/

body,
td,
th,
input,
select,
.acWebGridViewHeaderStyle,
.acWebGridViewHeaderStyle td,
.acWebGridViewHeaderStyle th,
.acWebGridViewHeaderStyle td a,
.acWebGridViewHeaderStyle th a {
    color: #333333;
}

a,
a:link,
a:visited,
a:hover,
a:active {
    color: #0079b2;
}

.acValidation,
.acError {
    color: #CD0202 !important;
}

/********** Font Awesome Icon Styles ********/
a.acLinkIcon,
a.acLinkIcon:link,
a.acLinkIcon:visited {
    text-decoration: none;
    width: 2em;
    height: 2em;
    line-height: 2em;
    -moz-border-radius: 50%;
    -webkit-border-radius: 50%;
    border-radius: 50%;
    background-color: transparent;
    border-color: transparent;
    text-align: center;
    display: inline-block;
    transition: all .5s;
    cursor: pointer;
}
a.acLinkIcon:hover,
a.acLinkIcon:active,
a.acLinkIcon:focus {
    background-color: rgba(0, 0, 0, .1);
}
a.acLinkIcon > i {
    width: 2em;
    height: 2em;
    line-height: 2em;
}

i.icon-remove {
    color: #CD0202;
}

/********** START Book Now Button Styles ********/

input[type=button][disabled],
input[type=submit][disabled] {
    cursor: not-allowed;
}

/********** START Fonts - Family *********/
body,
td,
th,
h1,
input,
button,
textarea,
select,
option,
.adventureItinerary,
.adventureGearList,
.importantInformation,
.acWebLabelInformation {
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
}

/********** START Font - Size *********/

body,
h2,
h3,
h4,
td,
th,
/*a,
a:link,
a:visited,*/
a:hover,
a:active,
.acWebGridViewHeaderStyle,
.adventureDescription,
.adventureItinerary,
.adventureItinerary td,
.adventureGearList,
.importantInformation,
.cancellationInformation,
.acWebLabel,
.acWebLabelInformation,
.acWebLabelPrice {
    font-size: 16px;
}
h1 {
    font-size: 18px;
}

h4.acWebTableHeader {
    padding: 5px;
}

/********** START Font - Weight *********/

h3,
th,
/*strong,*/
a,
a:link,
a:visited,
a:active,
a:hover,
.acWebGridViewHeaderStyle,
.acWebLabel,
h2.acWebFormSectionTitle,
.acWebFormSectionTitle {
    font-weight: 600;
}

.acWebLabelInformation {
    font-weight: normal;
}

a:link,
a:visited,
a:active {
    text-decoration: none;
}
a:hover {
    text-decoration: underline;
}

h1 {
    padding: 0;
    margin: 4px 0 5px 0;
    text-transform: capitalize;
}
h2 {
    padding: 0;
    margin: 0;
    line-height: 1.125em;
}
h3,
h4 {
    padding: 0;
    margin: 0;
}

.adventureDescription {
    margin: 6px 0 4px 0;
    line-height: 1.25em;
    letter-spacing: .0125em;
}
.adventureItinerary,
.cancellationInformation,
.adventureGearList,
.importantInformation {
    line-height: 1.25em;
    letter-spacing: .0125em;
}

.acPaddingAll {
    padding: 1em;
}

.acWebColumnCenter,
.acRatesTable th.acWebColumnCenter,
.acRatesTable td.acWebColumnCenter {
    text-align: center;
}
.acWebColumnRight,
.acRatesTable th.acWebColumnRight,
.acRatesTable td.acWebColumnRight {
    text-align: right;
}
.acWebColumnLeft,
.acRatesTable th.acWebColumnLeft,
.acRatesTable td.acWebColumnLeft {
    text-align: left;
}

.acCalendarAvailability a:hover {
    text-decoration: none;
}
.acCalendarAvailability {
    width: 100%;
    height: calc(100% - 30px);
    border-color: #FFFFFF !important;
}
.acCalendarAvailability .fa-chevron-left,
.acCalendarAvailability .fa-chevron-right {
    display: block;
    text-align: center;
    font-size: 16px;
}
.acCalendarAvailability tr:first-child td:first-child {
    color: #333333 !important;
    background-color: #FFFFFF !important;
}
.acCalendarAvailability > tbody > tr:first-child > td {
    border-bottom: 1px solid #e0e0e0;
}
.acCalendarAvailability i {
    color: #333333;
}
.acCalendarAvailability .acCalendarDay {
    line-height: 40px;
    font-size: 14px;
}
.acCalendarAvailability .acCalendarDay a, 
.acCalendarAvailability .acCalendarDay a:link {
    -moz-border-radius: 50%;
    -webkit-border-radius: 50%;
    border-radius: 50%;
    width: 34px;
    height: 34px;
    line-height: 34px;
    display: block;
}
.acCalendarAvailability .acCalendarDay.acSelectedDay a, 
.acCalendarAvailability .acCalendarDay.acSelectedDay a:link {
    color: #FFFFFF !important;
    background-color: #0079b2;
}
.acCalendarAvailability .acCalendarDay.acAvailDay a, 
.acCalendarAvailability .acCalendarDay.acAvailDay a:link {
    border: 1px solid #999999;
    line-height: 32px;
}
.acCalendarAvailability .acCalendarDay a:hover {
    color: #333333 !important;
    background-color: #e6f7ff;
    font-size: 14px !important;
}
.acCalendarAvailability .acCalendarDay.acSelectedDay a:hover {
    filter: alpha(opacity=80);
    opacity: 0.8;
}
.acCalendarSelectedDate {
    font-size: 16px;
    font-weight: 600;
    display: inline-block;
    padding: .125rem .5rem;
    /*margin: 0 0 5px 5px;*/
    margin: 0;
    background-color: #e6f7ff;
    -moz-border-radius: .25rem;
    -webkit-border-radius: .25rem;
    border-radius: .25rem;
}

/* Month Left and Right buttons */
.acWebGridViewHeaderStyle.acCalendarHeader > tbody > tr > td > a:hover {
    filter: alpha(opacity=80);
    opacity: 0.8;
}

.acCustomWebLabel {
    display: block;
}

.acCalendarStep1,
.acCalendarStep2,
.acCalendarStep3,
.acCalendarStepDetails {
    width: 100%;
    display: block;
    vertical-align: top;
}

.acCalendarStep1 h2 {
    margin-bottom: 5px;
}

.acRatesTable, 
.acRatesTable td, 
.acRatesTable th {
    border: none;
} 
.acRatesTable th, 
.acRatesTable td {
    text-align: left;
    padding: .25em .5em;
    margin: 2px 0;
}
.acRatesTable th:first-child,
.acRatesTable td:first-child {
    padding-left: 0;
}
.acRatesTable th:last-child,
.acRatesTable td:last-child {
    padding-right: 0;
}
.acRatesTable.acCart td.acInputForm {
    padding: .75em .5em;
}
.acRatesTable.acCart td.acInputForm:last-child {
    padding-right: 0;
}
.acRatesTableFooter td {
    color: #333333;
    background-color: #FFFFFF;
    font-weight: 600;
}
.acRatesTable th,
.acRatesTableFooter td {
    text-transform: uppercase;
}

.acWebGridViewHeaderStyle th,
.acWebGridViewHeaderStyle td {
    text-transform: uppercase;
    border-bottom: 2px solid #e3e6e8;
}
.acWebGridViewHeaderStyle.acCalendarHeader td {
    border-bottom: none;
}
.acCalendarHeader td {
    font-size: 16px;
}
.acWebGridViewRowStyle td,
.acWebGridViewAlternatingRowStyle td,
.row-warning td {
    border-bottom: 1px solid #e3e6e8;
}
.row-warning .invalid-feedback {
    margin-top: 0;
    margin-bottom: .25rem;
    display: block;
}
.row-noborder td {
    border-bottom: none;
}
.row-zebra-stripes > .row + .row {
    border-top: 1px solid #E0E0E0;
    padding-top: 1em;
}

/* Weekday Name row */
/*th.acCalendarHeader {
    background-color: #f5f5f5;
}*/

.acRatesTable tr.acWebGridViewRowStyle,
.acRatesTable tr.acWebGridViewAlternatingRowStyle,
.acRatesTable tr.acWebGridViewErrorRowStyle,
.acRatesTable tr.acWebGridViewSuccessRowStyle,
.acRatesTable tr.row-warning {
    height: 40px;
}

#ctl00_middleContent_calAvailability a {
    display: block;
}
#ctl00_middleContent_calAvailability a:hover {
    text-decoration: none;
}

span.acStep {
    background-color: #016ecd;
    color: #FFFFFF;
    background-image: none;
    padding: 3px 5px 4px 4px;
    text-decoration: none;
    font-size: 14px;
    font-weight: 600;
    position: relative;
}
h2 span.acStep {
    font-style: normal;
}

.acCalendarStep2 {
    margin-top: 2em;
}

.navbar {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    padding: .5rem .5rem;
    background-color: #ffffff;
    height: 3rem;
    border-bottom: 1px solid #e3e6e8;
}
.navbar a i {
    color: #333333;
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
}
a.navbar-brand,
a.navbar-cart,
a.navbar-autofill {
    display: inline-block;
    font-size: 1.5rem;
    line-height: inherit;
    white-space: nowrap;
}
a.navbar-autofill {
    font-size: 1rem;
}
a.navbar-brand {
    margin-right: .25rem;
}
a.navbar-cart {
    margin-left: .25rem;
}
a.navbar-cart span {
    position: absolute;
    top: .3rem;
    right: .3rem;
    height: 1.1rem;
    min-width: 1.1rem;
    line-height: 1.1rem;
    padding: 0 2px;
    background-color: #0079b2;
    color: #FFFFFF;
    -moz-border-radius: 50%;
    -webkit-border-radius: 50%;
    border-radius: 50%;
    font-size: 10px;
    font-weight: 600;
    font-style: normal;
    font-variant: normal;
    text-align: center;
    text-decoration: none;
    filter: alpha(opacity=85);
    opacity: 0.85;
}
.navbar a:hover,
.navbar a:active {
    filter: alpha(opacity=80);
    opacity: 0.8;
    text-decoration: none;
}
.navbar-text {
    display: inline-block;
    color: #333333;
    /*font-size: .875rem;
    line-height: 1.1;*/
    font-size: 1rem;
    line-height: 1.5;
    font-weight: 600;
    text-align: center;
    margin-left: auto;
    margin-right: auto;
    /*max-width: 150px;*/
    max-width: calc(100% - 60px - 1.5rem);
    white-space: nowrap;
    overflow: hidden;
}

.navbar-menu {
    position: absolute;
    left: 0;
    top: 3rem;
    z-index: 1;
    display: none;
    min-width: 230px;
    max-width: 230px;
    /*background-color: #ffffff;
    color: #333333;*/
    background-color: #0079b2;
    color: #ffffff;
    display: none;
    -webkit-box-shadow: 0 1px 10px 0 rgba(0,0,0,0.12), 0 2px 4px -1px rgba(0,0,0,0.12);
    box-shadow: 0 1px 10px 0 rgba(0,0,0,0.12), 0 2px 4px -1px rgba(0,0,0,0.12);
}
.navbar-menu ul {
    margin-top: 0;
    margin-bottom: 0;
    list-style: none;
    padding: 0;
}
/*.navbar-menu ul li+li {
    border-top: 1px solid rgba(254,254,254,.1);
}*/
.navbar-menu ul li a,
.navbar-menu ul li a:link,
.navbar-menu ul li a:visited,
.navbar-menu ul li a:hover,
.navbar-menu ul li a:active,
.navbar-menu ul li a:focus {
    background-color: transparent;
    color: inherit;
    text-decoration: none;
    transition: all 0.3s;
    padding: .75rem .5rem;
    font-size: 1em;
    display: block;
    font-weight: 600;
    line-height: 1.5;
    text-align: left;
}
.navbar-menu ul li a i {
    text-align: center;
    display: inline-block;
    margin-right: .5rem;
    filter: alpha(opacity=70);
    opacity: 0.7;
    /*color: #999999;*/
}
.navbar-menu ul li a:hover {
    background-color: #e6f7ff;
    color: #333333;
}
.navbar-menu ul li a:hover i {
    filter: alpha(opacity=100);
    opacity: 1;
    /*color: #666666;*/
}

.acCartSteps {
    text-align: center;
    margin: 0 auto;
}
.acCartSteps td {
    text-align: center; 
    vertical-align: top;
    padding: 5px;
}
.acCartSteps td.acCurrent {
    border: none;
    background: none;
}
.acCartSteps div.acNumber {
    font-family: sans-serif;
    font-size: 14px;
    font-weight: 600;
    font-style: normal;
    font-variant: normal;
    line-height: 24px;
    color: #333333;
    background-color: #E0E0E0;
    text-align: center;
    text-decoration: none;
    margin: 0 auto 3px;    
    width: 24px;
    -moz-border-radius: 50%;
    -webkit-border-radius: 50%;
    border-radius: 50%;
}
.acCartSteps .acCurrent div.acNumber {
    background-color: #0079b2;
	color: #FFFFFF;
}
.acCartSteps span.acText {
    font-size: 12px;
    font-weight: 600;
    color: #999999;
    line-height: 1.2em;
}
.acCartSteps .acCurrent span.acText {
    color: #333333;
}
.acCartSteps .acConfirmed div.acNumber {
    color: #FFFFFF;
    background-color: #4CAF50;
}
.acCartSteps .acConfirmed span.acText {
    color: #4CAF50;
}
.acCartSteps .acDeclined div.acNumber {
    color: #FFFFFF;
    background-color: #da4f4a;
}
.acCartSteps .acDeclined span.acText {
    color: #da4f4a;
}

span.acFormNote {
    font-size: 12px;
    color: #666666;
    font-weight: normal;
    font-style: italic;
    display: block;
}

.acCartSummary th,
.acCartSummary td {
    padding: .5em 0;
}

.acCartSummaryThumb {
    width: 80px; 
    min-height: 60px; 
    vertical-align: top; 
    float: left;
    padding-right: 10px; 
}
.acCartSummaryThumb a {
    display: block;
}
.acCartSummaryThumb img {
    width: 80px;
}
.acCartSummary br {
    margin-bottom: 5px;
}

.acCartHr {
    background-color: #E0E0E0;
    height: 1px;
    border: none;
}

.acCart .acInputForm {
    padding: 10px 0;
    margin: 0;
}

.acCart .acFormNote {
    text-align: left;
    font-size: 12px;
    width: auto;
    color: #666666;
    font-style: italic;
}
.acCart .acFormItem {
    margin-bottom: 15px;
}

.acCart table.acFormItem td {
    padding-right: 5px;
}
.acCart .acInputForm label.acTitle,
.acCart .acInputForm div.acTitle,
.acCart .acInputForm label.acCheckBox {
    line-height: 2;
    font-size: 14px;
    display: block;
}
.acCart .acInputForm label.acCheckBox {
    line-height: 1;
    display: inline;
}
.acCart table.acFormItem td label.acCheckBox {
    line-height: 1.5;
}
.acCart .acInputForm label.acCheckBox a,
.acCart .acInputForm label.acCheckBox a:link,
.acCart .acInputForm label.acCheckBox a:visited,
.acCart .acInputForm label.acCheckBox a.acCartLink {
    color: #0079b2;
    font-weight: 600;
}

.acCart .acInputForm input[type=text], 
.acCart .acInputForm input[type=password], 
.acCart .acInputForm input[type=date], 
.acCart .acInputForm input[type=time], 
.acCart .acInputForm input[type=number], 
.acCart .acInputForm input[type=tel], 
.acCart .acInputForm input[type=email], 
.acCart .acInputForm textarea, 
.acCart .acInputForm select {
    font-size: 16px;
    width: 100%;
    padding: 8px 10px;
}

.acCart .acInputForm input[type="text"].acBirthDatePicker {
    width: 150px;
}

input[type=text].acDatePicker,
input[type=text].acUdfDatePicker {
    background-image: url(/User/_images/icons/icon-date.png);
    background-position: right 5px center;
    background-repeat: no-repeat;
}

input[type=text].acTimePicker {
    background-image: url(/User/_images/icons/icon-time.png);
    background-position: right 5px center;
    background-repeat: no-repeat;
}

input[type=text][disabled],
input[type=password][disabled],
input[type=checkbox][disabled],
textarea[disabled],
select[disabled] {
	background-color: #E0E0E0;
    cursor: not-allowed;
    border: 1px solid #ABADB3;
}

/* show glow around current field */
input[type=text]:focus, 
input[type=password]:focus, 
input[type=date]:focus, 
input[type=time]:focus, 
input[type=number]:focus, 
input[type=tel]:focus, 
input[type=email]:focus, 
input[type=checkbox]:hover,
textarea:focus, 
select:focus {
    -webkit-box-shadow: 0 0 4px #0376B9;
    -moz-box-shadow: 0 0 4px #0376B9;
    box-shadow: 0 0 4px #0376B9;
}
input[type=text][disabled]:focus, 
input[type=password][disabled]:focus, 
input[type=date][disabled]:focus, 
input[type=time][disabled]:focus, 
input[type=number][disabled]:focus, 
input[type=tel][disabled]:focus, 
input[type=email][disabled]:focus, 
input[type=checkbox][disabled]:hover,
textarea[disabled]:focus, 
select[disabled]:focus {
    -webkit-box-shadow: none;
    -moz-box-shadow: none;
    box-shadow: none;
}

.acCart .acInputForm select {
    width: 100%;
    height: calc(2.0625rem + 2px);
    padding: .375rem;
    font-size: .875rem;
    line-height: 1.5;
    color: #5c6873;
    background-color: #fff;
    background-clip: padding-box;
    border: 1px solid #e4e7ea;
    -moz-border-radius: .25rem;
    -webkit-border-radius: .25rem;
    border-radius: .25rem;
}
.acCartInquiry .acInputForm select {
    width: 100%;
}
.acCart .acInputForm select.acAutoWidth {
    width: auto;
}
.acCart .acInputForm select.acCartHalfWidth {
    width: 49%;
}
.acCart .acInputForm input[type=checkbox] {
    margin-right: 5px;
}
.acInputForm .RadInput_Default a.riUp {
    top: 7px;
}
.acInputForm .RadInput_Default a.riDown {
    bottom: 7px;
}

.acCartInquiryNewsletter .acInputForm input[type=text] {
    width: 100%;
    margin: 0;
}
.acCartInquiryNewsletter .acInputForm table.acTwoColumn {
    width: 100%;
    margin: 0;
    padding: 0;
}
.acCartInquiryNewsletter .acInputForm table.acTwoColumn td {
    margin: 0;
    padding: 0 0 0 4px;
}
.acCartInquiryNewsletter .acInputForm table.acTwoColumn td:first-child {
    padding: 0 4px 0 0;
}

i.acFieldRequired {
    color: #da4f4a;
    display: inline-block;
    line-height: 1em;
    font-size: 1rem;
}

table.acCart {
    width: 100%;
}
table.acCart td.acCol1,
table.acCart td.acCol2 {
    vertical-align: top;
}
table.acCart td.acCol1 {
    padding-right: 10px;
}
table.acCart td.acCol2 {
    width: 300px;
}

table.acCart td.acCol2 table.acSummaryText {
    font-size: 1em;
    width: 100%;
    border-collapse: collapse;
}
table.acCart td.acCol2 table.acSummaryText td, 
table.acCart td.acCol2 table.acSummaryText th {
    text-align: right;
    padding: 5px;
    font-size: 11px;
}
table.acCart td.acCol2 table.acSummaryText td:first-child, 
table.acCart td.acCol2 table.acSummaryText th:first-child {
    text-align: left;
}
table.acCart td.acCol2 table.acSummaryText tr.acRowLine {
    border-bottom: solid 1px #999999;
}
table.acCart td.acCol2 table.acSummaryText tr.acRowLine td {
    padding: 0;
}

.acGrandTotalBox {
    font-weight: 600; 
    font-size: 16px;
    text-align: center;
    padding: 15px 10px;    
    display: block;
    background-color: #CEF5CE;
    border: 1px solid #4CAF50; 
}
.acGrandTotal {
    color: #4CAF50;
    font-size: 16px;
    font-weight: 600;
}
.acGrandTotalBox .acGrandTotal {
    font-size: 16px;
}
.acGrandTotalBox .acFeeNote {
    font-size: 12px;
    font-weight: normal;
    font-style: italic;
    line-height: 12px;
    padding-bottom: 1em;
    display: inline-block;
}

.acDiscount {
    color: #016ecd;
}
.acCart .acGrandTotalBox .acFormNote {
    font-size: 12px;
    color: #333333;
    font-weight: normal;
    font-style: normal;
    margin: 0;
    padding: 0;
    display: block;
    text-align: left;
    width: auto;
}
.acCart .acGrandTotalBox .acFormNote .acDiscount {
    font-weight: 600;
}

.acLinkParam {
    color: #CD0202;
}

tr.acWebTableHeader,
h2.acWebTableHeader {
    line-height: 30px;
    padding: 4px;
}
h4.acWebTableHeader {
    line-height: 20px;
    padding: 4px;
}

.acWebError {
    font-size: 14px;
    color: #CD0202;
}
.acWebError a {
    font-size: 14px;
    color: #CD0202;
    line-height: 1.5em;
    border-bottom: dotted 1px #CD0202;
    text-decoration: none;
}

a.acCartButtonGreen,
a.acCartButtonRed,
a.acCartButtonYellow,
a.acCartButtonBlue,
a.acCartButtonGray {
    /*-moz-border-radius: .5rem;
    -webkit-border-radius: .5rem;
    border-radius: .5rem;*/
    -moz-border-radius: 5rem;
    -webkit-border-radius: 5rem;
    border-radius: 5rem;
    color: #FFFFFF;
    display: inline-block;
    font-size: 14px;
    font-style: normal;
    font-variant: normal;
    margin: 5px 0;
    padding: 10px 20px;
    text-align: center;
    text-decoration: none;
    vertical-align: middle;
    -mox-box-orient: vertical;
    -webkit-appearance: none;
    -webkit-background-clip: border-box;
    -webkit-background-origin: padding-box;
    -webkit-background-size: auto;
    -webkit-border-image: none;
    -webkit-font-smoothing: antialiased;
    background-attachment: scroll;
    background-clip: border-box;
    background-origin: padding-box;
    background-size: auto;
    cursor: pointer;
    width: auto;
    text-decoration: none;
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

a.acCartButtonGreen:link, 
a.acCartButtonRed:link, 
a.acCartButtonBlue:link, 
a.acCartButtonGray:link, 
a.acCartButtonGreen:visited, 
a.acCartButtonRed:visited, 
a.acCartButtonBlue:visited, 
a.acCartButtonGray:visited, 
a.acCartButtonGreen:hover, 
a.acCartButtonRed:hover, 
a.acCartButtonBlue:hover, 
a.acCartButtonGray:hover,
a.acCartButtonGreen:active, 
a.acCartButtonRed:active, 
a.acCartButtonBlue:active, 
a.acCartButtonGray:active {
    font-weight: 600;
    color: #FFFFFF;
}
a.acCartButtonYellow,
a.acCartButtonYellow:link, 
a.acCartButtonYellow:visited, 
a.acCartButtonYellow:hover, 
a.acCartButtonYellow:active {
    font-weight: 600;
    color: #333333;
}

a.acCartButtonGreen {
    background-color: #4CAF50;
}
a.acCartButtonRed {
    background-color: #da4f4a;
}
a.acCartButtonYellow {
    background-color: #ffc107;
}
a.acCartButtonBlue {
    background-color: #016ecd;
}
a.acCartButtonGray {
    background-color: #6c757d;
}

a.acCartButtonGreen:hover,
a.acCartButtonRed:hover,
a.acCartButtonYellow:hover,
a.acCartButtonBlue:hover,
a.acCartButtonGray:hover {
    filter: alpha(opacity=80);
    opacity: 0.8;
}

a.acCartButtonGreen span,
a.acCartButtonRed span,
a.acCartButtonYellow span,
a.acCartButtonBlue span,
a.acCartButtonGray span {
    font-size: 14px;
    line-height: 1.3em;
    color: #FFFFFF;
    vertical-align: middle;
}
a.acCartButtonYellow span {
    color: #333333;
}

a.acCartButtonGreen i, 
a.acCartButtonRed i, 
a.acCartButtonYellow i, 
a.acCartButtonBlue i, 
a.acCartButtonGray i {
    font-size: 16px;
    line-height: 1.3em;
    color: #FFFFFF;
    vertical-align: middle;
    margin-right: 5px;
}
a.acCartButtonYellow i {
    color: #333333;
}

a.acCartButtonFullWidth {
    padding: .575rem 0;
    display: block;
}
a.acCartButtonBlock {
    padding: .575rem 0;
    display: block;
}
a.acCartButtonSmall,
input.acCartButtonSmall {
    font-size: 12px;
    padding: 0 10px;
}
a.acCartButtonSmall span {
    font-size: 12px;
    line-height: 1.8em;
}
a.acCartButtonSmall i {
    font-size: 14px;
    line-height: 1.8em;
}

.acCartButtonGreen[disabled],
.acCartButtonGreen[disabled]:hover,
.acCartButtonGreen[disabled]:active,
.acCartButtonRed[disabled],
.acCartButtonRed[disabled]:hover,
.acCartButtonRed[disabled]:active,
.acCartButtonYellow[disabled],
.acCartButtonYellow[disabled]:hover,
.acCartButtonYellow[disabled]:active,
.acCartButtonBlue[disabled],
.acCartButtonBlue[disabled]:hover,
.acCartButtonBlue[disabled]:active,
.acCartButtonGray[disabled],
.acCartButtonGray[disabled]:hover,
.acCartButtonGray[disabled]:active,
.acDisabled,
.acDisabled:link,
.acDisabled:visited,
.acDisabled:hover,
.acDisabled:active {
    background: none;
    background-color: #C0C0C0 !important;
    top: 0;
    cursor: not-allowed;
    pointer-events: none;
}

a.acTimeButton i {
    display: none;
}
a.acTimeButton.acDisabled {
    color: #E0E0E0;
}
a.acTimeButton.acDisabled i {
    display: inline-block;
    position: absolute;
    left: calc(50% - .5rem);
    color: #FFFFFF;
}

.acHoverBox {
    cursor: pointer;
}
.acHoverBox a,
.acHoverBox span.acTitle {
    color: #333333;
    display: block;
    position: relative; 
    text-decoration: none;
    padding: 5px 25px 5px 0;
    line-height: 20px;
    height: 20px;
    overflow: hidden;
    font-weight: 600;
}
.acHoverBox span.acNote {
    color: #333333;
    text-decoration: none;  
}
.acHoverBox a::after,
.acHoverBox span.acTitle::after {
    content: '\f054';
    font-family: "Font Awesome 5 Free";
    display: block;
    width: .5rem;
    height: .5rem;
    position: absolute;
    right: 1em;
    top: 0;
}

.acHoverBox .acWebGridViewHeaderStyle:hover {
    cursor: default;
}
.acHoverBox .acWebGridViewRowStyle span.acTitle,
.acHoverBox .acWebGridViewAlternatingRowStyle span.acTitle,
.acHoverBox .acWebGridViewErrorRowStyle span.acTitle,
.acHoverBox .acWebGridViewSuccessRowStyle span.acTitle,
.acHoverBox .acWebGridViewRowStyle span.acNote,
.acHoverBox .acWebGridViewAlternatingRowStyle span.acNote,
.acHoverBox .acWebGridViewErrorRowStyle span.acNote,
.acHoverBox .acWebGridViewSuccessRowStyle span.acNote{
    color: #333333;
    margin-left: 14px;
    padding: 0;
}
.acHoverBox .acWebGridViewErrorRowStyle span.acTitle,
.acHoverBox .acWebGridViewErrorRowStyle span.acNote {
    color: #CD0202;
}
.acHoverBox .acWebGridViewSuccessRowStyle span.acTitle,
.acHoverBox .acWebGridViewSuccessRowStyle span.acNote {
    color: #2C912C;
}
.acHoverBox .acWebGridViewRowStyle span.acNote,
.acHoverBox .acWebGridViewAlternatingRowStyle span.acNote,
.acHoverBox .acWebGridViewErrorRowStyle span.acNote,
.acHoverBox .acWebGridViewSuccessRowStyle span.acNote {
    display: block;
    font-size: 12px;
}

.acGreenFlag {
	background-color: #00CC66;
}
.acRedFlag {
	background-color: #CC4433;
}
.acBlueFlag {
	background-color: #3399FF;
}
.acYellowFlag {
	background-color: #F0F000;
}
.acOrangeFlag {
	background-color: #FF9933;
}
.acBlueVioletFlag {
	background-color: #8A2BE2;
}
.acBurlyWoodFlag {
	background-color: #DEB887;
}
.acDarkGreenFlag {
	background-color: #006400;
}
.acDarkOrangeFlag {
	background-color: #FF8C00;
}
.acDeepPinkFlag {
	background-color: #FF1493;
}
.acGreenYellowFlag {
	background-color: #ADFF2F;
} 
.acRoyalBlueFlag {
	background-color: #4169E1;
} 
.acTealFlag {
	background-color: #008080;
}
.acSpringGreenFlag {
	background-color: #00FF7F;
}
.acPlumFlag {
	background-color: #DDA0DD;
}
.acInformationFlag {
	background-color: #2C912C;
}
.acWarningFlag {
	background-color: #DB8E07;
}
.acErrorFlag {
	background-color: #CD0202;
}

.acSchedule .acGreenFlag span.acTitle,
.acSchedule .acRedFlag span.acTitle,
.acSchedule .acBlueFlag span.acTitle,
.acSchedule .acYellowFlag span.acTitle,
.acSchedule .acOrangeFlag span.acTitle,
.acSchedule .acBlueVioletFlag span.acTitle,
.acSchedule .acBurlyWoodFlag span.acTitle,
.acSchedule .acDarkGreenFlag span.acTitle,
.acSchedule .acDarkOrangeFlag span.acTitle,
.acSchedule .acDeepPinkFlag span.acTitle,
.acSchedule .acGreenYellowFlag span.acTitle,
.acSchedule .acRoyalBlueFlag span.acTitle,
.acSchedule .acTealFlag span.acTitle,
.acSchedule .acSpringGreenFlag span.acTitle,
.acSchedule .acPlumFlag span.acTitle,
.acSchedule .acInformationFlag span.acTitle,
.acSchedule .acWarningFlag span.acTitle,
.acSchedule .acErrorFlag span.acTitle {
    color: #333333;
    margin-left: 14px;
    padding: 0;
}

.acSchedule .acGreenFlag span.acNote,
.acSchedule .acRedFlag span.acNote,
.acSchedule .acBlueFlag span.acNote,
.acSchedule .acYellowFlag span.acNote,
.acSchedule .acOrangeFlag span.acNote,
.acSchedule .acBlueVioletFlag span.acNote,
.acSchedule .acBurlyWoodFlag span.acNote,
.acSchedule .acDarkGreenFlag span.acNote,
.acSchedule .acDarkOrangeFlag span.acNote,
.acSchedule .acDeepPinkFlag span.acNote,
.acSchedule .acGreenYellowFlag span.acNote,
.acSchedule .acRoyalBlueFlag span.acNote,
.acSchedule .acTealFlag span.acNote,
.acSchedule .acSpringGreenFlag span.acNote,
.acSchedule .acPlumFlag span.acNote,
.acSchedule .acInformationFlag span.acNote,
.acSchedule .acWarningFlag span.acNote,
.acSchedule .acErrorFlag span.acNote {
    color: #333333;
    margin-left: 14px;
    padding: 0;
    display: block;
    font-size: 12px;
}

.acSchedule .acRedFlag span.acTitle,
.acSchedule .acRedFlag span.acNote,
.acSchedule .acBlueFlag span.acTitle,
.acSchedule .acBlueFlag span.acNote,
.acSchedule .acBlueVioletFlag span.acTitle,
.acSchedule .acBlueVioletFlag span.acNote,
.acSchedule .acDarkGreenFlag span.acTitle,
.acSchedule .acDarkGreenFlag span.acNote,
.acSchedule .acDeepPinkFlag span.acTitle,
.acSchedule .acDeepPinkFlag span.acNote,
.acSchedule .acRoyalBlueFlag span.acTitle,
.acSchedule .acRoyalBlueFlag span.acNote,
.acSchedule .acTealFlag span.acTitle,
.acSchedule .acTealFlag span.acNote,
.acSchedule .acInformationFlag span.acTitle,
.acSchedule .acInformationFlag span.acNote,
.acSchedule .acWarningFlag span.acTitle,
.acSchedule .acWarningFlag span.acNote,
.acSchedule .acErrorFlag span.acTitle,
.acSchedule .acErrorFlag span.acNote {
    color: #FFFFFF;
} 

.acSchedule .acWebGridViewRowStyle span.acTitle div.acNote,
.acSchedule .acWebGridViewAlternatingRowStyle span.acTitle div.acNote,
.acSchedule .acWebGridViewErrorRowStyle span.acTitle div.acNote,
.acSchedule .acWebGridViewSuccessRowStyle span.acTitle div.acNote,
.acSchedule .acWebGridViewRowStyle span.acTitle span.acNote,
.acSchedule .acWebGridViewAlternatingRowStyle span.acTitle span.acNote,
.acSchedule .acWebGridViewErrorRowStyle span.acTitle span.acNote,
.acSchedule .acWebGridViewSuccessRowStyle span.acTitle span.acNote,
.acSchedule .acGreenFlag span.acTitle span.acNote,
.acSchedule .acRedFlag span.acTitle span.acNote,
.acSchedule .acBlueFlag span.acTitle span.acNote,
.acSchedule .acYellowFlag span.acTitle span.acNote,
.acSchedule .acOrangeFlag span.acTitle span.acNote,
.acSchedule .acBlueVioletFlag span.acTitle span.acNote,
.acSchedule .acBurlyWoodFlag span.acTitle span.acNote,
.acSchedule .acDarkGreenFlag span.acTitle span.acNote,
.acSchedule .acDarkOrangeFlag span.acTitle span.acNote,
.acSchedule .acDeepPinkFlag span.acTitle span.acNote,
.acSchedule .acGreenYellowFlag span.acTitle span.acNote,
.acSchedule .acRoyalBlueFlag span.acTitle span.acNote,
.acSchedule .acTealFlag span.acTitle span.acNote,
.acSchedule .acSpringGreenFlag span.acTitle span.acNote,
.acSchedule .acPlumFlag span.acTitle span.acNote,
.acSchedule .acInformationFlag span.acTitle span.acNote,
.acSchedule .acWarningFlag span.acTitle span.acNote,
.acSchedule .acErrorFlag span.acTitle span.acNote {
    font-weight: normal;
    display: inline;
    margin-left: 0;
}

.acSchedule .acGreenFlag:hover,
.acSchedule .acRedFlag:hover,
.acSchedule .acBlueFlag:hover,
.acSchedule .acYellowFlag:hover,
.acSchedule .acOrangeFlag:hover,
.acSchedule .acBlueVioletFlag:hover,
.acSchedule .acBurlyWoodFlag:hover,
.acSchedule .acDarkGreenFlag:hover,
.acSchedule .acDarkOrangeFlag:hover,
.acSchedule .acDeepPinkFlag:hover,
.acSchedule .acGreenYellowFlag:hover,
.acSchedule .acRoyalBlueFlag:hover,
.acSchedule .acTealFlag:hover,
.acSchedule .acSpringGreenFlag:hover,
.acSchedule .acPlumFlag:hover,
.acSchedule .acInformationFlag:hover,
.acSchedule .acWarningFlag:hover,
.acSchedule .acErrorFlag:hover {
    background-color: #e6f7ff;
}

.acSchedule .acWebGridViewRowStyle:hover span,
.acSchedule .acWebGridViewAlternatingRowStyle:hover span,
.acSchedule .acWebGridViewErrorRowStyle:hover span,
.acSchedule .acWebGridViewSuccessRowStyle:hover span,
.acSchedule .acGreenFlag:hover span,
.acSchedule .acRedFlag:hover span,
.acSchedule .acBlueFlag:hover span,
.acSchedule .acYellowFlag:hover span,
.acSchedule .acOrangeFlag:hover span,
.acSchedule .acBlueVioletFlag:hover span,
.acSchedule .acBurlyWoodFlag:hover span,
.acSchedule .acDarkGreenFlag:hover span,
.acSchedule .acDarkOrangeFlag:hover span,
.acSchedule .acDeepPinkFlag:hover span,
.acSchedule .acGreenYellowFlag:hover span,
.acSchedule .acRoyalBlueFlag:hover span,
.acSchedule .acTealFlag:hover span,
.acSchedule .acSpringGreenFlag:hover span,
.acSchedule .acPlumFlag:hover span,
.acSchedule .acInformationFlag:hover span,
.acSchedule .acWarningFlag:hover span,
.acSchedule .acErrorFlag:hover span {
    color: #333333;
} 

.acSchedule th,
.acSchedule td {
    border-bottom: 1px solid #FFFFFF;
}

tr.acWebTableHeader td:first-child {
    padding: 4px 0 4px 1em;
}
tr.acWebTableHeader td:first-child a {
    margin: 0 0 2px 0;
}

img.acToggleButton {
    border: none;
    margin: 0 5px;
}

div.acLinkItem {
    margin: 10px 0 0;
}

.acValidation {
    display: inline;
}
.acValidation ul {
    display: none;
}

.acError {
    font-weight: 600;
    color: #CD0202;
}
.acWarning {
    font-weight: 600;
    color: #DB8E07;
}
.acInformation {
    font-weight: 600;
    color: #2C912C;
}
.acExplanation {
    font-weight: 600;
    color: #333333;
}

.acFloatingError {
	position: fixed;
	top: 0;
    right: 0;
    left: 0;
    width: 100%;
    text-align: center;
    z-index: 1000;
    filter: alpha(opacity=90);
    opacity: 0.9;
}
.acFloatingError .acErrorMessage {
    background-color: #CD0202;
    display: table;
    width: 100%;
    max-width: 100%;
    height: 90px;
    padding: 10px;
    margin: 0 auto;
    font-size: 14px; 
    font-weight: 600; 
    line-height: 1.5em;
    text-align: left;
    color: #FFFFFF; 
    cursor: pointer;
}
.acFloatingInformation .acErrorMessage {
    background-color: #2C912C;
}
.acFloatingError .acErrorMessage td.acErrorColumnLeft {
    padding-right: 1rem;
    text-align: left;
    display: none;
}
.acFloatingError .acErrorMessage td.acErrorColumnRight {
    width: 30px;
    padding-left: 0;
    text-align: right;
    vertical-align: top;
}
.acFloatingError .acErrorMessage .fa-exclamation-circle,
.acFloatingError .acErrorMessage .fa-exclamation-triangle {
    font-size: 14px; 
    margin-right: 5px;
    vertical-align: top;
}
/* Left column error icon */
.acFloatingError .acErrorMessage .fa-exclamation-triangle {
    color: #FFFFFF;
    float: none;
    margin: 0;
	font-size: 30px; 
    vertical-align: middle;
}
/* Left column close button */
.acFloatingError .acErrorMessage .fa-times-circle {
    font-size: 20px; 
    float: right;
    margin-left: 10px;
    line-height: 0.5em;
    color: #FFFFFF;
    float: none;
    margin: 0;
}
.acFloatingError .acErrorMessage span {
    vertical-align: middle;
    display: inline-block;
    color: #FFFFFF;
}
.acFloatingError .acErrorMessage a {
    font-weight: bold;
    line-height: 16px;
    color: #FFFFFF;
    text-decoration: none;
    border-bottom: 1px dotted #FFFFFF;
}
.acFloatingError .acErrorMessage a:hover {
    border-bottom-style: solid;
}

div.acFooterError {
    text-align: right;
}
div.acFooterError span {
    display: inline-block;
    color: #CD0202 !important;
    font-size: 12px;
    font-weight: 600;
    line-height: 1.5em;
    border: none;
    padding: 10px;
    margin-top: 0;
    text-transform: none;
    text-align: center;
}

div.acReferringParty {
    font-size: 14px;
    padding: 5px;
    text-align: right;
    display: block;
    background-color: #FAFAD2;
}
div.acReferringParty span.acFieldName {
    font-weight: 600;
}

.acJoinGroupYes,
.acJoinGroupNo {
    padding: 6px 0;
}

.acConfirmed {
    color: #2C912C;
}
.acDeclined {
    color: #da4f4a;
}

.acNote .acConfirmed,
.acNote.acConfirmed {
    color: #2C912C !important;
}
.acNote .acDeclined,
.acNote.acDeclined {
    color: #da4f4a !important;
}

.acImageSwipe {
    overflow: hidden;
    visibility: hidden;
    position: relative;
    touch-action: pan-y;
}
.acImageSwipeWrapper {
    overflow: hidden;
    position: relative;
}
.acImageSwipeWrapper > div {
    float: left;
    width: 100%;
    position: relative;
}
.acImageSwipeWrapper div {
    text-align: center;
}
.acImageSwipeWrapper img {
    max-width: 100%;
    margin-top: 0;
    height: 100%;
    object-fit: cover;
    -moz-border-radius: 1rem;
    -webkit-border-radius: 1rem;
    border-radius: 1rem;
}
#ulImageSwipeNav {
    text-align: center;
    list-style: none;
    margin: 10px 0 0 0;
    padding: 0;
    position: relative;
    bottom: 3em;
    z-index: 1;
}
#ulImageSwipeNav li {
    display: inline-block;
    width: 1em;
    height: 1em;
    -moz-border-radius: 50%;
    -webkit-border-radius: 50%;
    border-radius: 50%;
    background-color: rgba(0,0,0,.5);
    box-shadow: inset 0 0 0 2px rgba(255,255,255,.9);
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
    margin: 0 2px;
    cursor: pointer;
}
#ulImageSwipeNav li.on,
#ulImageSwipeNav li:hover {
    background-color: rgba(255,255,255,.9);
}

.acFooterInfo {
    /*margin: 20px 0;*/
    margin: 20px .125rem;
    padding-left: .5rem;
    padding-right: .5rem;
    display: block;
    text-align: center;
}
.acFooterInfo a.acBusinessLogo {
    display: inline-block; 
    vertical-align: middle; 
    margin-bottom: 10px; 
    padding: 0 1em; 
    font-size: 14px;
}
.acFooterInfo a.acBusinessLogo img {
    border-width: 0;
    max-width: 100%;
}
.acCopyright,
.acCopyright a,
.acCopyright a:link,
.acCopyright a:visited,
.acCopyright a:hover,
.acCopyright a:focus, 
.acCopyright a:active {
    font-size: 12px;
}

.acWebCartWrapper {
    position: relative;
    left: 0;
    min-height: 480px;
    z-index: 1;
    background-color: #FFFFFF;
    width: 1px;
    min-width: 100%;
    *width: 100%;
    -webkit-tap-highlight-color: rgba(0,0,0,0);
}
.acWebCartContents {
    margin: 1rem .125rem;
}

div.acToggleHeader {
    font-size: 14px;
    font-weight: 600;
    line-height: 30px;
    padding: 4px;
    cursor: pointer;
    -moz-border-radius: 1rem;
    -webkit-border-radius: 1rem;
    border-radius: 1rem;
}
div.acToggleHeader i {
    width: 20px;
    text-align: center;
    display: inline-block;
}
div.acToggleHeader div {
    display: inline-block;
    line-height: 1.2em;
    vertical-align: middle;
    width: 90%;
    overflow: hidden;
}
div.acToggleHeader div span {
    white-space: nowrap;
}
div.acToggleHeader div span.acDetailName {
    margin-right: 10px;
}
div.acToggleHeader div span.acDetailDateTime {
    font-size: 14px;
    font-weight: normal;
}

.acCongrats,
.acCongratsError {
    font-size: 14px;
    font-weight: 600;
    text-align: center;
}
.acCongratsError {
    color: #CD0202;
}

.acCart .acInputForm input[type=text].acValidationWarning,
.acCart .acInputForm input[type=password].acValidationWarning,
.acCart .acInputForm input[type=date].acValidationWarning,
.acCart .acInputForm input[type=time].acValidationWarning,
.acCart .acInputForm input[type=number].acValidationWarning,
.acCart .acInputForm input[type=tel].acValidationWarning,
.acCart .acInputForm input[type=email].acValidationWarning,
.acCart .acInputForm textarea.acValidationWarning,
.acCart .acInputForm select.acValidationWarning {
    border: 2px solid #da4f4a;
}
.acCart .acInputForm .acRadioButtonList.acValidationWarning {
    padding: 5px 0;
}
.acCart .acInputForm input[type=checkbox].acValidationWarning {
    outline: 2px solid #da4f4a;
}
.acCart .acInputForm .acRadioButtonList label {
    margin-right: 10px;
}

.acRatesTable .acRateName {
    font-weight: 600;
}
.acRatesTable .acRatePrice {
    font-size: 14px;
}
.acRatesTable .acRatePrice::before {
    content: "$";
    font-size: 14px;
}

.acRatesTable th.acActivityInputColumn,
.acRatesTable th.acRentalInputColumn,
.acRatesTable th.acPackageInputColumn {
    width: auto;
}
.acRatesTable td.acActivityInputColumn div,
.acRatesTable td.acRentalInputColumn div,
.acRatesTable td.acPackageInputColumn div {
    width: 100%;
}
.acRatesTable .acActivityInputColumn select,
.acRatesTable .acRentalInputColumn select,
.acRatesTable .acPackageInputColumn select {
    width: 100% !important;
    min-width: 50px;
}

table.acCartButtons {
    width: 100%;
}

.acCart .acPasswordNote {
    font-size: 11px;
    color: #666666;
    font-weight: normal;
    font-style: italic;
    line-height: 1.3em;
    display: block;
    margin-top: 10px;  
}

.acHeaderImage {
    display: block;
}
.acHeaderImage a {
    display: block;
}
.acHeaderImage img {
    width: 100%;
}
.acFooterImage {
    display: block;
}
.acFooterImage a {
    display: block;
}
.acFooterImage img {
    width: 100%;
}

/* WebCart Please Wait */
.acWebCartPleaseWait {
    display: none;
    width: 280px;
    height: 280px;
    background-color: #FFFFFF;
    text-align: center;
    position: relative;
    margin: 0 auto;
    padding: 20px;
    font-weight: 600;
    color: #333333;
}
.acWebCartPleaseWait img {
    margin: 2em 0 1em;
}
.acWebCartPleaseWait .spinner {
    margin: 2em 0 1em;
}
.acWebCartPleaseWait .spinner .fa-spin {
    -webkit-animation: fa-spin 1.5s linear infinite;
    animation: fa-spin 1.5s linear infinite;
}
.acWebCartPleaseWait h2 {
    font-size: 1.5em;
}
.acWebCartPleaseWait h3 {
    font-size: 1.3em;
    color: #da4f4a;
}
.acWebCartPleaseWait span {
    color: #da4f4a;
}
.acWebCartPleaseWait p {
    text-align: justify;
}

a.acDisabledLink,
a.acDisabledLink:hover,
a.acDisabledLink[disabled],
a.acDisabledLink[disabled]:link,
a.acDisabledLink[disabled]:visited,
a.acDisabledLink[disabled]:hover,
a.acDisabledLink[disabled]:active {
    color: #333333;
    font-weight: 600;
    text-decoration: none;
}

ul.acAddOnSubTypes {
    margin: 0;
    padding-left: 20px;
}

.acBrowserIE,
.acBrowserFirefox,
.acBrowserChrome,
.acBrowserOpera,
.acBrowserSafari,
.acBrowserEdge {
    padding-bottom: 20px;
}
.acBrowserIcon {
    background: url('/User/_images/browsers.png') no-repeat;
    display: inline-block;
    width: 68px;
    height: 48px;
    line-height: 48px;
}
.acBrowserIE .acBrowserIcon {
    background-position: 0 0;
}
.acBrowserFirefox .acBrowserIcon {
    background-position: -100px 0;
}
.acBrowserChrome .acBrowserIcon {
    background-position: -200px 0;
}
.acBrowserOpera .acBrowserIcon {
    background-position: -300px 0;
}
.acBrowserSafari .acBrowserIcon {
    background-position: -400px 0;
}
.acBrowserEdge .acBrowserIcon {
    background-position: -500px 0;
}
.acBrowserIE li,
.acBrowserFirefox li,
.acBrowserChrome li,
.acBrowserOpera li,
.acBrowserSafari li,
.acBrowserEdge li {
    margin-bottom: 10px;
}

.acAdventureMatrixResults table {
    margin-right: 0;
    margin-left: auto;
}
.acAdventureMatrix img,
.acAdventureMatrixResults img,
.acCardTypes img {
    padding: 0 !important;
}

/* Increase size of jquery datepicker */
div.ui-datepicker,
div.ui-datepicker a.ui-state-hover,
div.ui-datepicker th,
div.ui-datepicker td {
    font-size: 20px;
}

/* Stripe Credit Card field
-----------------------------------------------------------------------------*/
.StripeElement {
    /*font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    font-size: 16px;*/
    display: inline-block;
    width: 100%;
    height: calc(2.0625rem + 2px);
    padding: .375rem;
    font-size: .875rem;
    line-height: 1.5;
    color: #5c6873;
    background-color: #fff;
    background-clip: padding-box;
    border: 1px solid #e4e7ea;
    -moz-border-radius: .25rem;
    -webkit-border-radius: .25rem;
    border-radius: .25rem;
}
.StripeElement:hover,
.StripeElement--focus {
    border-color: #aaa;
    box-shadow: 0 0 1px 3px rgba(59, 153, 252, .7);
    box-shadow: 0 0 0 3px -moz-mac-focusring;
    color: #333333;
    outline: none;
}
.StripeElement--invalid {
    border-color: #da4f4a;
}
.StripeElement--webkit-autofill {
    background-color: #FEFDE5 !important;
}
span.acCustomError {
    font-size: 12px;
    color: #da4f4a;
    display: block !important;
}

/* FullsteamPay Credit Card field
-----------------------------------------------------------------------------*/
.form-group > label.acCreditCards {
    line-height: 1;
}
.acCreditCards img.acDeselected {
    filter: alpha(opacity=20);
    opacity: 0.2;
}

/* Waivers
-----------------------------------------------------------------------------*/
.acSwitchField {
    /*padding: 40px;*/
    overflow: hidden;
    display: inline-block;
}
.acSwitchField.invalid {
    border: 2px solid #da4f4a;
    padding: 0 5px;	
    background-color: #FFE4E1;
}
.acSwitchField input {
    position: absolute !important;
    clip: rect(0, 0, 0, 0);
    height: 1px;
    width: 1px;
    border: 0;
    overflow: hidden;
}
.acSwitchField label {
    float: left;
}
.acSwitchField label {
    display: inline;
    width: auto;
    background-color: #FFFFFF;
    color: #333333;
    font-size: 14px;
    font-weight: normal;
    text-align: center;
    text-shadow: none;
    padding: 8px 20px;
    margin: 5px 0;
    border: 2px solid #333;
    -moz-border-radius: 5rem;
    -webkit-border-radius: 5rem;
    border-radius: 5rem;
    font-weight: 600;
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
}
.acSwitchField label i {
    font-size: 16px;
    line-height: 1.3em;
    vertical-align: middle;
    margin-right: 5px;
}
.acSwitchField label span {
    font-size: 14px;
    line-height: 1.3em;
    vertical-align: middle;
}
.acSwitchField label:hover {
    cursor: pointer;
}
.acSwitchField label:first-of-type {
    color: #4CAF50;
    border-color: #4CAF50;
    margin-right: 5px;
}
.acSwitchField label:last-of-type {
    color: #da4f4a;
    border-color: #da4f4a;
}
.acSwitchField label:first-of-type:hover,
.acSwitchField input:checked + label:first-of-type {
    background-color: #4CAF50;
    color: #FFFFFF;
}
.acSwitchField label:last-of-type:hover,
.acSwitchField input:checked + label:last-of-type {
    background-color: #da4f4a;
    color: #FFFFFF;
}

/* Departure Board
-----------------------------------------------------------------------------*/
.acDepartureBoard th {
    font-weight: 600;
}
.acDepartureBoard td {
    height: 50px;
    border-bottom: 1px solid #FFFFFF;
}
.acDepartureBoard th:first-child,
.acDepartureBoard td:first-child {
    padding: 0 10px;
}

.acDepartureBoard .acAvailable,
.acDepartureBoard .acPleaseCall,
.acDepartureBoard .acSoldOut {
    font-weight: 600;
    padding: 15px 10px;
    display: block;
}
.acDepartureBoard .acAvailable {
    color: #FFFFFF;
    background-color: #558A1C;
}
.acDepartureBoard .acPleaseCall {
    color: #000000;
    background-color: #DB8E07;
}
.acDepartureBoard .acSoldOut {
    color: #FFFFFF;
    background-color: #CC0000;
}

.acDepartureBoard .acGreenFlag {
	background-color: #00CC66;
}
.acDepartureBoard .acRedFlag {
	background-color: #CC4433;
}
.acDepartureBoard .acBlueFlag {
	background-color: #3399FF;
}
.acDepartureBoard .acYellowFlag {
	background-color: #F0F000;
}
.acDepartureBoard .acOrangeFlag {
	background-color: #FF9933;
}
.acDepartureBoard .acBlueVioletFlag {
	background-color: #8A2BE2;
}
.acDepartureBoard .acBurlyWoodFlag {
	background-color: #DEB887;
}
.acDepartureBoard .acDarkGreenFlag {
	background-color: #006400;
}
.acDepartureBoard .acDarkOrangeFlag {
	background-color: #FF8C00;
}
.acDepartureBoard .acDeepPinkFlag {
	background-color: #FF1493;
}
.acDepartureBoard .acGreenYellowFlag {
	background-color: #ADFF2F;
} 
.acDepartureBoard .acRoyalBlueFlag {
	background-color: #4169E1;
} 
.acDepartureBoard .acTealFlag {
	background-color: #008080;
}
.acDepartureBoard .acSpringGreenFlag {
	background-color: #00FF7F;
}
.acDepartureBoard .acPlumFlag {
	background-color: #DDA0DD;
}

.acDepartureBoard .acRedFlag td,
.acDepartureBoard .acBlueFlag td,
.acDepartureBoard .acBlueVioletFlag td,
.acDepartureBoard .acDarkGreenFlag td,
.acDepartureBoard .acDeepPinkFlag td,
.acDepartureBoard .acRoyalBlueFlag td,
.acDepartureBoard .acTealFlag td {
    color: #FFFFFF;
} 

/* MultiSelect ListBox jQuery control
-----------------------------------------------------------------------------*/
select.acMultiSelect {
    margin: 0 0 3px;
    width: 100%;
    height: 200px;
}
select.acMultiSelect option {
    padding: 5px;
}
select.acMultiSelect option:hover {
    background-color: #e6f7ff;
}
select.acMultiSelect option[disabled]:hover {
    background-color: #FFFFFF;
}

/* WebCart Links page
-----------------------------------------------------------------------------*/
.col-links {
    font-weight: 600;
    /*font-size: 12px;*/
}

.col-links .acLinkParamPre {
    color: #999999;
}
.col-links .acLinkParam {
    color: #CD0202;
}
.col-links a.acLinkParam,
.col-links a.acLinkParam:link,
.col-links a.acLinkParam:visited,
.col-links a.acLinkParam:hover,
.col-links a.acLinkParam:active {
    color: #CD0202 !important;
    /*font-size: 12px;*/
    cursor: help;
    text-decoration: none;
    border-bottom: 1px dotted #CD0202;
}
.col-links a.acLinkParam:hover,
.col-links a.acLinkParam:active {
    border-bottom: 1px solid #CD0202;
}

/* WebCart Links page > Help / Knowledgebase
-----------------------------------------------------------------------------*/
.acCodeBlock {
    padding: 1em;
    border: 1px solid #E0E0E0;
    display: block;
}
p > code span,
li > code span {
    background-color: #F0F0F0;
    border: 1px solid #E0E0E0;
    color: #000000 !important;
    font-weight: bold;
    font-size: 16px;
}
li.L0, li.L1, li.L2, li.L3, li.L5, li.L6, li.L7, li.L8 {
    list-style-type: decimal !important;
}
.acCodeBlock span.nocode {
    background-color: yellow;
}

/* Calendar page steps
-----------------------------------------------------------------------------*/
.acStep1Table,
.acStep2Table,
.acStep3Table,
.acStepDetailsTable {
    width: 100%;
}
.acStep1Table > tbody > tr > th,
.acStep2Table > tbody > tr > th,
.acStep3Table > tbody > tr > th,
.acStepDetailsTable > tbody > tr > th {
	text-align: left;
    line-height: 1;
    font-size: 14px;
}
.acStep1Table > tbody > tr > th:first-child,
.acStep2Table > tbody > tr > th:first-child,
.acStep3Table > tbody > tr > th:first-child,
.acStepDetailsTable > tbody > tr > th:first-child {
	white-space: nowrap;
	width: 75px;
}

/* Bootstrap
-----------------------------------------------------------------------------*/
.row {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.col, .col-1, .col-10, .col-11, .col-12, .col-2, .col-3, .col-4, .col-5, .col-6, .col-7, .col-8, .col-9, .col-auto,
.col-xs, .col-xs-1, .col-xs-10, .col-xs-11, .col-xs-12, .col-xs-2, .col-xs-3, .col-xs-4, .col-xs-5, .col-xs-6, .col-xs-7, .col-xs-8, .col-xs-9, .col-xs-auto,
.col-sm, .col-sm-1, .col-sm-10, .col-sm-11, .col-sm-12, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-auto,
.col-md, .col-md-1, .col-md-10, .col-md-11, .col-md-12, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-auto,
.col-lg, .col-lg-1, .col-lg-10, .col-lg-11, .col-lg-12, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-auto,
.col-xl, .col-xl-1, .col-xl-10, .col-xl-11, .col-xl-12, .col-xl-2, .col-xl-3, .col-xl-4, .col-xl-5, .col-xl-6, .col-xl-7, .col-xl-8, .col-xl-9, .col-xl-auto {
    position: relative;
    width: 100%;
    min-height: 1px;
    padding-right: 0.5em;
    padding-left: 0.5em;
}
.col {
    -ms-flex-preferred-size: 0;
    flex-basis: 0;
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
    max-width: 100%;
}
.col-1 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 8.33333333%;
    flex: 0 0 8.33333333%;
    max-width: 8.33333333%;
}
.col-2 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 16.66666667%;
    flex: 0 0 16.66666667%;
    max-width: 16.66666667%;
}
.col-3 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 25%;
    flex: 0 0 25%;
    max-width: 25%;
}
.col-4 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 33.333333%;
    flex: 0 0 33.333333%;
    max-width: 33.333333%;
}
.col-5 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 41.666667%;
    flex: 0 0 41.666667%;
    max-width: 41.666667%;
}
.col-6 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 50%;
    flex: 0 0 50%;
    max-width: 50%;
}
.col-7 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 58.333333%;
    flex: 0 0 58.333333%;
    max-width: 58.333333%;
}
.col-8 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 66.666667%;
    flex: 0 0 66.666667%;
    max-width: 66.666667%;
}
.col-9 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 75%;
    flex: 0 0 75%;
    max-width: 75%;
}
.col-10 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 83.33333333%;
    flex: 0 0 83.33333333%;
    max-width: 83.33333333%;
}
.col-11 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 91.66666667%;
    flex: 0 0 91.66666667%;
    max-width: 91.66666667%;
}
.col-12 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    max-width: 100%;
}
.col-auto {
	-webkit-box-flex: 0;
	-ms-flex: 0 0 auto;
	flex: 0 0 auto;
	width: auto;
	max-width: none;
}
.d-none {
    display: none !important;
}
.d-block {
    display: block !important;
}
.d-inline {
    display: inline !important;
}
.d-tablecell {
    display: table-cell !important;
}
.d-wrap {
    white-space: normal;
}
.d-nowrap {
    white-space: nowrap;
}
.order-1 {
    -webkit-box-ordinal-group: 2;
    -ms-flex-order: 1;
    order: 1;
}
.order-2 {
    -webkit-box-ordinal-group: 3;
    -ms-flex-order: 2;
    order: 2;
}
.order-3 {
    -webkit-box-ordinal-group: 4;
    -ms-flex-order: 3;
    order: 3;
}

.item-details > .row {
    /*margin-right: -0.5em;*/
    margin-left: -0.5em;
    border-bottom: 1px solid #e3e6e8;
}
.item-details > .row [class^="col-"] {
    padding-top: .25rem;
    padding-bottom: .25rem;
}
.item-details > .row [class^="col-"]:first-child {
    padding-bottom: 0;
}
.item-details > .row:first-child [class^="col-"] {
    padding-top: 0;
}
.item-details > .row:last-child [class^="col-"] {
    padding-bottom: 0;
}
.item-details > .row:last-child {
    border-bottom: none;
}
.item-details label {
    font-size: 14px;
}
[id*=divDescription].form-group.row > label {
    font-size: 14px;
    line-height: 1.2;
}

.step-details > .row [class^="col-"] {
    padding-top: 0;
    padding-bottom: 0;
}
.step-details label {
    font-size: 14px;
}

.form-group {
    margin-bottom: 1rem;
}
.form-group.last {
    margin-bottom: 0;
}
.form-group > label {
    display: inline-block;
    padding-top: calc(0.375rem + 1px);
    padding-bottom: calc(0.375rem + 1px);
    margin-bottom: 0;
    font-size: inherit;
    line-height: 1.5;
}
.form-group .acRequired {
    padding: calc(0.375rem + 1px) 0;
    margin-bottom: 0;
    font-size: inherit;
    line-height: 1.5;
}
.form-group th .acRequired {
    padding: 0;
    line-height: 1;
}

.form-group .form-control {
    display: inline-block;
    width: 100%;
    height: calc(2.0625rem + 2px);
    padding: .375rem;
    font-size: .875rem;
    line-height: 1.5;
    color: #5c6873;
    background-color: #fff;
    background-clip: padding-box;
    border: 1px solid #e4e7ea;
    -moz-border-radius: .25rem;
    -webkit-border-radius: .25rem;
    border-radius: .25rem;
}
.form-group select.form-control {
    -moz-appearance: none;
    -webkit-appearance: none;
    appearance: none;
    background-image: url('data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22292.4%22%20height%3D%22292.4%22%3E%3Cpath%20fill%3D%22%23333333%22%20d%3D%22M287%2069.4a17.6%2017.6%200%200%200-13-5.4H18.4c-5%200-9.3%201.8-12.9%205.4A17.6%2017.6%200%200%200%200%2082.2c0%205%201.8%209.3%205.4%2012.9l128%20127.9c3.6%203.6%207.8%205.4%2012.8%205.4s9.2-1.8%2012.8-5.4L287%2095c3.5-3.5%205.4-7.8%205.4-12.8%200-5-1.9-9.2-5.5-12.8z%22%2F%3E%3C%2Fsvg%3E'),
                      linear-gradient(to bottom, #ffffff 0%,#ffffff 100%);
    background-repeat: no-repeat, repeat;
    background-position: right .7em top 50%, 0 0;
    background-size: .65em auto, 100%;
}
.form-group select.form-control::-ms-expand {
    display: none;
}
.form-group .form-control:hover {
    border-color: #999999;
}
.form-group .form-control:focus,
.form-group .form-control.form-control-highlighted {
    border-color: #aaa;
    box-shadow: 0 0 1px 3px rgba(59, 153, 252, .7);
    box-shadow: 0 0 0 3px -moz-mac-focusring;
    color: #333333;
    outline: none;
}
.form-group select.form-control option {
    font-weight:normal;
}
.form-group select.form-control option[disabled] {
    color: #D0D0D0;
}

.form-control::placeholder { /* Chrome, Firefox, Opera, Safari 10.1+ */
    color: #C0C0C0;
    opacity: 1; /* Firefox */
}
.form-control:-ms-input-placeholder { /* Internet Explorer 10-11 */
    color: #C0C0C0;
}
.form-control::-ms-input-placeholder { /* Microsoft Edge */
    color: #C0C0C0;
}

.form-group .form-control[disabled] {
    /*background-image: none;*/
    background-color: #E0E0E0;
    cursor: not-allowed;
    border: 1px solid #ABADB3;
}
.form-group select.form-control[disabled] {
    background-image: url('data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22292.4%22%20height%3D%22292.4%22%3E%3Cpath%20fill%3D%22%23333333%22%20d%3D%22M287%2069.4a17.6%2017.6%200%200%200-13-5.4H18.4c-5%200-9.3%201.8-12.9%205.4A17.6%2017.6%200%200%200%200%2082.2c0%205%201.8%209.3%205.4%2012.9l128%20127.9c3.6%203.6%207.8%205.4%2012.8%205.4s9.2-1.8%2012.8-5.4L287%2095c3.5-3.5%205.4-7.8%205.4-12.8%200-5-1.9-9.2-5.5-12.8z%22%2F%3E%3C%2Fsvg%3E');
}

.form-group textarea.form-control {
    height: calc(2.0625rem + 42px);
}
.form-group textarea.form-notes-sm {
    height: calc(1.0625rem + 42px);
}
.form-group textarea.form-notes-md {
    height: calc(5.0625rem + 42px);
}
.form-group textarea.form-notes-lg {
    height: calc(7.0625rem + 42px);
}

.form-check {
    position: relative;
    display: block;
    padding-left: 1.25rem;
}
.form-check-inline {
    display: -webkit-inline-flex;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    padding-left: 0;
    margin-right: .75rem;
}
.form-check input[type=checkbox],
.form-check input[type=radio] {
    padding: 0;
    margin-top: .675rem;
    margin-right: .5rem;
    margin-left: -1.25rem;
}

.form-check {
    padding-left: 1px;
}

/* Basic styles */
.acToggleContent {
    margin-top: .5em;
}
.acRadioButtonToggle {
    display: inline-block;
}

.form-check input[type="checkbox"],
.form-radio input[type="radio"] {
    position: absolute;
    opacity: 0;
    z-index: -1;
}
.form-check label,
.form-radio label {
    position: relative;
    display: inline-block;
    padding: 0 1em 0 2em;
    height: 1.5em;
    line-height: 1.5;
    cursor: pointer;
}
.form-radio label {
    padding: 0 2em;
}
.form-check label::before,
.form-check label::after,
.form-radio label::before,
.form-radio label::after {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 1.5em;
    height: 1.5em;
}
.form-check-table td:first-child {
    max-width: 2em;
}
.form-check label::before,
.form-radio label::before {
    content: " ";
    border: 1px solid #e4e7ea;
    border-radius: 20%;
}

/* Checkbox */
.form-check input[type="checkbox"] + label::after {
    content: "\2714";
    color: #333333;
    line-height: 1.5;
    text-align: center;
}
.form-check input[type="checkbox"]:hover + label::before,
.form-radio input[type="radio"]:hover + label::before {
    border-color: #999999;
}
.form-check input[type="checkbox"]:focus + label::before,
.form-radio input[type="radio"]:focus + label::before {
    border-color: #aaaaaa;
}
/* Radio */
.form-radio {
    margin-left: .5em;
}
.form-radio input[type="radio"] + label::before {
    border-radius: 50%;
}
.form-radio input[type="radio"] + label::after {
    /*content: " ";
    top: .25em;
    left: .25em;
    width: 1em;
    height: 1em;
    background: #ffffff;
    border: .2em solid #333333;*/
    content: "\2714";
    color: #333333;
    line-height: 1.5;
    text-align: center;
    border-radius: 50%;
}
/* :checked */
.form-check input[type="checkbox"]:checked + label::before,
.form-radio input[type="radio"]:checked + label::before {
    background: #ffffff;
}
.form-check input[type="checkbox"] + label::after,
.form-radio input[type="radio"] + label::after {
    -webkit-transform: scale(0);
    -ms-transform: scale(0);
    -o-transform: scale(0);
    transform: scale(0);
}
.form-check input[type="checkbox"]:checked + label::after,
.form-radio input[type="radio"]:checked + label::after {
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    -o-transform: scale(1);
    transform: scale(1);
}
/* Transition */
.form-check label::before,
.form-check label::after,
.form-radio label::before,
.form-radio label::after {
    -webkit-transition: .25s all ease;
    -o-transition: .25s all ease;
    transition: .25s all ease;
}

.form-check-inline input[type=checkbox],
.form-check-inline input[type=radio] {
    position: static;
    margin-top: .25rem;
    margin-right: .5em;
    margin-left: .5rem;
}

.acWebColumnRight .form-check-inline input[type=checkbox],
.acWebColumnRight .form-check-inline input[type=radio] {
    position: static;
    margin-top: .25rem;
    margin-right: .3125rem;
    margin-left: .3125rem;
}
.form-group .acWebColumnRight .form-check-inline label {
    text-align: left;
}

.form-check label {
    display: inline-block;
    margin-bottom: 0;
}

.form-group .form-control.acValidationWarning {
    border: 2px solid #d9534f;
}

.note-feedback,
.success-feedback,
.warning-feedback,
.invalid-feedback {
    width: 100%;
    margin-top: .25rem;
    font-size: .675rem;
    font-weight: 600;
}
.note-feedback {
    font-weight: normal;
    color: #666666;
}
.success-feedback {
    color: #5cb85c;
}
.warning-feedback {
    color: #F0AD4E;
}
.invalid-feedback {
    color: #CD0202;
}

.note-feedback a:hover,
.note-feedback a:active,
.success-feedback a:hover,
.success-feedback a:active,
.warning-feedback a:hover,
.warning-feedback a:active,
.invalid-feedback a:hover,
.invalid-feedback a:active {
    font-size: .675rem;
}

.card-header-actions .note-feedback,
.card-header-actions .success-feedback,
.card-header-actions .warning-feedback,
.card-header-actions .invalid-feedback {
    line-height: 1.7;
}

.card {
    position: relative;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: flex;
    -webkit-flex-direction: column;
    -moz-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    min-width: 0;
    word-wrap: break-word;
    background-color: #fff;
    background-clip: border-box;
    border: 1px solid #e3e6e8;
    margin-bottom: 1rem;
    -moz-border-radius: 1rem;
    -webkit-border-radius: 1rem;
    border-radius: 1rem;
    -webkit-box-shadow: 0 1px 10px 0 rgba(0,0,0,0.12), 0 2px 4px -1px rgba(0,0,0,0.12);
    box-shadow: 0 1px 10px 0 rgba(0,0,0,0.12), 0 2px 4px -1px rgba(0,0,0,0.12);
}
.card-hidden-shadow {
    -webkit-box-shadow: none;
    box-shadow: none;
}
.card-red {
    border-color: #d9534f;
}

.card-header {
    padding: 0.5rem 1rem;
    margin-bottom: 0;
    background-color: #f5f5f5;
    border-bottom: 1px solid #e3e6e8;
    -moz-border-radius: 1rem 1rem 0 0;
    -webkit-border-radius: 1rem 1rem 0 0;
    border-radius: 1rem 1rem 0 0;
}
.card-header.card-toggle {
    border-radius: 1rem;
}
.card-header.card-toggle.open {
    border-radius: 1rem 1rem 0 0;
}
.card-header .card-header-title {
    font-size: 1rem;
    font-weight: 600;
}
.card-header.card-toggle .card-header-title {
    font-size: .875rem;
}
.card-red > .card-header {
    border-color: #d9534f;
    background-color: #d9534f;
    color: #FFFFFF;
}
.card-header-actions {
    display: inline-block;
    float: right;
}
.card .card-header.card-toggle {
    cursor: pointer;
}
.card .card-header.card-toggle .card-header-actions {
    z-index: 1000;
}
.card .card-header.card-toggle > i {
    margin-right: .75rem;
	font-weight: 900;
}
.card-body {
    -webkit-flex: 1 1 auto;
    -moz-flex: 1 1 auto;
    -ms-flex: 1 1 auto;
    flex: 1 1 auto;
    padding: .75rem .5rem;
}
.acCalendarStep2 .card-body,
.acCalendarStep3 .card-body,
.acCalendarStepDetails .card-body {
    padding: .75rem;
}
.card-footer {
    padding: 0.5rem 1rem;
    background-color: #f5f5f5;
    border-top: 1px solid #dddddd;
    border-bottom-right-radius: 4px;
    border-bottom-left-radius: 4px;
}

.acCart .card-body.acInputForm {
    margin: 1rem;
}

span.acStep {
    background-color: #0079b2;
    display: inline-block;
    -moz-border-radius: .25rem;
    -webkit-border-radius: .25rem;
    border-radius: .25rem;
    margin-right: .5em;
    padding: .2rem .75rem;
}

.acStep1Table {
	margin-bottom: 1rem;
}
.acStep1Table th:first-child,
.acStep2Table th:first-child,
.acStep3Table th:first-child,
.acStepDetailsTable th:first-child {
	padding-right: .5rem;
}
.acStep1Table .acStep,
.acStep2Table .acStep,
.acStep3Table .acStep,
.acStepDetailsTable .acStep {
	margin-right: 0;
}

.row-social a.acShareButton {
    color: #333333;
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
}
.row-social a.acShareButton:hover,
.row-social a.acShareButton:active {
    filter: alpha(opacity=80);
    opacity: 0.8;
    text-decoration: none;
}
.row-social .acShareMenu {
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
    white-space: nowrap;
    overflow: hidden;
}

.row-social .acShareMenu a {
    display: inline-block;
    margin: 0 .5rem 0 0;
    font-weight: 400;
    padding: .3rem .2rem;
    font-size: 1rem;
    line-height: 1.5;
    text-align: center;
    white-space: nowrap;
    vertical-align: middle;
    color: #ffffff !important;
    -moz-border-radius: 50%;
    -webkit-border-radius: 50%;
    border-radius: 50%;
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
}
.row-social .acShareMenu a:last-child {
    margin-right: 0;
}
.row-social .acShareMenu a.btn-facebook {
    background-color: #016ecd;
}
.row-social .acShareMenu a.btn-twitter {
    background-color: #4aafcd;
}
.row-social .acShareMenu a.btn-pinterest {
    background-color: #da4f4a;
}
.row-social .acShareMenu a.btn-email {
    background-color: #5ab75c;
}
.row-social .acShareMenu a:hover {
    text-decoration: none;
    filter: alpha(opacity=80);
    opacity: 0.8;
}

.square-image {
    -moz-border-radius: 1rem;
    -webkit-border-radius: 1rem;
    border-radius: 1rem;
    width: 100%;
    height: 0; /* padding will mage sizing here */
    padding: 50% 0; /* make it a square = 100% vertical padding , none horizontal*/
    background-position: center;
    background-size: 100% 100%;
    background-size: cover;
    /* reset just in case */
    background-clip: border-box;
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
}
a:hover > .square-image {
    filter: alpha(opacity=80);
    opacity: 0.8;
}

.row.row-travelers {
    margin-left: -.5rem;
}
.row.row-travelers .acError,
.row.row-travelers .acWarning,
.row.row-travelers .acInformation,
.row.row-travelers .acExplanation {
    font-weight: normal;
}

.acWebCartCalendarPage,
.acWebCartDetailsPage,
.acWebCartTripEditPage,
.acWebCartLinksPage {
    /*padding: 0 .5rem;*/
    padding: 0 .25rem;
}
.acWebCartCalendarPage .row .col,
.acWebCartCalendarPage .row [class^="col-"],
.acWebCartDetailsPage .row .col,
.acWebCartDetailsPage .row [class^="col-"],
.acWebCartTripEditPage .row .col,
.acWebCartTripEditPage .row [class^="col-"],
.acWebCartLinksPage .row .col,
.acWebCartLinksPage .row [class^="col-"] {
    margin-bottom: 1rem;
}
.acWebCartCalendarPage .row.row-media-cal > [class^="col-"] {
    margin-bottom: 2rem;
    height: 402px;
}
.acWebCartCalendarPage .form-group.row .col,
.acWebCartCalendarPage .form-group.row [class^="col-"],
.acWebCartDetailsPage .form-group.row .col,
.acWebCartDetailsPage .form-group.row [class^="col-"],
.acWebCartTripEditPage .form-group.row .col,
.acWebCartTripEditPage .form-group.row [class^="col-"],
.acWebCartLinksPage .form-group.row .col,
.acWebCartLinksPage .form-group.row [class^="col-"] /*,
.acWebCartDetailsPage .row [class^="col-"].results-desc-target-sm*/ {
    margin-bottom: 0;
}

.info-separator::before {
    content: "\2022";
    color: #cccccc;
    /*padding: 0 .125rem;*/
}

/*.acWebCartLinksPage a:hover {
    font-size: 12px;
    text-decoration: underline;
}*/

.row.acResultsGrid {
    margin-right: -.5rem;
    margin-left: -.5rem;
}
.acResultsGrid .row .col-12 {
    margin-bottom: .5rem;
}
.acResultsGrid .square-image .square-image-caption {
    position: absolute;
    /*width: calc(100% - .9rem);*/
    width: calc(100% - 1rem);
    text-align: center;
    color: #FFFFFF;
    text-shadow: 0 0 3px #000000;
    display: block;
    font-weight: 600;
    padding: 1rem;
    bottom: 0;
    height: 5.5rem;
    overflow: hidden;
    background-color: rgba(0,0,0,.5);
    -moz-border-radius: 0 0 1rem 1rem;
    -webkit-border-radius: 0 0 1rem 1rem;
    border-radius: 0 0 1rem 1rem;
}
.acResultsGrid .square-image .square-image-caption > div {
    font-size: .9rem;
    line-height: 1.2;
    /*height: 3.5rem;*/
    height: 3.6em; /* 3x 1.2 */
    overflow: hidden;
    -ms-word-break: break-all;
    word-break: break-all;

    /* Non standard for WebKit */
    word-break: break-word;

    -webkit-hyphens: auto;
    -moz-hyphens: auto;
    hyphens: auto;
}
.acResultsGrid .square-image .square-image-caption::after {
    content: '\f0d7';
    font-family: "Font Awesome 5 Free";
    position: relative;
    /*bottom: .3rem;*/
    bottom: 0;
}
.acResultsGrid .col-12.acResultsGridTitle {
    font-size: 1rem;
    font-weight: 600;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

table.step-details-table {
    margin: 0 0 1rem 0
}
table.step-details-table tbody > tr > td {
    padding: .25em .5em;
}

.acCalendarStep1,
.acCalendarStep2,
.acCalendarStep3,
.acCalendarStepDetails {
    margin-top: 0;
}

.section-header {
	text-transform: uppercase;
	font-weight: 600;
	font-size: 16px;
	padding: 0 .5rem .5rem;
}

.button-wrapper {
	display: flex;
    flex-flow: column wrap;
	justify-content: space-around;
}
.button-wrapper .btn-flex {
    /*padding: 10px 0;*/
    padding: .575rem 0;
    display: block;
}
.button-wrapper.summary-buttons > .btn-flex:nth-child(1) {
    order: 2;
}
.button-wrapper.summary-buttons > .btn-flex:nth-child(2) {
    order: 1;
}

.acSimpleCalendar .acCalendarDay {
	border: 1px solid #e0e0e0;
	line-height: auto;
	vertical-align: top;
	font-weight: 600;
}
.acSimpleCalendar th.acCalendarHeader {
    border-left: 1px solid #e0e0e0;
    border-right: 1px solid #e0e0e0;
}
.acSimpleCalendar > tbody > tr:nth-child(3) > .acCalendarDay {
    /*border-top: none;*/
    /*border-top-color: #f5f5f5;*/
}
.acSimpleCalendar > tbody > tr:last-child > .acCalendarDay {
    /*border-bottom: none;*/
    border-bottom-color: #f5f5f5;
}
.acSimpleCalendar > tbody > tr:nth-child(n+3) > .acCalendarDay:first-child,
.acSimpleCalendar th.acCalendarHeader:first-child {
    /*border-left: none;*/
    border-left-color: #f5f5f5;
}
.acSimpleCalendar > tbody > tr:nth-child(n+3) > .acCalendarDay:last-child,
.acSimpleCalendar th.acCalendarHeader:last-child {
    /*border-right: none;*/
    border-right-color: #f5f5f5;
}
.acSimpleCalendar .acCalendarDay a,
.acSimpleCalendar .acCalendarDay a:link {
    width: 100%;
    text-align: center;
    -moz-border-radius: 0;
    -webkit-border-radius: 0;
    border-radius: 0;
}
.acSimpleCalendar .acCalendarDay a i {
    color: #0079b2;
    line-height: 40px;
}
.acSimpleCalendar .acCalendarDay a.acSoldOut, 
.acSimpleCalendar .acCalendarDay a.acSoldOut:link,
.acSimpleCalendar .acCalendarDay a.acSoldOut i {
	color: #B0B0B0;
}
.acSimpleCalendar .acCalendarDay a:hover i {
    color: #333333;
}

ul.acWaiverNotes {
    list-style: none;
    padding-left: .5rem;
    font-style: italic;
}
ul.acWaiverNotes li+li {
    margin-top: .5em;
}

ul.acLinkNotes {
    padding-left: 1em;
}
ul.card-notes {
    padding-left: 1em;
    margin: 0;
}
ul.acLinkNotes li {
    padding: 0;
}
ul.card-notes li {
    padding: 0;
    font-size: 14px;
    color: #5c6873;
}
ul.acLinkNotes li + li,
ul.card-notes li + li {
    margin-top: .5em;
}

/* Google Maps
-----------------------------------------------------------------------------*/
.acLocationMap #map_canvas {
    -moz-border-radius: 1rem;
    -webkit-border-radius: 1rem;
    border-radius: 1rem;
}

/* Telerik Scheduler / Gantt
-----------------------------------------------------------------------------*/
.RadScheduler_WebCart {
    -moz-border-radius: 1rem;
    -webkit-border-radius: 1rem;
    border-radius: 1rem;
}
.rsTimelineView .rsApt:hover,
.rsDayView .rsApt:hover,
.rsWeekView .rsApt:hover,
.rsMonthView .rsApt:hover,
.rsTimelineView .rsApt .rsAptIn:hover,
.rsDayView .rsApt .rsAptIn:hover,
.rsWeekView .rsApt .rsAptIn:hover,
.rsMonthView .rsApt .rsAptIn:hover,
.rsTimelineView [class$="Flag"] .rsAptOut:hover,
.rsDayView [class$="Flag"] .rsAptOut:hover,
.rsWeekView [class$="Flag"] .rsAptOut:hover,
.rsMonthView [class$="Flag"] .rsAptOut:hover {
    background-color: #E6E6E6;
}

/* Numeric Textbox Spinner/Stepper
-----------------------------------------------------------------------------*/
.acColumnCenterSpinner {
    text-align: center;
}
.acColumnRightSpinner {
    text-align: right;
}
.acColumnCenterSpinner .form-check {
    margin: 1em 0 0 0;
}
.input-group {
    position: relative;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -ms-flex-align: stretch;
    align-items: stretch;
    width: 100%;
    max-width: 200px;
}
.acColumnCenterSpinner .input-group {
    margin: 0 auto;
}
.acColumnRightSpinner .input-group {
    margin: 0 0 0 auto;
}
.input-group-append,
.input-group-prepend {
    display: -ms-flexbox;
    display: flex;
}
.input-group-prepend {
    margin-right: -1px;
}
.input-group-append {
    margin-left: -1px;
}
.input-group .btn {
    display: inline-block;
    font-weight: 400;
    color: #212529;
    text-align: center;
    vertical-align: middle;
    border: 1px solid transparent;
    padding: .375rem .75rem;
    font-size: 1rem;
    line-height: 1.5;
    border-radius: .25rem;
    border-top-right-radius: 0.25rem;
    border-bottom-right-radius: 0.25rem;
    position: relative;
}
.input-group .input-group-append .btn strong,
.input-group .input-group-prepend .btn strong {
    top: -.125rem;
    position: relative;
}
.input-group .btn:not(:disabled) {
    cursor: pointer;
}
.input-group .btn-outline-secondary {
    color: #333333;
    background-color: #f5f5f5;
    border-color: #e4e7ea;
}
.input-group .btn-outline-secondary:not(:disabled):hover,
.input-group .btn-outline-secondary:not(:disabled):focus,
.input-group .btn-outline-secondary:not(:disabled):active {
    border-color: #999999;
    text-decoration: none;
    outline: none;
}
.input-group > .input-group-prepend > .btn {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
}
.input-group > .input-group-append > .btn {
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
}
.input-group > .form-control {
    height: calc(1.5em + .75rem + 2px);
    padding: .375rem .75rem;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.5;
    -ms-flex: 1 1 auto;
    flex: 1 1 auto;
    width: 1%;
    min-width: 0;
}
.input-group > .form-control:hover,
.input-group > .form-control:focus,
.input-group > .form-control:active {
    margin-left: 1px;
    margin-right: 1px;
}
.input-group > .form-control:not(:last-child) {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
}
.input-group > .form-control:not(:first-child) {
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
}
.acRatesTable td.acRentalInputColumn div.input-group-append,
.acRatesTable td.acRentalInputColumn div.input-group-prepend {
    width: auto;
}
.acRatesTable td.acRentalInputColumn .input-group > .form-control.acNumericSpinner {
    width: 1%;
}

/* center google recaptcha */
.g-recaptcha > div {
    margin: 0 auto;
}

/* Responsive CSS
-----------------------------------------------------------------------------*/
.acShowOnSmall {
    display: inline-block;
}
.acShowOnLarge,
.row.acShowOnLarge {
    display: none;
}

/*@media screen and (max-width: 374px) {
    .results-desc-target-sm .col-auto {
        max-width: 100%;
    }
}*/

/* col-xs - Overrides for iphone 6,7,8,X screens, or landscape view */
@media screen and (min-width: 375px) {
    .acFloatingError .acErrorMessage {
	    padding: 10px 15px;
    }
    /*.navbar-text {
        max-width: 100%;
    }*/

    .acWebCartCalendarPage,
    .acWebCartDetailsPage,
    .acWebCartTripEditPage,
    .acWebCartLinksPage {
        padding: 0 .5rem;
    }

    .acFooterInfo a.acBusinessLogo img {
        max-width: 80%;
    }

    .acCalendarAvailability .acCalendarDay a, 
    .acCalendarAvailability .acCalendarDay a:link {
        -moz-border-radius: 50%;
        -webkit-border-radius: 50%;
        border-radius: 50%;
        width: 40px;
        height: 40px;
        line-height: 40px;
        display: block;
    }
    .acCalendarAvailability .acCalendarDay.acAvailDay a, 
    .acCalendarAvailability .acCalendarDay.acAvailDay a:link {
        line-height: 38px;
    }

    .col-xs {
        -ms-flex-preferred-size: 0;
        flex-basis: 0;
        -webkit-box-flex: 1;
        -ms-flex-positive: 1;
        flex-grow: 1;
        max-width: 100%;
    }
    .col-xs-1 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 8.33333333%;
        flex: 0 0 8.33333333%;
        max-width: 8.33333333%;
    }
    .col-xs-2 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 16.66666667%;
        flex: 0 0 16.66666667%;
        max-width: 16.66666667%;
    }
    .col-xs-3 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 25%;
        flex: 0 0 25%;
        max-width: 25%;
    }
    .col-xs-4 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 33.333333%;
        flex: 0 0 33.333333%;
        max-width: 33.333333%;
    }
    .col-xs-5 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 41.666667%;
        flex: 0 0 41.666667%;
        max-width: 41.666667%;
    }
    .col-xs-6 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 50%;
        flex: 0 0 50%;
        max-width: 50%;
    }
    .col-xs-7 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 58.333333%;
        flex: 0 0 58.333333%;
        max-width: 58.333333%;
    }
    .col-xs-8 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 66.666667%;
        flex: 0 0 66.666667%;
        max-width: 66.666667%;
    }
    .col-xs-9 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 75%;
        flex: 0 0 75%;
        max-width: 75%;
    }
    .col-xs-10 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 83.33333333%;
        flex: 0 0 83.33333333%;
        max-width: 83.33333333%;
    }
    .col-xs-11 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 91.66666667%;
        flex: 0 0 91.66666667%;
        max-width: 91.66666667%;
    }
    .col-xs-12 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        max-width: 100%;
    }
    .col-xs-auto {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: auto;
        max-width: none;
    }
    .d-xs-none {
        display: none !important;
    }
    .d-xs-block {
        display: block !important;
    }
    .d-xs-inline {
        display: inline !important;
    }
    .d-xs-tablecell {
        display: table-cell !important;
    }
    .order-xs-1 {
        -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
        order: 1;
    }
    .order-xs-2 {
        -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
        order: 2;
    }
    .order-xs-3 {
        -webkit-box-ordinal-group: 4;
        -ms-flex-order: 3;
        order: 3;
    }
}

/* Overrides for larger screens or an iphone 6 Plus in portrait view */
@media screen and (min-width: 414px) {
    .acShowOnSmall {
        display: none;
    }
    .acShowOnLarge {
        display: inline-block;
    }
    th.acShowOnLarge,
    td.acShowOnLarge {
        display: none;
    }
    tr.acShowOnLarge {
        display: table-row;
    }
}

/* col-sm - Small devices (landscape phones, 576px and up) */
@media screen and (min-width: 568px) {
    .navbar {
        padding: .5rem 1rem;
    }
    a.navbar-brand {
        margin-right: 1rem;
    }
    a.navbar-cart {
        margin-left: 1rem;
    }
    a.navbar-cart span {
        right: .7rem;
    }
    /*.navbar-text {
        font-size: 1rem;
        line-height: 1.5;
        max-width: 100%;
    }*/
    .acFloatingError .acErrorMessage td.acErrorColumnLeft {
        display: table-cell;
        width: 50px;
    }
    .acFloatingError .acErrorMessage td.acErrorColumnRight {
        padding-left: 1rem;
    }

    .acDepartureBoard th {
        font-size: 1.2em;
        line-height: 1.1em;
    }
    .acDepartureBoard td {
        font-size: 1.5em;
        line-height: 1.1em;
    }

    th.acShowOnLarge,
    td.acShowOnLarge {
        display: table-cell;
    }
    .row.acShowOnLarge {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
    }

	.acWebCartContents {
		margin: 1rem;
	}
    .acFooterInfo {
        margin-left: 1rem;
        margin-right: 1rem;
    }

    .acWebCartCalendarPage,
    .acWebCartDetailsPage,
    .acWebCartTripEditPage {
        margin-left: auto;
        margin-right: auto;
        max-width: 767.98px;
    }

    /*.acWebCartCalendarPage .row.row-media-cal [class^="col-"] {
        margin-bottom: 1rem;
    }*/
    /*.acWebCartDetailsPage .row [class^="col-"].results-desc-target-sm {
        margin-bottom: 1rem;
    }*/

    .acRatesTable .acActivityInputColumn select,
    .acRatesTable .acRentalInputColumn select,
    .acRatesTable .acRentalInputColumn .acTimePicker,
    .acRatesTable .acPackageInputColumn select {
        width: 125px !important;
    }

    .item-details label,
    .step-details label {
        font-size: 16px;
    }
    [id*=divDescription].form-group.row > label {
        font-size: 16px;
        line-height: 1.5;
    }

    .col-sm {
        -ms-flex-preferred-size: 0;
        flex-basis: 0;
        -webkit-box-flex: 1;
        -ms-flex-positive: 1;
        flex-grow: 1;
        max-width: 100%;
    }
	.col-sm-1 {
		-webkit-box-flex: 0;
		-ms-flex: 0 0 8.33333333%;
		flex: 0 0 8.33333333%;
		max-width: 8.33333333%;
	}
	.col-sm-2 {
		-webkit-box-flex: 0;
		-ms-flex: 0 0 16.66666667%;
		flex: 0 0 16.66666667%;
		max-width: 16.66666667%;
	}
	.col-sm-3 {
		-webkit-box-flex: 0;
		-ms-flex: 0 0 25%;
		flex: 0 0 25%;
		max-width: 25%;
	}
	.col-sm-4 {
		-webkit-box-flex: 0;
		-ms-flex: 0 0 33.333333%;
		flex: 0 0 33.333333%;
		max-width: 33.333333%;
	}
	.col-sm-5 {
		-webkit-box-flex: 0;
		-ms-flex: 0 0 41.666667%;
		flex: 0 0 41.666667%;
		max-width: 41.666667%;
	}
	.col-sm-6 {
		-webkit-box-flex: 0;
		-ms-flex: 0 0 50%;
		flex: 0 0 50%;
		max-width: 50%;
	}
	.col-sm-7 {
		-webkit-box-flex: 0;
		-ms-flex: 0 0 58.333333%;
		flex: 0 0 58.333333%;
		max-width: 58.333333%;
	}
	.col-sm-8 {
		-webkit-box-flex: 0;
		-ms-flex: 0 0 66.666667%;
		flex: 0 0 66.666667%;
		max-width: 66.666667%;
	}
	.col-sm-9 {
		-webkit-box-flex: 0;
		-ms-flex: 0 0 75%;
		flex: 0 0 75%;
		max-width: 75%;
	}
	.col-sm-10 {
		-webkit-box-flex: 0;
		-ms-flex: 0 0 83.33333333%;
		flex: 0 0 83.33333333%;
		max-width: 83.33333333%;
	}
	.col-sm-11 {
		-webkit-box-flex: 0;
		-ms-flex: 0 0 91.66666667%;
		flex: 0 0 91.66666667%;
		max-width: 91.66666667%;
	}
	.col-sm-12 {
		-webkit-box-flex: 0;
		-ms-flex: 0 0 100%;
		flex: 0 0 100%;
		max-width: 100%;
	}
	.col-sm-auto {
		-webkit-box-flex: 0;
		-ms-flex: 0 0 auto;
		flex: 0 0 auto;
		width: auto;
		max-width: none;
	}
	.d-sm-none {
		display: none !important;
	}
	.d-sm-block {
		display: block !important;
	}
    .d-sm-inline {
        display: inline !important;
    }
    .d-sm-tablecell {
        display: table-cell !important;
    }
    .order-sm-1 {
        -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
        order: 1;
    }
    .order-sm-2 {
        -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
        order: 2;
    }
    .order-sm-3 {
        -webkit-box-ordinal-group: 4;
        -ms-flex-order: 3;
        order: 3;
    }

    .acFooterInfo a.acBusinessLogo img {
        max-width: 50%;
    }
}

/* Overrides for larger screens or an iphone 6 in landscape view */
@media screen and (min-width: 667px) {
    /*.button-wrapper > .btn-flex {
        max-width: 230px;
        min-width: 230px;
    }*/
    a.acCartButtonFullWidth {
        /*padding: 10px 20px;*/
        /*padding: .575rem 1rem;*/
        padding: .575rem 1.25rem;
        display: inline-block;
        /*min-width: 230px;*/
    }
    .acResultsGrid a.acCartButtonFullWidth {
        padding: .575rem 0;
        display: block;
    }

    .acCalendarStepWrapper {
        padding-right: 330px;
        overflow: hidden;
    }
    .acCalendarStepWrapper .acCalendarStep1 {
        width: 300px;
        margin: 0;
        display: inline;
        float: left;
    }

    .acCalendarStepWrapper .acCalendarStep2 {
        margin: 0 -330px 0 auto;
        display: inline;
        float: right;
    }
    .acCalendarStep2 {
        margin-top: 0;
    }

    .button-wrapper {
        align-items: center;
        flex-flow: row wrap;
        -ms-flex-flow: row wrap;
        -webkit-flex-flow: row wrap;
    }
    .button-wrapper > .btn-flex {
        flex-grow: 1; 
        margin-left: .5rem;
        margin-right: .5rem;
        /*padding: 10px 20px;*/
        /*padding: .575rem 1rem;*/
        padding: .575rem 1.25rem;
        display: inline-block;
    }
    .button-wrapper > .btn-flex.btn-flex-small {
        max-width: 170px;
    }
    .button-wrapper {
        justify-content: flex-start;
    }
    .button-wrapper > .btn-flex:first-child {
        margin-left: 0;
    }
    .button-wrapper > .btn-flex:last-child {
        margin-right: 0;
    }
    .button-wrapper.summary-buttons > .btn-flex:nth-child(1) {
        order: 1;
    }
    .button-wrapper.summary-buttons > .btn-flex:nth-child(2) {
        order: 2;
    }

    .item-details > .row [class^="col-"]:first-child {
        padding-bottom: .25rem;
    }
}

/* col-md - Medium devices (tablets, 768px and up) */
@media screen and (min-width: 768px) {
    .acColumnCenterSpinner .input-group {
        margin: 0;
    }

    .acColumnCenterSpinner .form-check {
        margin: .45em 0 0 0;
    }

    .acCart {
        padding: 0;
    }
    .acCart .acInputForm {
        margin: 0;
    }
    table.acCartButtons {
        width: auto;
    }

    .acResultsGrid .square-image .square-image-caption {
        padding: .5rem;
        height: 4.75rem;
    }
    .acResultsGrid .square-image .square-image-caption > div {
        line-height: 1.4;
        font-size: .8rem;
        height: 4.2em; /* 3x 1.4 */
    }
    .acResultsGrid .square-image .square-image-caption::after {
        bottom: 3px;
    }
    .acResultsGrid .col-12.acResultsGridTitle {
        font-size: .9rem;
    }

    .col-md {
        -ms-flex-preferred-size: 0;
        flex-basis: 0;
        -webkit-box-flex: 1;
        -ms-flex-positive: 1;
        flex-grow: 1;
        max-width: 100%;
    }
    .col-md-1 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 8.33333333%;
        flex: 0 0 8.33333333%;
        max-width: 8.33333333%;
    }
    .col-md-2 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 16.66666667%;
        flex: 0 0 16.66666667%;
        max-width: 16.66666667%;
    }
    .col-md-3 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 25%;
        flex: 0 0 25%;
        max-width: 25%;
    }
    .col-md-4 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 33.333333%;
        flex: 0 0 33.333333%;
        max-width: 33.333333%;
    }
    .col-md-5 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 41.666667%;
        flex: 0 0 41.666667%;
        max-width: 41.666667%;
    }
    .col-md-6 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 50%;
        flex: 0 0 50%;
        max-width: 50%;
    }
    .col-md-7 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 58.333333%;
        flex: 0 0 58.333333%;
        max-width: 58.333333%;
    }
    .col-md-8 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 66.666667%;
        flex: 0 0 66.666667%;
        max-width: 66.666667%;
    }
    .col-md-9 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 75%;
        flex: 0 0 75%;
        max-width: 75%;
    }
    .col-md-10 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 83.33333333%;
        flex: 0 0 83.33333333%;
        max-width: 83.33333333%;
    }
    .col-md-11 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 91.66666667%;
        flex: 0 0 91.66666667%;
        max-width: 91.66666667%;
    }
    .col-md-12 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        max-width: 100%;
    }
    .col-md-auto {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: auto;
        max-width: none;
    }
    .d-md-none {
        display: none !important;
    }
    .d-md-block {
        display: block !important;
    }
    .d-md-inline {
        display: inline !important;
    }
    .d-md-tablecell {
        display: table-cell !important;
    }
}

/* col-lg - Large devices (desktops, 992px and up) */
@media screen and (min-width: 992px) {
	.col-lg {
		-ms-flex-preferred-size: 0;
		flex-basis: 0;
		-webkit-box-flex: 1;
		-ms-flex-positive: 1;
		flex-grow: 1;
		max-width: 100%;
	}
	.col-lg-1 {
		-webkit-box-flex: 0;
		-ms-flex: 0 0 8.33333333%;
		flex: 0 0 8.33333333%;
		max-width: 8.33333333%;
	}
	.col-lg-2 {
		-webkit-box-flex: 0;
		-ms-flex: 0 0 16.66666667%;
		flex: 0 0 16.66666667%;
		max-width: 16.66666667%;
	}
	.col-lg-3 {
		-webkit-box-flex: 0;
		-ms-flex: 0 0 25%;
		flex: 0 0 25%;
		max-width: 25%;
	}
	.col-lg-4 {
		-webkit-box-flex: 0;
		-ms-flex: 0 0 33.333333%;
		flex: 0 0 33.333333%;
		max-width: 33.333333%;
	}
	.col-lg-5 {
		-webkit-box-flex: 0;
		-ms-flex: 0 0 41.666667%;
		flex: 0 0 41.666667%;
		max-width: 41.666667%;
	}
	.col-lg-6 {
		-webkit-box-flex: 0;
		-ms-flex: 0 0 50%;
		flex: 0 0 50%;
		max-width: 50%;
	}
	.col-lg-7 {
		-webkit-box-flex: 0;
		-ms-flex: 0 0 58.333333%;
		flex: 0 0 58.333333%;
		max-width: 58.333333%;
	}
	.col-lg-8 {
		-webkit-box-flex: 0;
		-ms-flex: 0 0 66.666667%;
		flex: 0 0 66.666667%;
		max-width: 66.666667%;
	}
	.col-lg-9 {
		-webkit-box-flex: 0;
		-ms-flex: 0 0 75%;
		flex: 0 0 75%;
		max-width: 75%;
	}
	.col-lg-10 {
		-webkit-box-flex: 0;
		-ms-flex: 0 0 83.33333333%;
		flex: 0 0 83.33333333%;
		max-width: 83.33333333%;
	}
	.col-lg-11 {
		-webkit-box-flex: 0;
		-ms-flex: 0 0 91.66666667%;
		flex: 0 0 91.66666667%;
		max-width: 91.66666667%;
	}
	.col-lg-12 {
		-webkit-box-flex: 0;
		-ms-flex: 0 0 100%;
		flex: 0 0 100%;
		max-width: 100%;
	}
	.col-lg-auto {
		-webkit-box-flex: 0;
		-ms-flex: 0 0 auto;
		flex: 0 0 auto;
		width: auto;
		max-width: none;
	}
	.d-lg-none {
		display: none !important;
	}
	.d-lg-block {
		display: block !important;
	}
    .d-lg-inline {
        display: inline !important;
    }
    .d-lg-tablecell {
        display: table-cell !important;
    }
}

/* col-xl - Extra large devices (large desktops, 1200px and up) */
@media screen and (min-width: 1200px) {
	.col-xl {
		-ms-flex-preferred-size: 0;
		flex-basis: 0;
		-webkit-box-flex: 1;
		-ms-flex-positive: 1;
		flex-grow: 1;
		max-width: 100%;
	}
	.col-xl-1 {
		-webkit-box-flex: 0;
		-ms-flex: 0 0 8.33333333%;
		flex: 0 0 8.33333333%;
		max-width: 8.33333333%;
	}
	.col-xl-2 {
		-webkit-box-flex: 0;
		-ms-flex: 0 0 16.66666667%;
		flex: 0 0 16.66666667%;
		max-width: 16.66666667%;
	}
	.col-xl-3 {
		-webkit-box-flex: 0;
		-ms-flex: 0 0 25%;
		flex: 0 0 25%;
		max-width: 25%;
	}
	.col-xl-4 {
		-webkit-box-flex: 0;
		-ms-flex: 0 0 33.333333%;
		flex: 0 0 33.333333%;
		max-width: 33.333333%;
	}
	.col-xl-5 {
		-webkit-box-flex: 0;
		-ms-flex: 0 0 41.666667%;
		flex: 0 0 41.666667%;
		max-width: 41.666667%;
	}
	.col-xl-6 {
		-webkit-box-flex: 0;
		-ms-flex: 0 0 50%;
		flex: 0 0 50%;
		max-width: 50%;
	}
	.col-xl-7 {
		-webkit-box-flex: 0;
		-ms-flex: 0 0 58.333333%;
		flex: 0 0 58.333333%;
		max-width: 58.333333%;
	}
	.col-xl-8 {
		-webkit-box-flex: 0;
		-ms-flex: 0 0 66.666667%;
		flex: 0 0 66.666667%;
		max-width: 66.666667%;
	}
	.col-xl-9 {
		-webkit-box-flex: 0;
		-ms-flex: 0 0 75%;
		flex: 0 0 75%;
		max-width: 75%;
	}
	.col-xl-10 {
		-webkit-box-flex: 0;
		-ms-flex: 0 0 83.33333333%;
		flex: 0 0 83.33333333%;
		max-width: 83.33333333%;
	}
	.col-xl-11 {
		-webkit-box-flex: 0;
		-ms-flex: 0 0 91.66666667%;
		flex: 0 0 91.66666667%;
		max-width: 91.66666667%;
	}
	.col-xl-12 {
		-webkit-box-flex: 0;
		-ms-flex: 0 0 100%;
		flex: 0 0 100%;
		max-width: 100%;
	}
	.col-xl-auto {
		-webkit-box-flex: 0;
		-ms-flex: 0 0 auto;
		flex: 0 0 auto;
		width: auto;
		max-width: none;
	}
	.d-xl-none {
		display: none !important;
	}
	.d-xl-block {
		display: block !important;
	}
    .d-xl-inline {
        display: inline !important;
    }
    .d-xl-tablecell {
        display: table-cell !important;
    }
}

