#cti_customer_login fieldset, #cti_guest_login fieldset, #cti_staff_login fieldset, #cti_create_account fieldset{
	min-height:360px !important;
}

div.pp_pic_holder {
	position: fixed !important;
	top: 10% !important;
}
#cti_customer_login, #cti_create_account {
}
#cti_adfs_login {
	height: 100%;
}

@media screen and (max-width: 768px)
{
	#cti_customer_login, #cti_create_account {
		width: 100%;
	}
}
input.phone-area-code, input.phone-one, input.phone-two, input[name=ext] {
	display: inline-block;
	width: 6em;
}

fieldset ul {
	list-style-type: none;
	padding: 0;
	margin: 0;
}
fieldset ul li {
	font-weight: normal;
	padding: 8px 0 0 0;
	margin: 0;
}
fieldset ul li label {
	display: block;
}
fieldset input {
	margin-left: 15px;
}
fieldset legend {
	font-weight: bold;
}

.cti_error, .cti_account_form_error, div#cti_error_message div {
	color: #8A1F11;
	background: #FBE3E4 url('/eSolution/images/no.png') no-repeat 2px 4px;
	border: 1px dotted #FBC2C4;
	padding-left: 20px;
	width: auto;
	line-height: 22px;
}

/*Basket*/
table.flashybasket {
	width: 98%;
}
form[name=shipping_form] fieldset select[name=shipping_profile] {
	width: 100%;
}
form[name=special_instructions] fieldset {
	width: 95%;
}

table.finalize {
	width: 100%;
}

form[name=special_instructions] fieldset textarea {
	width: 100%;
	height: 100%;
}
.buy_options .rent {
	background: #ccc url(/eSolution/images/loading.gif) no-repeat 2px 4px;
}
.flashybasket_td_3, .flashybasket_td_2 {
	padding: 2px;
}
.qty {
	width: 30px;
}
.small {
	font-size: 0.7em;
}
.remove {
	padding-top: 30px;
}
.flashybasket_td_1 {
	font-weight: bold;
	padding: 6px;
}
tr.first .flashybasket_td_1 {
	text-align: center;
}
div.cti_shoppingcart form {
	display: inline;
	margin: 0;
	padding: 0;
}

/*Checkout*/
ul.cti_checkout {
}
ul.cti_checkout li {
	text-align: center;
	min-width: 80px;
	border: 1px solid #ccc;
	margin: 1px;
	min-height: 25px;
	vertical-align: middle;
	display: inline-block;
	list-style: none;
	padding: 5px 0 0 0;
}
ul.cti_checkout li a {
	font-weight: bold;
}
li.selected {
	font-weight: bold;
}

/*Search*/
a.details_link, a.larger_image_link {
	float:right;
	clear:right;
}

a.details_link {
}

div.search_item {
	margin: 15px 0 0 0;
	border: 1px solid #ccc;
	border-radius: 4px;
	padding: 10px 10px 0px 10px;
}


/*Item*/
@media screen and (min-width: 950px) {
	div#item_image_wrapper {
		/*margin-left: -80px !important;*/
	}
	div.item_data {
		/*margin-right: -80px !important;*/
	}
}
div#item_image_wrapper
{
	float: left;
	/*max-width: 450px;*/
	border: 1px #ccc solid;
	border-radius: .25rem;
	padding: 2px;
	margin-right: 15px;
}
.item_title {
	float: left;
}

/*shipping rates admin*/

input[name=ship_desc] {
	width: 250px;
}

select[name=ship_key] {
	width: 100%;
}


.phone-area-code{
    margin-right:10px;
    width:50px;
}

.phone-one{
    width:50px;
}

.phone-two{
    width:80px;
}

.phone-ext{
    width:50px;
}

.label-ext{
    width:20px;
}

@media print{

        .show-for-print{
                display:block;
        }

        .hide-for-print{
                display:none;
        }

}

table.finalize table {
	width: 100%;
}

.regular-price {
	text-decoration:line-through;
}

.discount-price {
	font-weight:bolder;
	font-size:110%;
	color:#ff0000;
}

