body
{
    overflow-y:scroll;
}

.btn-quantities 
{
    background-color: #1b5d1a;
    width: 30px;
    height: 30px;
    border-radius: 15px;
    border: none;
    color: #f6f9e8;
}

.device-xs .cblTimeSlots
{
    width: 100%;
    display: grid;
    grid: auto-flow / repeat(2, 1fr);
    column-gap: 2px;
    row-gap: 10px;
    justify-items: start;
    text-align: left;
    table-layout: fixed;
}

.device-sm .cblTimeSlots, .device-md .cblTimeSlots, .device-lg .cblTimeSlots
{
    width: 100%;
    display: grid;
    grid: auto-flow / repeat(2, 1fr);
    column-gap: 10px;
    row-gap: 10px;
    justify-items: start;
    text-align: left;
    table-layout: fixed;
}

.device-xs .cblTimeSlots tbody, .device-sm .cblTimeSlots tbody, .device-md .cblTimeSlots tbody, .device-lg .cblTimeSlots tbody
{
    display: contents;
}

.device-xs .cblTimeSlots tr, .device-sm .cblTimeSlots tr, .device-md .cblTimeSlots tr, .device-lg .cblTimeSlots tr
{
    display: contents;
}

.device-xs .cblTimeSlots td
{
    padding: 0px !important;
}

.cblTimeSlots td 
{
    padding-left: 10px;
    padding-right: 10px;
}

.cblTimeSlots td:hover
{
    background-color: #d7e7b7;
    border-radius: 10px
}


.txt-quantities 
{
    background: transparent;
    border: none;
    text-align: center;
    width: 25%;
}

.pan1
{
    margin: 0px;
}
.tab1
{
    vertical-align: middle;
}

.FreezePanelOff
{
	visibility:hidden;
	display:none;
	position:absolute;
	top:-100px;
	left:-100px;
}
.FreezePanelOn
{
	position:fixed;
	top:0px;
	left:0px;
	visibility:visible;
	display:block;
	width:100%;
	height:150%;
	background-color:#666;
	z-index:100000;
	filter:alpha(opacity=85);
	-moz-opacity:0.85;
	opacity:0.85;
	padding-top:20%;
}
.InnerFreezePanel
{
	text-align:center;
	background-color:#171;
	color:White;
	font-size:large;
	border:dashed 2px #111;
	padding:9px;
	z-index:100001;
	position: absolute; /* can't used "fixed" here for mobile devices! */
    left: 0px;
    width: 100%;
    top:10%;
}

.FreezeFloatWrapper
{
    width:100%;
    height: 0px;
    text-align:center;
    position:relative;
    z-index:100001;
}

.FreezeFloat
{
    display:none;
    margin: 0 auto;
    z-index:100001;
    text-align:center;
	position:relative;
	top:100px; 
	width:600px;  
}

.tblMerac, .tabCusDetails, .tblMeracBillingAddress, .tblCardDetails, .tblMeracBuy, .tblMeracUpgrades
{
    font-weight:normal;
    width:100%;
}

.tblCardDetails th, .tblMeracBillingAddress th
{
    font-weight:bold;
}

#divMeracPCBasket h2
{
	text-align:left;
}


#tdMeracPayNow
{
    text-align:center;
}

.tblMerac, .tabCusDetails, .tblMeracBuy, .tblMeracUpgrades
{
    border-color: #888888;
    border-style: solid;
    border-width: 1px;
    border-left-width:0px;
    border-right-width:0px;
    border-collapse:collapse;
}

.tblMeracRows, .tblRowAlter, .tblMeracFooter
{
    border-top: 1px solid #eeeeee;
    text-align:left;
}

.tblMeracFooter td
{
    font-weight:bold;
}

.tblMeracFooter td:first-child+td+td+td
{
    text-align:right;
}

.shoppingcart TABLE
{
    border: 1px solid black;
}

.tblMerac TH, .tabCusDetails TH, .basketHeader td, th.tblMeracBillingAddress, .SessionHeader, divNoLogHeader, .divMeracSectionHeader
{
    text-align: left;
    height:24px;
    vertical-align:middle;
    BORDER-BOTTOM: #ffffff 1px solid;
    padding-left:5px;
    padding-right:5px;
    font-weight: bold;
}

.SessionHeader
{
    height:20px;
}

.basketfooter td
{
    font-weight:bold;
    text-align:left;
}

.tblMerac TD, .tblMeracBillingAddress td, .tblMeracBuy TD, .tblMeracUpgrades TD, .tblMemberDetails td
{
    padding:5px;
    vertical-align:middle;
}

.tblLoginReg
{
    text-align:left;
    width: 100%;
}

#divOptionalLogin
{
    margin-top:20px;
}

.tblMerac#tblLogin TD
{
    vertical-align:top;
}

.tblMeracBillingAddress td
{
    border-bottom: 0px solid #dddddd;
    line-height:20px;
    text-align:left;
}

.tblMeracInner
{
    width:100%;
}

.tblMeracInner td
{
    border-bottom-width:0px;
}

.tblMeracInner th, .thInner
{
    font-size:1.1em;
    background-color:transparent;
    font-weight:normal;
    text-align:left;
}

.valSummary
{
    padding-top: 10px;
    padding-bottom: 10px;
    color:Red;
    /* font-size:1.2em;*/
}

.tdMeracGridSaving
{
    color:Red;
}

#locationheader
{
    background-color:Black;color:White;font-family:Verdana;font-size:10pt;font-weight:bold;
}

#locationdetail
{
    background-color:#eeeeee;font-family:Verdana;font-size:10pt;height:80px;
}

.ActiveButton, .ActiveWelcomeButton
{
	border:0px solid #999;
	vertical-align:middle;
	text-align:center;
    padding-top:5px;
    padding-left:5px;
    padding-right:5px;
    padding-bottom:5px;
	margin: 0px;
	font-weight: bold;
	/*font-size: 1.2em;*/
	display:inline-block;
}

.ActiveButton a, .ActiveButton a:visited, .ActiveButton a:link, .ActiveButton a:active
{
    text-decoration:none;
} 

.ActiveWelcomeButton
{
    width:250px;
	margin:0px auto;
	display:inline-block;
}

.InactiveButton, .InactiveWelcomeButton
{
	color: #000000;
	font-weight: bold;
	/*font-size: 1.2em;*/
	border:0px solid #999;
    padding-top:5px;
    padding-left:5px;
    padding-right:5px;
    padding-bottom:5px;
	vertical-align:middle;
	text-align:center;
	margin: 0px;
	display:inline-block;
}

.InactiveWelcomeButton
{
    background:blue;
    color:#eeeeee;
    width:250px;
    margin:30px auto;
}

div.InactiveButton a, div.InactiveButton a:link, div.InactiveButton a:visited, div.InactiveButton a:hover, div.InactiveButton a:active
{
    color: #000000;
    text-decoration:none;
    font-weight: bold;
}

.GenericButton
{
	font-weight: normal;
	/*font-size: 1.2em;*/
    color: #f6f9e8;
    background-color: #1b5d1a;
	border-style:none;
    border-radius: 5px;
	/*border-left-color: #cccccc;
	border-top-color: #cccccc;
	border-bottom-color: #999999;
	border-right-color: #999999;*/
	text-decoration: none;
	padding:  4px 10px;
	margin: 0;
	cursor:pointer;
	cursor:hand;
    transition: background-color .2s linear;
    -webkit-transition: background-color .2s linear;
}

.GenericButton:hover 
{
    background-color: #124212;
    transition: background-color .2s linear;
    -webkit-transition: background-color .2s linear;
}

.GenericButton#cphMainPage_btnShopping
{
    float:left;
}

.GenericButton#cphMainPage_btnContinue
{
    float:right;
}

.GenericButton#btnSubmit /* Pay Now Button */
{
    width:90px;
    height:35px;
}

.meracRemoveAll 
{
    text-align: right;
    margin-bottom: 10px;
}

.contenthead
{
    height: 70px;
}

