.sbospecials-overlay{
	display:none;
	position:fixed;
	top:70px;
	left:0;
	right:0;
	bottom:0;
	background:rgba(255,255,255,1);
	z-index:10000;
}
.sbospecials-overlay.active{display:block;}

.sbospecials-modal{
	display:none;
	position:fixed;
	top:70px;
	left:0;
	right:0;
	max-width:37.5rem;
	margin-left:auto;
	margin-right:auto;
	height:var(--sbo-modal-h);
	z-index:10001;
	overflow:hidden;
	border-bottom-left-radius:1.375rem;
	border-bottom-right-radius:1.375rem;
	box-shadow:0 8px 8px rgba(0,0,0,0.15);
	transform:translateY(-100%);
	transition:transform 0.4s ease;
}
.sbospecials-modal.active{display:block;transform:translateY(0);}

.sbospecials-panel{
	height:100%;
	background:#ffffff;
	border-bottom-left-radius:1.375rem;
	border-bottom-right-radius:1.375rem;
	overflow:hidden;
	box-sizing:border-box;
	display:grid;
	grid-template-rows:1fr auto;
}

.sbospecials-body{
	overflow-y:auto;
	background:#ffffff;
	box-sizing:border-box;
}

.sbospecials-inner{
	max-width:37.5rem;
	margin:0 auto;
	padding:1rem 0.75rem 7.5rem 0.75rem;
	box-sizing:border-box;
}

.sbospecials-heading{
	margin:0 0 0.35rem 0;
	font-size:1.35rem;
	line-height:1.2;
	color:#333333;
}

.sbospecials-intro{
	margin:0 0 1rem 0;
	font-size:0.8125rem;
	line-height:1.5;
	color:#333333;
}

.sbospecials-grid{
	display:grid;
	grid-template-columns:1fr;
	column-gap:1.5rem;
	row-gap:1.5rem;
}
@media (min-width:37.5rem){
	.sbospecials-grid{grid-template-columns:1fr 1fr;}
}

.sbospecials-card{
	background:#ffffff;
	border:2px solid #cccccc;
	border-radius:8px;
	overflow:hidden;
	box-sizing:border-box;
	padding-bottom:1rem;
}

.sbospecials-badge{
	display:inline-block;
	max-width:55%;
	background:#df0911;
	color:#ffffff;
	text-transform:uppercase;
	text-align:center;
	padding:0.45rem;
	letter-spacing:0.03rem;
	box-sizing:border-box;
}

.sbospecials-leadin{
	padding:0.85rem 1rem 0.75rem 1rem;
	box-sizing:border-box;
}

.sbospecials-title{
	margin:0;
	font-size:1.15rem;
	line-height:1.2;
	color:#df0911;
}

.sbospecials-spec{
	margin:0.35rem 0 0 0;
	font-size:0.8125rem;
	line-height:1.4;
	color:#333333;
}

.sbospecials-card img{
	width:100%;
	height:auto;
	display:block;
}

.sbospecials-blurb{
	margin:0;
	padding:0.85rem 1rem 0 1rem;
	font-size:0.8125rem;
	line-height:1.5;
	color:#333333;
}

.sbospecials-price{
	margin:0;
	padding:0.75rem 1rem 0 1rem;
	font-size:1.25rem;
	line-height:1.2;
	color:#333333;
	text-align:right;
}

.sbospecials-pricesub{
	margin:0;
	padding:0.2rem 1rem 0 1rem;
	font-size:0.8125rem;
	line-height:1.4;
	color:#333333;
	text-align:right;
}

.sbospecials-actionrow{
	display:grid;
	grid-template-columns:1fr auto;
	align-items:center;
	padding:1rem 1rem 0 1rem;
	box-sizing:border-box;
}

.sbospecials-stars{
	justify-self:start;
	min-height:2.75rem;
	line-height:2.75rem;
	font-size:0.875rem;
}

.sbospecials-star{
	color:#ff9900;
	font-size:1.1rem;
}

.sbospecials-card .typicalbuttonred{
	display:block;
	width:fit-content;
	justify-self:end;
	margin:0;
}

.sbospecials-footer{
	position:relative;
	min-height:3.25rem;
	padding:0.55rem 1.25rem;
	border-top:1px solid #e0e0e0;
	background:#ffffff;
	box-sizing:border-box;
	display:grid;
	align-items:center;
}
.sbospecials-footlink{
	justify-self:start;
	min-height:2.75rem;
	line-height:2.75rem;
	padding-right:4rem;
	font-size:0.8125rem;
}