.menu-spacing
{
    display:inline-block;
    width:30px;
    height:1px;

}

.menu-item-container{
	margin:0 auto;
	width:40px;
	height:40px;
	border:2px solid #008cba;
	border-radius:4px;
}

.menu-item-container:hover{
	background-color:#008cba;
	color:#fff !important;
}

.menu-item-container:hover .menu-item{
	color:#fff !important;
}

.menu-item{
	color:#008cba;
}


/* -------------------------------------
    ALERTS
    Change the class depending on warning email, good email or bad email
------------------------------------- */
.alert,.success {
  font-size: 16px;
  color: #fff;
  font-weight: 500;
  padding: 20px;
  text-align: center;
  border-radius: 3px 3px 0 0;
}

.alert {
  background-color: #D0021B;
}

.success {
  background-color: #68B90F;
}


/* ALIGNED INPUTS */
label.cti-shipping-label{
	width:160px;
}

input.cti-field-input,select.cti-field-input{
	min-width:100px;
	width:40%;
}


#cti-buy-form-wrapper {
    position: fixed; /* Changed from fixed to absolute */
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%); /* Centering the modal */
    width: 45%; /* One-third of the viewport on large displays */
    background-color: #eeeeee;
    box-shadow: 0px 0px 10px rgba(0,0,0,0.5); /* Adding some shadow for better visibility */
    z-index: 1050; /* Ensuring it's above other content */
    display:none;
    padding: 15px;
}

@media (max-width: 768px) {
    #cti-buy-form-wrapper {
        position: fixed;
        padding-top: 100px;
        width: 100%;
        height: 100%;
        top: 0;
        left: 0;
        transform: none; /* Resetting transform for full coverage */
    }
}
#cti-buy-form-wrapper #cti-buy-form {
    width: 95%;
}
#cti-buy-form-wrapper .modal-header {
    position: relative; /* Ensure positioning context */
}

#cti-buy-form-wrapper .cti-buy-form-close {
    position: absolute;
    right: 10px; /* Adjust as needed */
}

#cti-buy-form-wrapper .cti-buy-form-close {
    cursor: pointer; /* Making it clear it's clickable */
}

#cti-buy-form-wrapper .modal-dialog, #cti-buy-form-wrapper .modal-content {
    height: 100%; /* Ensure full height */
}

#cti-buy-form-wrapper .modal-header {
    border-bottom: 1px solid #ddd; /* A subtle separator */
}

#cti-buy-form-wrapper .modal-body {
    overflow-y: auto; /* In case the content overflows */
}

/* CTI loading bar, not to be confused with the upcoming progress bar */
#cti-loading-bar{
	position:fixed;
	text-align:center;
	left:0;
	right:0;
	top:30%;
}

/* Font Awesome - Extra Sizes */
.fa-5x{
	font-size:5em !important;
}

.fa-6x{
	font-size:6em !important;
}

.fa-7x{
	font-size:7em !important;
}

.d-none {
	display: none;
}
.esolution-accordion.accordion-header {
	font-size:17px;
	font-weight: bold;
}
.esolution-accordion.collapsible.card-header {
	padding-top: 17px!important;
	padding-left: 10px;
	height: 53px;
	background-color: #f9f0d3;
	border-bottom: 1px solid rgba(0,0,0,.125);
}
.esolution-accordion.collapsible.card-header:hover {
	background-color: #f9f0d3;
}
.esolution-accordion.content {
  padding: 0 18px;
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.2s ease-out;
}
.esolution-accordion.collapsible.card-header:after {
  	content: '\025B2'; /* Unicode character for triangle (up) */
  	font-size: 25px;
  	color: #f3aaa3;
  	float: right;
  	margin-left: 5px;
	margin-top:-34px
}

.esolution-accordion.collapsible.card-header.active:after {
  	content: "\025BC"; /* Unicode character for triangle (down) */
  	font-size: 25px;
  	color: #f3aaa3;
  	float: right;
  	margin-left: 5px;
	margin-top:-34px
}