.MeracBodyTextTitle
{
    TEXT-ALIGN: left;
    COLOR: #000000;
    FONT-SIZE: 1.6em;
    FONT-WEIGHT: bold
}
H1.MeracBodyTextTitle
{
    TEXT-ALIGN: left;
    FONT-SIZE: 1.6em;
    FONT-WEIGHT: bold;
    PADDING-TOP: 6px
}
H3.MeracBodyTextTitle
{
    COLOR: #000000;
    FONT-SIZE: 1.4em
}
H4.MeracBodyTextTitle, div.contact-column-two h4
{
    FONT-SIZE: 1.4em;
}

.newbasketfooter, .divClearer
{
    width:100%;
    clear:both;
}

.newbasketfooter
{
    padding-top: 5px;
}

.basketTotalPanel
{
	width: inherit;
}

.tblLoginFields .txtLogin 
{
    width: 140px;
}

.tblLoginFields td
{
    padding-bottom:5px;
}

.pRegister
{
    width:240px;
    text-align:center;
    font-size:1.3em;
}

.checkoutNext
{
    POSITION: relative;
    DISPLAY: inline;
    MARGIN-LEFT: 10px
}
.continueShopping
{
    POSITION: relative;
    DISPLAY: inline;
    MARGIN-LEFT: 474px
}
DIV.space
{
    HEIGHT: 15px
}
.paymentLoading
{
    Z-INDEX: 100000;
    POSITION: relative;
    TEXT-ALIGN: center;
    FILTER: alpha(opacity=70);
    PADDING-BOTTOM: 35px;
    BACKGROUND-COLOR: white;
    MARGIN-TOP: -207px;
    WIDTH: 500px;
    TOP: 207px;
    FONT-WEIGHT: bold;
    PADDING-TOP: 35px;
    LEFT: 0px;
    opacity: 0.7
}
.optionalHeader
{
    PADDING-BOTTOM: 0px;
    MARGIN: 15px 0px 15px;
    PADDING-LEFT: 20px;
    PADDING-RIGHT: 0px;
    PADDING-TOP: 0px;
    font-size: 1.2em;
}
.optionalFooter
{
    PADDING-BOTTOM: 0px;
    MARGIN: 5px 0px 10px;
    PADDING-LEFT: 20px;
    PADDING-RIGHT: 0px;
    PADDING-TOP: 0px;
}

.divQTYButtons
{
    position:relative;
    width:15px;
    height:30px;
}

.button-postop
{
    position:absolute;
    top:0px;
    left:0px;
    padding: 0px;
    background-image:url(../images/uparrow15.jpg);
}

.button-posbottom
{
    position:absolute;
    top:15px;
    left:0px;
    padding: 0px;
    background-image:url(../images/downarrow15.jpg);
}

.button-postop, .button-posbottom 
{
    padding:0px 0px 0px 0px;
    margin:0px 0px 0px 0px;
    width:15px;
    height:15px;
    border-width:0px;
}

.divMainContent
{
    /*font-size:1.0em;*/
    display: block;
}

.divMainContent, .divWholeSection, .divMenuSection
{
    width:100%;
}

.divWholeSection, .divMenuSection
{
    text-align:center;
    font-weight:normal;
    margin:0px auto;
}

.divMenuSection td
{
    /*font-size:0.8em;*/
    width:20%;
    font-size:small;
}


div.contact-column-one
{
    width:650px;
}

div.contact-column-one, div.contact-column-two
{
    display:inline-block;
    margin: 0px;
}

td.tblErrorMessage, .tblErrorMessageTitle, td.tblConfirmMessageTitle, p.tblConfirmMessageExtra
{
    font-weight:bold;
}

.tblConfirmMessageTitle, .tblErrorMessageTitle
{
    font-size:1.4em;
}

.tblErrorMessageTitle
{
    color: #ff0000;
}
   
.lblError, p.lblError, .lblError ul li
{
    color: #ff0000;
}

.divTickets
{
    width:100%;
    text-align:center;
}

input[type="checkbox"]
{
    border-width: 0px;
    margin-right:5px;
}

.divPayPal, .divPayPoint
{
    text-align:center;
}

#imgWP_JCB
{
    display:none;
}

.spaBooking, .divSessionDesc, .divSessionDate
{
    font-weight:bold;
    font-size:1.4em;
}

.spaMeracSessionType
{
    font-style:italic;
}

.divSessionDesc, .divSessionDate
{
    display:block;
    margin-top:5px;
    margin-bottom:5px;
    
}

.divSessionTimeSlot
{
    text-align:left;
}

.device-lg .divSessionTimeSlot
{
    margin-left: 20px;   
}

.divSessionTitle
{
    padding: 10px 10px 10px 10px;
    text-align:left;
    background-color: #1b5d1a;
    color: #f6f9e8;
    border-radius:10px;
}

.divSessionWait
{
    height:50px;
    display:block;
    clear: both;
    padding-top: 30px;
}

.divSessionCal
{
    display:block;
}

.divSessionDateButton
{
    display:block;
    padding: 30px;
}

.divSessionAddButton
{
    margin-top:20px;
    margin-bottom: 20px;
    text-align: right;
}

.spaSessionLeg, #divSessionLegHeader
{
    font-weight:bold;
}

#divSessionLegHeader, .divSessionLegTimes
{
    display: inline-block;
    vertical-align: top;
}

.divSessionLegTimes
{
    max-width: 500px;
}

.SessionTimeSelected
{
    background-color: #fff;
}
   
#divSessionItinerary
{
    text-align:left;
    border-top: 2px solid #000;
    border-bottom: 2px solid #000;
}

.divSessionPageItinerary
{
    display:none;
}

.divMeracSessionLeg
{
    border-top: 1px solid #000;
    padding-bottom: 5px;
    clear:both;
}

#divSessionLegInfo
{
    margin-bottom:10px;
}

.divSessionLegDate
{
    float:right;
}

#divMeracSessionLegInfo
{
    clear:both;
}

.divSessionAvailableTime
{
    display:inline-block;
    margin:5px;
}

.divSessionLegProgressImg
{
    position: fixed;
    margin: auto auto;
    text-align: center;
    left: 50%;
    top: 50%;
    background-color: #fff;
    margin-top: -40px;
    margin-left: -40px;
    border: 5px outset;
}

.lblSessBookInfo
{
    font-style:italic;
    font-size:smaller;
}

#divProgressImg
{
    display:none;
    height:80px;
    width:80px;
    background-image: url("../images/loading.gif");
    background-repeat:no-repeat;
    background-size:cover;
}

.divMeracCalInfo
{
    font-size: 14px;
    font-weight: bold;
    font-family: 'Asap', sans-serif !important;
    padding-bottom: 10px;
}

.cblTimeSlots 
{
    margin: 15px auto;
}

.divSessionCalendar, #divMeracCalendar 
{
    width:70%;
    margin-left: 20px;
    padding: 0 8px 10px;
}

#divMeracCalendar {
    margin: 20px auto;
}

.calAvailability
{
    width:100%;
}

.calSession, .calAvailability
{
    border-width:0px !important;
    width: 100%;
}

td.calDays
{
    font-weight:normal !important;
}

.calSession tr > td, .calAvailability tr > td {
    background-color: #969696;
    border: 4px solid #f6f9e8;
    /* border-radius: 20px !important; */
    box-shadow: none;
    color: #FFF !important;
    padding: 10px 0;
    margin: 0;
    font-size: 18px;
    position:relative;
}

.calSession tr > td:first-child, .calAvailability tr > td:first-child {
    padding: 0;
}

.calSession > tbody > tr:first-child > td td, .calAvailability > tbody > tr:first-child > td td {
    background: #ee7202;
    text-align: center;
    padding: 10px 0;
    color:#fff;
    border: 4px solid #f6f9e8;
    border-radius: 0px !important;
}

.calSession th, .calAvailability th {
    font-family: inherit;
    font-size: 12px;
    font-weight: 700;
    font-style: normal;
    padding: 15px 0 5px;
    text-align: center;
    letter-spacing: .1em;
}

.calSession .calSelected,  .calAvailability .calSelected {
    border-radius:0px;
    background:radial-gradient(circle, rgba(29,194,31,1) 0%, rgba(29,194,31,1) 35%, rgba(255,255,204,1) 100%);
}

