#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 collapsible */

.accordion:has(.esolution-accordion) {
	border: none !important;
}
.accordion .card:has(.esolution-accordion) {
	border: none !important;
	margin-top: 0px !important;
	margin-bottom: 0.25rem;
}
.esolution-accordion {
	color: #212529;
}
.esolution-accordion.card-header {
	padding: 1rem;
	background-color: #343a40;
	display: flex;
	align-items: center;
	justify-content: space-between; /* Both the "header" and the "caret" are display block. */
	color: #ffffff;
}
.esolution-accordion.card-header:hover {
	cursor: pointer;
}
.esolution-accordion.card-header::after {
	content: '\02BC8'; /* unicode character for triangle right */
	font-size: 1rem;
}
.esolution-accordion.card-header.active::after {
	content: "\02BC6"; /* unicode character for triangle down */
}
.esolution-accordion.card-header > .esolution-accordion.accordion-header {
	/* e.g. <h2 class="esolution-accordion accordion-header">Header</h2> */
	font-size: 1rem;
	font-weight: bold;
	margin-bottom: 0; /* Removes margin from header tags. */
	color: #ffffff;
}
.esolution-accordion.content {
	border: 1px solid #343a40;
	/*display: none;*/ /* Using max-height vs display to have transition. */
	max-height: 0; /* All accordion content is not to be displayed initially. */
	overflow-y: hidden;
	overflow-x: auto; /* A horizontal scrollbar may be required. */
	transition: max-height 0.5s ease;
}
.esolution-accordion.content > .esolution-accordion.card-body {
	/* e.g. <div class="esolution-accordion card-body">Content</div> */
	padding: 1rem;
}