.calSession a:hover, .calAvailability a:hover {
    background-color: transparent;
}

.calSession .calDays:hover, .calAvailability .calDays:hover {
    background: rgb(126,126,126);
    background: radial-gradient(circle, rgb(39 153 214) 0%, rgb(39 153 214) 30%, rgb(167 192 9) 60%, rgb(246 249 232) 100%);
}

.calSession .calDays:hover a, .calAvailability .calDays:hover a
{
    color:#fff !important;
}

@media (max-width: 768px) 
{
    .divSessionCalendar, #divMeracCalendar 
    {
        width:calc(100% - 20px);
    }    
}


@media (max-width: 400px) 
{
    .calSession .calSelected a:after, .calAvailability .calSelected a:after
    {
        content:'';
        display:none;
    }
}

#top-bar.dark.warning
{
    display: none !important;
}

.find-us
{
    display: none !important;
}



.device-xxs .visit-nav-bg, .device-xxs .explore-nav-bg, .device-xxs .groups-nav-bg, .device-xxs .birthdays-nav-bg, .device-xxs .about-nav-bg
{
    background-image: none;
}

.device-xs .visit-nav-bg, .device-xs .explore-nav-bg, .device-xs .groups-nav-bg, .device-xs .birthdays-nav-bg, .device-xs .about-nav-bg
{
    background-image: none;
}

.device-sm .visit-nav-bg, .device-sm .explore-nav-bg, .device-sm .groups-nav-bg, .device-sm .birthdays-nav-bg, .device-sm .about-nav-bg
{
    background-image: none;
}

.device-xxs .page-header-title-bg, .device-xs .page-header-title-bg
{
    margin-top: -25px !important;
}

.device-xxs .imagepanel, .device-xs .imagepanel
{
    height: 50px !important;
}

.device-xxs .content-wrap, .device-xs .content-wrap, .device-sm .content-wrap
{
    padding-top: 0px  !important;
}

.device-xxs #page-title, .device-xs #page-title, .device-sm #page-title
{
    visibility: hidden !important;
    height: 0px !important;
}

.device-md .content-wrap, .device-lg .content-wrap
{
    padding-top: 10px !important;
}

.device-xxs .divSessionDates
{
    display: inline-block;
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 10px;
}

.device-xs .divSessionDates, .device-sm .divSessionDates
{
    display: inline-block;
    padding: 0px 2.5%;
    width: 95%;
    margin-left: 20px;
}

.device-md .divSessionDates, .device-lg .divSessionDates
{
    display:inline-block;
    width:46%;
    /*max-width:530px;*/
    float:right;
    margin-left: 5%
}

.device-xxs .divSessionCalendar
{
    display: inline-block;
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 10px !important;
}

.device-xs .divSessionCalendar, .device-sm .divSessionCalendar
{
    display: inline-block;
    padding: 0px 2.5%;
    width: 95%;
}

.device-md .divSessionCalendar, .device-lg .divSessionCalendar
{
    display:inline-block;
    float:left;
    /*max-width: 280px;*/
    width: 46%;
}

.device-xxs .divSessionTickets
{
    display: inline-block !important;
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 10px !important;
}

.device-xs .divSessionTickets, .device-sm .divSessionTickets
{
    display: inline-block !important;
    padding: 0px 2.5% !important;
    width: 95% !important;
    max-width: 95% !important;
    margin-left: 20px !important;
}

.device-md  .divSessionTickets, .device-lg  .divSessionTickets
{
    display:block;
    clear:both;    
    text-align:left;
    overflow:hidden;
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 20px;
}

.fsGiftAid label, .divTsAndCs label, .divSignUp label, .chkDonation label
{
    width:100%;
    float:none;
    display:inline;
    margin-right: 0.3em;
}

.divDonation
{
    text-align:left;
    padding-bottom:15px;
}

#cphMainPage_rvDonation
{
    display:inline-block;
}

#cphMainPage_divDonateAny
{
    position:relative;
}

.ulDonationOptions
{
    list-style:none;
    text-align:left;
    display:inline-block;
    *display:inline;
    zoom:1;
}

#divMeracBasket
{
    margin-bottom:10px;
}

#divBasketGiftAidImage
{
    background: url(../images/basketgiftaid.gif);
    width:300px;
    height:70px;
}

.divBasketGiftAid
{
    display:inline-block;
}

#cphMainPage_divMeracAddDonation
{
    text-align:center
}

#cphMainPage_rblGiftAid input[type="radio"]
{
    margin-right:5px;
}

#cphMainPage_divBasketGiftAidCustom, #cphMainPage_divBasketGiftAid
{
    margin: 20px auto;
    max-width: 440px;
    text-align: justify;
}

#divBasketGiftAidValidation, .divBasketGiftAidMessage
{
    text-align:center;
    padding:2px;
}

.divBasketGiftAidMessage
{
    margin-bottom:20px;
    font-size: 20px;
}

.divMeracBasketNVImage, .divMeracBasketNVDesc 
{
    display: inline-block;
}

.divMeracBasketNVImage {
    vertical-align: middle;
    margin-left: 10px;
}

.btnArrowBackNoDonation, .btnArrowForwardWithDonation
{
    background: url(../images/Arrow-Left.png) no-repeat;
    width: 300px;
    height: 220px;
    border: none;
}

.btnArrowBackNoDonation
{
    float:left;
}

.btnArrowForwardWithDonation
{
    float:right;
    background: url(../images/Arrow-Right.png) no-repeat;
    font-weight: bold;
    color: #ffffff;
}

.divGiftAid
{
    margin-top:2px;
    margin-bottom:2px;
}

.divGiftAid img 
{
    border: 0px solid #ffffff !important;
    padding-bottom:10px;
}

.divGiftAidDecs
{
    text-align:left;
    margin-top:10px;
}

.divGiftAidCover
{
    position:fixed;
    left:0px;
    top:0px;
    width:100%;
    height:100%;
    background:gray;
    filter:alpha(Opacity=50);
    opacity:0.5;
    -moz-opacity:0.5;
    -khtml-opacity:0.5;
    z-index:100000;
}

.divGiftAidPopup, .divGiftAidSelectedPopup, .divAvailDateMsg
{
    position:absolute;
    top:40px;margin-top:0px;
    left:50%;width:300px;margin-left:-150px;
    background-color:#ffffff;
    padding: 10px;
    border:2px solid #888888;
    z-index:100001;
    -webkit-box-shadow: 0px 0px 10px 0px #555;
    box-shadow: 0px 0px 10px 0px #555;
}

.lblWhatIsGiftAid
{
    text-align:left;
}

#cphMainPage_upGiftAddress label
{
    display:inline-block;
}

.dgMeracItem
{
    width:500px;
}

.gridTotalHeader {
    width: 60px;
}

.tdTsAndCs
{
    text-align:center;
}

th.grdRight, td.grdRight
{
    text-align:right;
}

.lblRequired
{
    font-weight:bold;
}

.spaVoucherSaving 
{
    font-weight:bold;
    font-size:1.2em;
    color:#ff0000;
}

.divVoucher
{
    font-size:0.9em;
}

.valError, .tdSessionSoldOut
{
    color:Red;
}

#cphMainPage_vsMessage
{
    margin: 10px 0px 10px;
}

.MeracErrorControl
{
    border: 1px solid #ff0000 !important;
}

.divLookupButtons
{
    margin-top:20px;
}

.divMeracAddLookup 
{
    text-align: left;
    margin: 0 auto;
    width: 500px;
}

.divMeracAddLookup li label
{
    display:block;
    width:9.1em;
}



.divBillingAddress
{
    position:relative;
}

#cphMainPage_divGiftAddress
{
    margin: 30px auto;
    display:none;
    overflow:hidden;    
    z-index:-1;    
}

.divGiftAddressPadding
{
    display:block;
    clear:both;
    height:20px;
}

#cphMainPage_divGiftAddress fieldset
{
    text-align:left;
}

.chkGiftAddress label {
    float: none;
    width: auto;
}

.lstLookupAdds
{
    width:400px;
    /* height:120px; Can't specify height as Safari iOS doesn't render select size attr */
    font-size:0.9em;
}

.txtCusDetDOB
{
    vertical-align:top;
}

.divPromoEmails, .divBookingSource
{
    display:block;
    text-align:center;
    width:90%;
    margin: 0 auto;
}

.divBookingSource
{
    margin-bottom:20px;
}

.divExtDesc 
{
    margin-top: 10px;
    font-size:0.9em;
    font-style:italic;
}

.divMeracBilling
{
    margin:0px auto;
    width:100%;
    text-align:center;
}

.divMeracReqInfo
{
    color:#ff0000;
    text-align:center;
    clear:both;
    display:block;
}

.divExtraPaymentText
{
    font-weight:bold;
    margin-bottom:20px;
}

.divPaymentDetailsHeaderText
{
    margin-top:20px;
    margin-bottom:20px;
}

.aPCLookupToggle
{
    margin-left: 135px;
    font-size:0.9em;
    text-decoration:underline;
}


.inpMeracPostcodeLookup 
{
    width: 100px;
    margin-right: 10px;
}

.divMeracAddressInfo
{
    width:240px;
    left: 140px;
    position: relative;
    font-size: 0.9em;
}

#divTicketUserMessage
{
    clear:both;
}

.divDonationDetails
{
    text-align:left;
    margin-bottom:30px;
}

/* Welcome Page */

.divMeracEventsList
{
    max-width: 800px;
    width:100%;
    text-align:center;
}

/* Party Page */
.divPartyDetails
{
    text-align: left;
}

.divPartyRoom, .divPartyChildTitle
{
    display:inline;
}

.divPartyRoomTitle
{
    font-weight:bold;
    margin-top: 20px;
    display: block;  
}

.divPartyChildTitle
{
    width:200px;
    display:inline-block;
}

.divPartyTitle
{
    width:100px;
    display:inline-block;
    font-weight:bold;
}

.divFood
{
    padding-top:10px;
    padding-bottom:10px;
}

.calAvailability
{
    margin: 0 auto;
    text-decoration:none;
    border-width:2px !important;
}

.tdCustDetLine
{
    height:50px;
}

.tdCustDetLine2
{
    height:30px;
}

.divMainTicketSection
{
    text-align:center;
    margin:0px auto;
    width:100%;
}

.divLogin, .divNoLogin
{
    display:inline-block;
    width:44%;
    vertical-align:top;
    margin-bottom:50px;
}

#divNoAccContinue
{
    margin-top:20px;
}

.divSpace
{
    display:inline-block;
    width:10%;    
}

.GenericButton#btnSubmit
{
    width:90px;
    height:35px;
}

.divGAExtra {
    text-align: left;
    font-style: italic;
    margin-top: 15px;
}

.tblConfBasket 
{
    width:100%;padding:10px;
}

.tdConfBasket
{
    font-weight:bold;font-size:16px;
}

.trConfBasket
{
    font-weight: bold;
}

.tdConfTotals
{
    text-align:right;padding-right:20px;font-weight: bold;
}

.divConfirmEmailSent
{
    margin-top:20px;
}

.divLogHeader
{
    display:inline-block;
    font-weight:bold;
}

.divFixedPeriod
{
    display:block;
    margin-bottom:20px;
}

/* Config Items */

.divConfID, .divConfName, .txtConfOption, divConfValue, .lblConfig
{
    display:inline-block;
    padding: 10px;
}

.lblConfig
{
    float:none;
    width:auto;
}

.divConfID, .divConfName
{
    font-weight:bold;
    text-align:left;
}

.txtConfColour, .txtConfLogin
{
    color:#000000;
    text-shadow: -1px 0 white, 0 1px white, 1px 0 white, 0 -1px white;
    padding: 10px;
}

.txtConfColour#txtNewField
{
    text-transform:uppercase;
}

.divConfLogin, .divConfItems, .divConfMenu
{
    margin: 30px;
}

.divConfMenu h1
{
    text-align: center;
    padding-bottom:30px;
}

.divConfMenuItems div
{
    padding-top:10px;
    padding-bottom:20px;
}

.divNewField
{
    display:none;
    border: 1px outset #000000;
    margin-top:20px;
    padding:10px;
}

.divConfigClose
{
    margin-top:10px;
    text-align:right;
}

.tblConfigEmailTemplate
{
    width:100%;
}

.tblConfigEmailTemplate td:last-child
{
    text-align:left;
}

.txtMeracEmailHTML
{
    width:100%;
    height:600px;
}

.divCover, .divMeracTimeoutCover {
    position:absolute;
    left:0px;
    top:0px;
    width:100%;
    height:100%;
    background:gray;
    filter:alpha(Opacity=50);
    opacity:0.5;
    -moz-opacity:0.5;
    -khtml-opacity:0.5;
    z-index:0;
}

.divMeracTimeoutCover
{
    position:fixed;
    z-index:100000;
    visibility:hidden;
}

.divPreviewEmail, .divMeracAdminMessage
{
    position:fixed;
    top:50%; height:340px; margin-top:-170px;
    left:50%;width:740px;margin-left:-370px;
    background-color:#ffffff;
    padding: 10px;
    border:2px solid #888888;
    z-index:100000;
    -webkit-box-shadow: 0px 0px 10px 0px #555;
    box-shadow: 0px 0px 10px 0px #555;
}

.divPreviewEmail, .divMeracAdminMessage
{
    height:550px; margin-top:-275px;
}

.divMeracAdminMessage
{
    width: 300px;
    margin-left: -150px;
    height: 300px;
    margin-top: -150px;    
}

.divMeracAdminMessageText
{
    height:86%;
}

.divMeracAdminMsgButton
{
    text-align:center;
}

.imgPreviewClose
{
    position:absolute;
    top:-10px;
    left:745px;
}

/* END Config Items */

.txtNamedTicket
{
    display:inline-block;
    width:70px;
}

.lblNamedTicket
{
    display:inline-block;
    color:Red;
    font-size:large;
}

.spaNamedTickets
{
    color:Red;
}

.tblBasketQty
{
    width:45px;margin-left: 5px;margin-right:5px;margin-top:2px;margin-bottom:2px;
}

.tblBasketButton
{
    width:100%;
    margin:0px auto;
}

.divCustomControls
{
    margin:0px auto;text-align:left;width:100%;
}

.divTemplateTitle
{
    margin-top: 20px;
    margin-bottom:20px;
}

.lblTemplateName
{
    padding: 10px;
    font-size:1.1em;
    font-weight:bold;
}

.divConfCompleteBooking
{
    margin-top: 20px;
    background-color:beige;
    width:100%;
}

.divConfCompleteInfo
{
    padding-top: 10px;
    padding-bottom: 10px;
    padding-right:70px;
    display:inline-block;   
}

.txtBookingRef 
{
    font-size: 1.7em;
    border: 1px #333 solid;
    width: 100px;
    text-align: center;
    padding: 5px;
}

.imgGiftAid
{
    width:198px;
    height:70px;
    border:0px;
    display:inline;
    zoom: 1;
    *display:inline;    
}

.imgGiftAidCoins
{
    display: none;
}

/* ADOPTIONS */

.divAdoptions
{
    text-align:left;
}

.divAdoptOptions
{
    text-align:left;
    margin-top:20px;
    margin-bottom:20px;
}

.lblAdotionOpt
{
    display:inline-block;
    width:200px;
}

.ddlAdoptions
{
    width:300px;
}

.divAdoptees
{
    width: 425px;
    display: inline-block;
    zoom: 1;
    *display:inline;       
    padding:5px;
    margin:5px;
    text-align:center;
    vertical-align:top;
}

.imgAdoption
{
    width:180px;
    -moz-box-shadow:    3px 3px 5px 6px #ccc;
    -webkit-box-shadow: 3px 3px 5px 6px #ccc;
    box-shadow:         3px 3px 5px 6px #ccc;    
}

.lblAdoptionName
{
    text-shadow: 1px 1px 1px #000;
    white-space:nowrap;
}

.tdAdoptionName
{
    height: 15px; width: 20px; vertical-align: middle; text-align: center;padding-bottom: 5px;
}

.tdAdoptionNotes, .tdAdoptionButton
{
    padding:10px;
}

.divAdoptees .tblBasketQty
{
    width:425px;
}

.divAdoptMsg
{
    margin:10px;
    text-align:center;
}

.txtAdoptMsg
{
    resize:none;
}

#cphMainPage_divDeliveryAddress #liMeracCustDetPwd, #cphMainPage_divDeliveryAddress #liMeracCustDetEmail, #cphMainPage_divDeliveryAddress #liMeracCustDetConfEmail, #cphMainPage_divDeliveryAddress #liMeracCustDetPhone, #cphMainPage_divDeliveryAddress #liMeracCustDetMobile, #cphMainPage_divDeliveryAddress #cphMainPage_ucDelAddress_vsCustDetails
{
    display:none;
}

#cphMainPage_divCustomControls #liMeracCustDetPwd, #cphMainPage_divCustomControls #liMeracCustDetEmail, #cphMainPage_divCustomControls #liMeracCustDetConfEmail, #cphMainPage_divCustomControls #liMeracCustDetPhone, #cphMainPage_divCustomControls #liMeracCustDetMobile
{
	display: block;
}

/* BASKET DONATIONS */

.divBasketDonation
{
    margin-top:10px;
    margin-bottom:20px;
}

.divDonationHeader
{
    font-weight:bold;
    margin:10px 0px 0px 0px;
}

.divDonationPrompt
{
    margin-bottom: 20px;
}

.txtDonation
{
    padding: 10px 10px 10px 15px;
    width: 50px;
}

.divDonationButton
{
    margin-top:20px;
}

/* START BASKET DELIVERY OPTIONS */

.divDeliveryOptions
{
    width:300px;
    margin-top:30px;
    margin-bottom:30px;
    padding:10px;
    float:right;
    text-align:left;
}

.spaDelTitle, .spaDelLocation
{
    display:block;
    padding-top:5px;
    padding-bottom:10px;
}

.spaDelTitle 
{
    font-weight: bold;
}

.divDelCosts
{
    padding:5px;
    width:310px;
    text-align:center;
    background-color:Silver;
    font-size: 1.2em;
}

.divPostcode
{
    padding-top:10px;
    padding-bottom:10px;
    display:block;
    text-align:left;
}

.txtBasketPostcode
{
    margin-top:5px;
    margin-right:10px;
}

.cboPostage
{
    width:260px;
}

.GenericButton#cphMainPage_btnChangePostcode
{
    width:70px;
}

.divPostageOption label
{
    display:inline-block;
}

.divPostageOptionTitle
{
    font-weight:bold;
    margin-bottom:10px;
}

/* END BASKET DELIVERY OPTIONS */

/* START BASKET CAPTURE QUESTIONS */

.divQuestion, .divQuestionAnswer
{
    display:inline-block;
    padding-right: 10px;
    vertical-align:middle;
}

.tdCaptureQuestion
{
    text-align:left;
}
 
.rbnYes
{
    padding-right:10px;
}

/* END BASKET CAPTURE QUESTIONS */

/* START BASKET SIDE CATEGORIES */

#divMeracBasketPage {
    display: inline-block;
    margin-right:10px;
}

.divMeracBasketSideInfo {
    display: inline-block;
    vertical-align: top;
    text-align: left;
}

/* END BASKET SIDE CATEGORIES */

/* START REGISTER FORM */

fieldset {  
    margin: 1.5em 0 0 0;  
    padding: 0;  
}

legend {
    margin-left: 1em;  
    color: #000000;
    font-weight: bold;
}

fieldset ol {
    padding: 1em 1em 0 1em;
    list-style: none;
}
fieldset li {
    padding-bottom: 1em;  
    padding-left:1em;
}
fieldset.submit {  
    border-style: none;  
}
.lblMeracRegister, .lblMeracRegisterSmallNote {
    float: left;    
    margin-right: 0.3em;
}
.lblMeracRegisterSmallNote
{
    width: 10em;
    font-size:0.7em;
}
#cphMainPage_divDeliveryAddress .lblMeracRegister
{
    width:11em;
}

legend  span#cphMainPage_edt1_lblCustDetLegend, legend span#cphMainPage_edt1_lblCustDetAddressTitle
{
    float:none;
}

.cblTimeSlots label
{
    max-width: 200px;
    min-width: 118px;
    width:auto;
}

/* END REGISTER FORM */

/* ADMIN EMAILS */

.divTemplates
{
    margin-top: 20px;
    margin-bottom: 20px;
    display:inline-block;
    zoom: 1;
    *display:inline;
}

.divEmailNew
{
    display:inline-block;
    zoom: 1;
    *display:inline;
}

.divTemplateMsg
{
    font-size:1.2em;
    font-weight:bold;
    color:Red;
    text-align:center;
    vertical-align:middle;
    background-color:#fdfdfd;
    width:500px;
    height:50px;
    margin: 0 auto 30px;
    padding:10px;
}

.divSendTest
{
    margin-top:30px;
}

.divDateAvailButton
{
    margin: 10px 10px 0px 10px;
}

.divDateAvailButton input
{
    width:100%;
}

.divAvailDateMsg {
  height:auto;
}
 
/* ADMIN CHECK ACCESS */

.divCheckAccess, .divAccessResult
{
    margin: 30px 0px 30px 0px;
}

.divCheckAccessResult
{
    display:block;
    width:300px;
    text-align:left;
    margin: 0 auto;
}

/* ADMIN REPORTING */

#divMAdminReports, #cphMainPage_divMAdminRepParams, #cphMainPage_divMAdminRepResult
{
	margin: 20px;
}

#cphMainPage_divMAdminRepParams li span {
    min-width: 100px;
    display: inline-block;
}

.lblTime
{
    margin-left:5px;
}

#cphMainPage_btnExport
{
    margin-top:20px;
}

.gvMAdminResult
{
    width:100%;
    text-align:left;
    box-shadow: silver 3px 3px;
}

#divMeracWebsiteVersion
{
    position: fixed;
    bottom: 1px;
    right: 3px;
    font-size: 8pt;
}
#lblMOIVersion
{
    color:#0099FF;
}

/* GLOBAL SHOP CHANGES */

.divShopProdDesc
{
    text-align:left;
}

.meracSearch
{
    display:block;
    float:right;
}

/* SESSION SEATING */

.divSeating
{
    text-align:left;
    width: 450px;
    display: inline-block;
    *display:inline;
    zoom:1;
    position:relative;
}

#cphMainPage_divSeating span, .imgSeating
{
    cursor:hand;
    cursor:pointer;
}

#cphMainPage_divSeating span
{
    font-size:larger;
}

.imgSeatingBooked
{
    background-color:Red;
}

.imgSeatingReserved
{
    background-color:Gray !important;
}

.divSeatBlocked, .imgSeatingBlocked
{
    background-color:Gray !important;
}

.divSeatingInner, .divSeatingProcessing
{
    display: inline-block;
    *display:inline;
    zoom: 1;
}

.divSeatingProcessing
{
    margin: 50px;
    vertical-align: top;
    display:none;
    float: right;
}

#cphMainPage_divSeatingKey
{
    width: 300px;
    display: inline-block;
    *display:inline;
    zoom: 1;
    margin: 0px 0px 10px 20px;
    vertical-align:top;
}

.imgKey
{
    src: url(../images/seating_trans.png);
}

#divSeatingKeyTitle
{
    margin-bottom:10px;
    font-weight:bold;
}

#cphMainPage_divSeatingProcessing
{
    position: fixed;
    z-index: 10;
    top: 45%;
    background-color: #ffffff;
    height: 0px;
    width: 250px;
    border: blanchedalmond 1px solid;
    padding: 30px;
}

.divSeatingBlockTitle
{
    font-weight:bold;
}

.divSeatingBlock
{
    margin-top:10px;
}

.divErrorMsg
{
    padding:20px;
}

#cphMainPage_divMAdminRepResult
{
    margin-top:10px;
}

.divSeatSelected
{
    background-color:#00ff00;
}

#cphMainPage_txtSeatTotal
{
    max-width:50px;
}

#cphMainPage_grdSeatingKey td:first-child
{
    min-width: 64px;
    text-align: center;
}

#cphMainPage_upSessions #divSessionHeader .optionalHeader seating
,#cphMainPage_upSessions .optionalHeader seating
,#divMeracSessionSeating .optionalHeader session
,#divMeracSessionSeating .optionalFooter session
,#divMeracSessionPage .optionalFooter seating
{
    display:none;
}

/* SESSION TIMEOUT */

.divMeracTimeoutWrapper
{
    position:relative;
}

#divMeracTimeout
{
    position:fixed;top:200px;left:50%;visibility:hidden;margin-left: -160px;text-align: left;max-width:320px;
    z-index:100000;
}

.tblInactivityHeader
{
    border:outset 2px #666666;max-width:600px;width:100%;
}

.tblInactivityDetails, .tdInactivityInnerTable
{
    background-color:#E5E5E5;color:#000000;padding: 10px;
    border-top:0px;
}

.tblInactivityHeaderInner
{
    background-color:#FC9050;text-indent: 10px;font-weight: bold;padding: 10px;
}

#divMeracCountdown
{
    font-size:18pt;font-weight:bold;
}

.divMeracTimeoutSeconds
{
    text-align:center;background-color:#CFCFCF;width:70px;font-size:8pt;padding: 20px;
}

.divMeracCountdownMsg
{
    display: inline-block;
    *display:inline;
    zoom:1;    
    width: 450px;
    margin-left: 10px;
    line-height: 18px;
}

.tblInactivityDetails tr hr
{
    margin-top:5px;
    margin-bottom:5px;
}

.tblInactivityDetails tr:first-child td
{
    padding:10px;
}


/* DONATION POPUP */
#divMeracDonationPopup {
    border-top-left-radius: 4px;
    border-top-right-radius: 4px;
    border-bottom-right-radius: 4px;
    border-bottom-left-radius: 4px;
    border: 2pt solid rgb(204, 204, 204);
    visibility: hidden;
    background: rgb(255, 255, 255);
    position:fixed;
    z-index:100001;
    padding:10px;
    max-width:350px;
    top:40%;
}

#divMergeGACover, .meracHidden
{
    display: none;
}

#divGAPopupTitle
{
    display:block;
    font-weight:bold;
    padding: 0px 10px 10px 10px;
}

#divGAPopupText
{
    text-align:left;
    padding: 0px 10px 10px 10px;
    display:inline-block;
    width: 170px;
}

#divGAImage
{
    background-image: url('../images/Gift-Aid-logo1.gif');
    background-repeat:no-repeat;
    width:150px;
    height:86px;
    display:inline-block;
    vertical-align: top;
    margin-bottom: 10px;
}

#cphMainPage_divDonationPlead
{
    position:fixed;
    margin:0 auto;
    color: red;
    width: 300px;
    border: 2px solid #F59228;
    background-color:#fff;
    z-index:100001;
    padding:10px;
    box-shadow: 13px 9px 5px #f59228;
}


#cphMainPage_btnDonateYes
{
    background-color:#88ae66;
    margin-bottom: 10px;
}

#cphMainPage_btnDonateNo
{
    background-color:#ae8866;
    margin-bottom: 10px;
}

#cphMainPage_lblGiftAidAreYouSure2, #cphMainPage_lblDonationPrompt
{
    font-weight:bold;
}

#cphMainPage_rbDonateNo
{
    margin-left:10px;
}

#divGADotateOptions
{
    margin:10px 0;
}

/* Purchased Numbered Vouchers */

.divMeracPNVWrapper
{
    display: inline;
}

.divMeracPNVoucher
{
    border-right:1px dashed #000;background-image: url(../images/voucher.png);background-size: 100% 100%;min-width: 280px;display:inline-block;margin: 10px 0px;
}

.divMeracPNVExpiry
{
    padding:5px;
}

.tblMeracPNVoucher
{
    font-size:14pt;text-align:center;line-height:26px;
}

.tblMeracPNVoucher td
{
    padding:0px 5px;
}

@keyframes kfPNVoucherCode {
    from {color: #000000;}
    to {color: #ff0000;}
}

.tdPNVoucherCode
{
    font-weight:bold;
    animation-name: kfPNVoucherCode;
    animation-duration: 2s;
    animation-iteration-count: 3;
}
    
/* ADMIN Check Access */

.divAccessStatus
{
    margin-top:10px;
    margin-bottom:10px;
    text-align: left;
}

.divAccessStatuses {
    margin-left:65px;
    display:inline-block;    
}

.divLookupBookingDetails
{
    position:fixed;
    top:20%; 
    left: 50%;
    margin-left: -240px; 
    width: 480px;
    height: 500px;
    border:3px outset #003300;
    background-color:#ffffff;    
    z-index:100001;
}

.divLookupDetailsCover
{
    position:fixed;
    top:0px;
    left:0px;
    width:100%;
    height:100%;
    background-color:#000000;
    opacity:0.5;
    z-index:100000;
}

.divLookupDetailClose
{
    background-image:url("../images/btn_close_button.png");
    position:absolute;
    right:-15px;
    top:-15px;
    width:29px;
    height:29px;
    cursor:pointer;
}

.divCABookingNotes, .divBookingDetailsTitle
{
    margin:20px;
}

.divCABookingNotesTitle, .divBookingDetailsTitle, .gvResultDetailFooter
{
    font-weight:bold;
}

.gvResultDetailFooter
{
    border-top:1px solid;
    border-bottom:2px solid;
}

.gvMAdminResult, .gvMAdminResult th
{
    padding:5px;
}

.divLookupCheckAccess
{
    margin-top:10px;
}

.divBookingDetailsGrid {
    overflow-y: scroll;
    max-height: 300px;
    display: inline-block;
}

#cphMainPage_divMeracPCBasketEdit
{
    margin-bottom:5px;
    text-align:right;
    display:none;
}

.divPopupWrapper
{
    position: fixed;
    top: 0px;
    z-index: 100000;
    left: 0px;
    width: 100%;
    height: 100%;
    background-color: #000;
    opacity: .5;
}

.divPopupBox
{
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 100001;
}

.divPopupInnerBox
{
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    position: absolute;
    border:4px outset;
    background-color: #fff;
}

.divPopupMsg
{
    z-index: 100001;   
    padding: 20px;
    display:inline-block;
    max-width:450px;
}

.divPopupMsgText
{
    margin-bottom:20px;
}

#divGAInnerTitle 
{
    font-weight:bold;
    margin: 10px 0;
}

.divMeracAdminUpdateComms, .divMeracAdminUpdateImage
{
    margin: 0 auto;
}

.divMeracAdminUpdateImage
{
    width:48px;
    height:48px;
    background: url(../images/update.gif) no-repeat;
}

.divMeracAdminPage
{
    max-width: 960px;
    width:100%;
    margin: 0 auto;
   -webkit-border-radius: 3px;
    -webkit-box-orient: vertical;
    -webkit-transition: 200ms transform;
    background: white;
    box-shadow: 0 4px 23px 5px rgba(0, 0, 0, 0.2), 0 2px 6px rgba(0,0,0,0.15);
    color: #333;
    display: -webkit-box;
    padding: 0;
    position: relative;
    font-family:'Segoe UI', Tahoma, sans-serif;
}

.divSessionSeatingDesc
{
    margin: 20px 0px;
}

a.meracHeaderLink:active, a.meracHeaderLink:link, a.meracHeaderLink:visited
{
    color:#fff;
    text-decoration:underline;
}

.divMeracAdminHeader
{
    min-height:230px;
    background-image: url("../images/logoEmail.png");
    background-repeat:no-repeat;
    background-position: center left;
	background-size:cover;
}

.divMeracAdminEmail
{
    margin: 20px;
}

.tblConfigEmailTemplate #cphMainPage_lblText, .tblConfigEmailTemplate #cphMainPage_txtEmailText
{
    display:none;
}

#cphMainPage_txtBodyStyle
{
    width:100%;
}

.tdMeracEmailLabels
{
    width:210px;
}

.tdMeracEmailEditor
{
    height:500px;
}

.tdLoginDetail
{
    width:66%;
}

/* Member Only Styling */

.divMembersOnly
{
    text-align:left;
    position:absolute;
    top:40px; margin-top:0px;
    left:50%;width:300px;margin-left:-150px;
    background-color:#ffffff;
    padding: 10px;
    border:2px solid #888888;
    z-index:100000;
    -webkit-box-shadow: 0px 0px 10px 0px #555;
    box-shadow: 0px 0px 10px 0px #555;
}
.divMembersOnlyDataEntry, .divMemberOnlyResult
{
    margin: 10px 0px;
}

.divMemberOnlyCheck
{
    position:absolute;
    top:5px;
    right:5px;
    width:15px;
    height:15px;
    background-image:url(../images/loading.gif);
    background-repeat:no-repeat;
    background-size: contain;
    display:none;
}

#cphMainPage_txtMemberOnlyCardNo, #cphMainPage_txtMemberOnlyPostcode
{
    display: block !important;
}

/* END Member Only Styling */

/* Validate member card number */

.inpMeracMemberCardNo
{
    max-width: 180px;
    
}

.rvfMemberCardNo
{
    font-size: 25px;
    vertical-align: top;
    display: inline-block;
}

.divMeracMemberValidate
{
    width:100%;
}

.divValidationStatus {
    width: 20px;
    height: 20px;    
    display: inline-block;
    vertical-align: middle;
    display:none;
}

.divCardValidated 
{
    background: green;
    display:inline-block;
}



.divCardValidating
{
    background: Orange url(../images/membervalidate_processing.gif);
    background-size:cover;
    display:inline-block;
    margin:0px 10px;
}          

.divCardInvalid
{
    background:Red;
    display:inline-block;
    margin:0px 10px;
}

.txtMemberCardInvalid
{
    border: 1px solid red !important;
}

.txtMemberCardValidated
{
    border: 1px solid green !important;
}

.lblTicketValidation
{
    margin-right:10px;
}

.lblTicketValidation
{
	display:block;
}

input[type="text"].inpMeracMemberCardNo
{
	display:inline-block!important;
}


/* END Validate member card number */

/* START Add To Basket */

.divMeracAddToBasket
{
    width:300px;
    height:200px;
    position:fixed;
    z-index:100001;
    left:50%;
    top:50%;
    margin-top:-100px;
    margin-left:-150px;
    padding:20px;
    background-color: beige;
    border-width: 5px;
    border-color: #cb334c;
    border-style: ridge;
}

.divATBIcon
{
    background-image:url(../images/problem.png);
    width:33px;
    height:42px;
}

.divMeracAddToBasketMsg
{
    color: #333;
    font-size: 1.6em;
    font-weight: normal;
    line-height: 1.25em;
    font-family: "Segoe UI", Tahoma, sans-serif;    
}

.divMeracAddToBasketMsg
{
    min-height: 100px;
    margin-bottom: 20px;
}

/* END Add To Basket */

/* START Common shop side-menu */

.divMerac_widget_nav_menu 
{
    box-sizing: border-box;
    -webkit-font-smoothing: antialiased;
    border-radius: 10px;
    padding: 15px 23px 20px;
    background-color: #f6f5f2;
}

.divMeracSideMenu li {
    list-style: none;
    border-bottom: 1px solid #e8e8e8;
    padding: 4px 0;
    box-sizing: border-box;
    -webkit-font-smoothing: antialiased;
    font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
}

 .divMeracSideMenu li a:hover {
    color: #82a62a;
    background: url(../images/menuArrow.png) no-repeat scroll right center transparent;
    display:block;
}

/* END Common shop side-menu */

/* CALENDAR KEY START */

.divCalKeyItemCol
{
    width:25px;
    height:25px;
    border-radius:25px;
    margin-right:10px;  
    display:inline-block;  
}

.divCalKeyItemDesc
{
    max-width:265px;
    display:inline;
}

.divCalKeyItem div
{
    vertical-align: middle;
}

.divCalKeyItem
{
    display:block;
    margin-bottom:20px;
}

.divCalKey
{
    max-width:325px;
    text-align:left;
    margin: 20px auto;
    border: 2px solid #2970ca;
    padding: 10px;
    border-radius: 10px;    
}

/* CALENDAR KEY END */

/* DONATION PAGE START */

#divMeracDonationPage
{
    margin-bottom:40px;
}

#cphMainPage_txtDonation
{
    max-width:100px;
}

#divMeracDonationPage #cphMainPage_btnContinue
{
    margin-top:20px;
}

/* DONATION PAGE END */

/* SPLIT GRID START */

.buyQty {
    float: left;
    line-height: 40px;
    text-align: center;
    width: 40px;
    background: none;
    border: 0;
    color: #fff;
    cursor: pointer;
    background-color: #999999;
    transition: background-color 400ms ease-in-out;
    outline: 0;
    padding: 0;
    height: 40px;
    margin:0px;
    border-radius:4px;
}

.buyQtyMinus, .buyQtyAdd
{
    font-size: 20px;
    font-weight: bold;
}

.buyQtyMinus
{
    border-right: 2px solid #707070;
    color:Red;
}

.buyQtyAdd
{
    border-left: 2px solid #707070;
    color:Lime;
}

.divDonationGridView
{
    width:23px;
    height:23px;
    background-image:url('../images/ArrowViewGrid.png');
    background-size:cover;
    display: inline-block;
}


.divOpenGrid
{
    background-image:url('../images/ArrowHideGrid.png');
}

.divSplitDonationWrapper
{
    margin:20px;
    clear:both;
}

.divSplitHeader
{
    font-size:20px;
    display:inline-block;
}

#divSalesWithDonation table.tblMerac th:nth-child(2), #divSalesWithDonation table.tblMerac td:nth-child(2)
,#divSalesWithoutDonation table.tblMerac th:nth-child(2), #divSalesWithoutDonation table.tblMerac td:nth-child(2)    
{
    display:none;
}

@media screen and (max-width: 767px)
{
    .buyQty
    {
        width:18px;
    }
}

/* SPLIT SRID END */


/* START EVERY PAGE BASKET */

#divMeracPermaBasket {
    display: inline-block;
    position: fixed;
    top:15%;
    right: 0px;
}

#divMeracPermaBasketInner
{
    width:300px;
}

#divMeracMiniBasketInfo {
    background-color: #fff;
}

.divMeracMiniBasket {
    height: 60px;
    width: 102px;
    clear: none;
    position: absolute;
    right: 0;
    top: 0;
    background: #fc0;
}

.divMeracMiniBasketHover {
    right: 0;
    position: absolute;
    top: 60px;
    width: 600px;
    z-index: 100001;
    display:none;
}

.divZIndexOver
{
    z-index: 100001;
}

.aMeracMiniBasket {
    width: 102px;
    display: block;
}

.aMeracMiniBasket:hover {
    text-decoration:none;
}

.divMeracMiniBasketHover .divMeracMiniBasketInner {
    background: #fff;
    display: block;
    background-repeat: repeat-y;
}

.divMeracMiniBasketHover .divMeracMiniBasketMainRow {
    padding: 0;
}

divMeracMiniBaskettTable {
    margin: 0;
}

.divMeracMiniBasketEmptyMsg {
    text-align: center;
    font-size: 14px;
    padding: 10px;
}

.divMeracMiniBasketHover .divMeracMiniBasketBotRow {
    padding: 10px;
    display: block;
    overflow:hidden;
}

.divMeracMiniBaskettTable td {
    height: 60px;
    border-bottom: 1px solid #e7e7e7;
    padding: 3px;
    vertical-align: middle;
}

.divMeracMiniBaskettTable .trMeracMiniBasket_LastRow td {
    border-bottom: none;
}

.divMeracMiniBaskettTable .tdMeracMiniBasketProdImg {
    width: 82px;
    padding: 5px 5px 5px 15px;
}

.divMeracMiniBaskettTable .tdMeracMiniBasketProdDesc {
    width: 300px;
    word-break: normal;
}

.divMeracMiniBaskettTable .tdMeracMiniBasketCartItem {
    width: 100px;
}

.divMeracMiniBaskettTable .tdMeracMiniBasketProdPrice {
    width: 100px;
    color: #ce0000;
    font-weight: bold;
}

.divMeracMiniBasketHover th {
    color: #333;
    font-weight: normal;
    line-height: 30px;
    background: #fc0;
}

th.divMeracMiniBasketFirst {
    font-size: 18px;
    padding: 10px 15px;
}


.spaMeracBasketImg, .spaMeracBasketShopImg {
    width: 25px;
    height: 25px;
    display: inline-block;
    margin: 8px 0 0 37px;
    background: url(../shop/images/basket_icon.png) no-repeat;
    background-size: 100%;
}

.spaMeracBasketShopImg
{
    background: url(../images/basket_icon.png) no-repeat;
    background-size: 100%;
}

.spaMeracBasketItemsCount {
    font-size: 12px;
    color: #4d4d4d;
    background: none;
    border: none;
    border-radius: 9px;
    padding: 1px 4px;
    display: inline-block;
    vertical-align: top;
    margin: 2px 0 0 0;
    font-weight: bold;
}

.spaMeracBasketTotal {
    width: 100%;
    display: block;
    font-size: 13px;
    font-weight: bold;
    color: #4d4d4d;
    text-align: center;
    line-height: 20px;
    margin-top: 5px;
}

input.meracMiniBasketButton {
    display: block;
    min-width: 140px;
    color: #fff;
    font-size: 16px !important;
    float:none;
    margin:0 auto;
}

.trMeracShopItem:hover 
{
    background-color:#eee;
    cursor:pointer;
}


/* END EVERY PAGE BASKET */

/* START Session Filter */

#cphMainPage_ddlFilter 
{
    max-width: 300px;
}

#cphMainPage_divPageFilter
{
    margin:30px 0px;
}

/* END Session Filter */

/* START Direct Debit DD */

.divMeracDDBankDets .lblMeracRegister
{
    float:none;
}

/* END Direct Debit */

/* START GDPR Preferences */

#divMeracGDPRCustomerPrefs
{
    margin: 20px 0px;
}

#divMeracGDPRCustomerPrefs div
{
    margin-right:10px;
}

.divMeracSectionHeader
{
    color:#000;
    font-weight:bold;
}

#cphMainPage_divMeracGDPRPrefsReason, #cphMainPage_divMeracGDPRPrefsHowUsed, #cphMainPage_divMeracGDPRPrefsWhoUses
{
    text-align:left;
    display:inline-block;
    width:250px;
    vertical-align: top;
}

#divMeracGDPRCustomerPrefs input, #divMeracGDPRCustomerPrefs table td > label
{
    cursor:pointer;
}

/* END GDPR Preferences */

/* Double order checking */
@keyframes kfWarningFlash {
    from {color: #000000;}
    to {color: #ff0000;}
}

.spaWarningFlash
{
    font-weight:bold;
    animation-name: kfWarningFlash;
    animation-duration: 2s;
    animation-iteration-count: 3;
}

#cphMainPage_divPaymentMessage .divPopupInnerBox input
{
    margin-top: 5px;
    width: 100%;
}

/* END Double order checking */

/* START Purchased Numbered Vouchers  */

.divNVWrapper 
{
    margin:30px auto;
    max-width:700px;
    padding:10px;
}

.divNVEachWrap
{
    padding: 40px 0px 40px 20px;
    border: 5px solid #000; 
    background-color:beige;
    margin:20px 0px;
    position:relative;
    min-height: 238px;
    font-size:24pt;
    text-align:left;
}
    
.divNVBarcode
{
    position:absolute;
    right:0px;
    top: calc(33%);  
    display: contents;      
}

.divGiftVoucherWrapper
{
    margin:20px 0px;
    position:relative;
}

.divGiftVoucherInnerWrapper
{
    max-width:300px;
    width:100%;
    border:1px solid #000;
    padding:20px;    
}

.divGiftVoucher, .divGiftVoucherValue
{
    font-weight:bold;
}

.divGiftVoucherBarcode
{
    margin:20px 0px;
    position:relative;
}

#divGiftVoucherTitle
{
    text-align:center;
    padding:10px 0px 20px;
    font-size:20pt;
}

.divPVCompanyName
{
    position:absolute;
    top:0px;
    right:10px;
    background-color:Red;
    color:#fff;
    padding: 10px;
    font-size: 10pt;
    font-weight: bold;
}

/* END Purchased Numbered Vouchers */

/* START Availability Key  */

#cphMainPage_divAvailabilityKey table
{
    margin: 20px auto;
}

.aMeracCalDateAvailLoading
{
    background-image: url(../images/loading.gif);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
}

/* END Availability Key  */

/* START Live Card  */
.divBasketSectionHeader
{
    cursor: pointer;
    padding: 10px 5px;
    width: 100%;
    border: none;
    text-align: left;
    outline: none;
    font-weight: bold;
    transition: 0.4s;
}

.divLiveCardBlurb
{
    padding: 10px 0px;
}

.divLiveCards
{
    padding:10px 5px;
    border: 1px solid grey;
    text-align:left;
    margin-top: 10px;
}

.divLiveCards div span
{
    min-width: 150px;
    display: inline-block;
}

.meracLiveCard
{
    background:#000 !important;
    color:#f39723;
}

/* END Live Card  */

/* START Account Invoice  */

.divPayOnAccountMsg, .divPayOnAccountRef
{
    color:red;
    margin: 10px 0px;
    text-align:center;
}

.divPayOnAccountRef
{
    color:Black;
    font-weight:bold;
}

.divMeracPayOnAccountName, .divMeracPayOnAccountPIN {
	margin: 15px 0px;
}
/* END Account Invoice  */

/* START Slider */

.k3-slider-container {
    width: 80%;
    background: #c0c0c021;
    margin: 20px auto;
    border: 1px solid;
}

.k3-slider-container button {
    margin-right: initial;
}

.k3-slider-single {
    padding: 5px;
    background-color: #fff;
    margin: 5px;
    text-align:center;
    border:1px solid;
    border-radius:10px;
}

.k3-slider-single:hover, .k3-slider-single-link:hover {
    background-color: powderblue;
}

.k3-slider-single a {
    text-decoration:none;
    color:#000;
}

.k3-slider-container .slick-prev:before, .k3-slider-container .slick-next:before {
    color: cadetblue;
}

/* END Slider */

/* START Qty Textbox */

.k3_quantity-input {
    align-items: center;
    display: inline-flex;
    flex: 0 0 auto;
    gap: 10px;
}

.k3_decrement-btn, .k3increment-btn {
    align-items: center;
    background: #1b5d1a;
    box-shadow: none;
    border: 0;
    border-radius: 50%;
    cursor: pointer;
    display: flex;
    height: 25px;
    justify-content: center;
    padding: 0;
    width: 25px;
}

.k3_decrement-btn:disabled, .k3increment-btn:disabled {
    background: #ECEDEE;
    cursor: default;
}

.k3_decrement-btn svg, .k3increment-btn svg {
    height: 15px;
    width: 15px;
}

.k3_quantity {
    font-weight: 700;
    font-size: 18px;
    width: 24px;
    text-align: center;
}

/* END Qty Textbox */

/* Smartphones (portrait and landscape) */
@media only screen and (max-width: 767px) 
{

    .divLogin, .divNoLogin
    {
        width:100%;
    }    
    
    .divSpace
    {
        display:block;
    }    
    
    #divMeracGAMiniArrow
    {
        display:none;
    }
 
    .btnArrowForwardWithDonation
    {
        margin: 0 auto;
    }
 
    .btnArrowBackNoDonation, .btnArrowForwardWithDonation
    {
        float:none;   
        margin: 0 auto;
        display:block;                     
    }    
    
    .divPopupInnerBox
    {
        top:0%;
        transform: translate(-50%, 50%);
    }
    
}