/* 
Theme Name: Sage Retail
Author: Sage Retail
Template: hello-elementor
Version: 2.0.0
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

/* Add your custom styles here */


header .elementor-sticky {
    box-shadow: 0px 3px 6px #00000029;
}

.row-direction {
	flex-direction: row;
	display: flex;
}

.filters {
	flex: 0 0 250px; 
	max-width: 250px; 
	min-width: 250px; 
	width: 250px;
	margin-right: 16px;
}

.filters a.clearfilters {
	font-size: 13px;
	color: #1F1F1F;
	text-decoration: underline;
}

.filters label {
	display: block;
	margin: 16px 0;
	font-size: 13px;
	position: relative;
}
.filters input {
	margin-right: 8px;
}

.section-headline {
	border-bottom: 1px solid rgba(0, 0, 0, 0.06);
	margin: 16px 0 5px 0;
	position: relative;
	cursor: pointer;	
}

.section-headline span {
	position: absolute;
	right: 0;
}

.card-appliance {
	display: block;
	position: relative; 
	padding-bottom: 20px;
	width: 100%;
}

.ribbon {
  width: 70px;
  height: 75px;
  overflow: hidden;
  position: absolute;
  top: -5px;
  right: -5px;
  background-image: url('images/redribbon.png');
}

.ribbon p {
  position: absolute;
  display: block;
  width: 70px;
  padding: 10px 0;
  color: #fff;
  font: 700 22px/1.1 'Lato', sans-serif;
  text-shadow: 0 1px 1px rgba(0,0,0,.2);
  text-transform: uppercase;
  text-align: center;
}

.ribbon span {
	font-weight: normal;
	display: block;
}

/* SINKS */

.card-option {
	position: relative;
	border: 1px solid #CCCCCC;
	font-size: 13px;
	height: 220px;
	width: calc((98% - 20px) / 3);  /* Total width minus gap, divided by 3 */
	display: inline-block;
	margin: 5px;
	padding: 0;
}

.card-option img {
	max-height: 180px;
	margin: auto;
	display: block;
	padding: 10px;
}

.card-option .option-opt {
	padding: 5px 15px;
	position: absolute;
	width: 100%;
	bottom: 0;
	font-weight: 600;
	background: #1E1E1EB3 0% 0% no-repeat padding-box;
	opacity: .8;
}

.card-option .option-opt .name {
	font-size: 14px;
	color: #fff;
	font-weight: 600;
	text-align: center;
	display: block;
}

/* COUNTERTOP COLORS */

.card-color {
	position: relative;
	border: 1px solid #CCCCCC;
	font-size: 13px;
	height: 182px;
	width: calc((98% - 20px) / 3);  /* Total width minus gap, divided by 3 */
	display: inline-block;
	margin: 5px;
	padding: 0;
}

.card-color .color-opt {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	padding: 5px 15px;
	position: absolute;
	width: 100%;
	bottom: 0;
	font-weight: 600;
	background: #1E1E1EB3 0% 0% no-repeat padding-box;
	opacity: .8;
}

.card-color .color-opt .product {
	font-size: 14px;
	color: #fff;
}

.card-color .color-opt .color {
	font-size: 16px;
	color: #fff;
	font-weight: 600;
	text-align: center;
}

.card-color .color-opt .colorized-icon {
	text-align: right;

}

.card-color .color-opt .colorized-icon a {
	padding: .25rem;
	cursor: pointer;
}

.card-color .color-opt > div {
	width: 33%;
	flex-grow: 1;
}

.card-color .swatchImageUrl {
	height: 180px;
	background-repeat: no-repeat;
	background-size: cover;
	width: 100%;
}



/* The Modal (background) */
.modal {
  display: none;
  position: fixed;
  z-index: 1;
  padding-top: 100px;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  overflow: auto;
  background-color: black;
}

.modal .img-column {
  	background: #1E1E1E 0% 0% no-repeat padding-box;
	position: relative;
	width: 100%;
	text-align: right;
}

.modal .img-column .icons {
	width: 120px;
	height: 120px;
	background: #787C85;
	background: radial-gradient(circle,rgba(120, 124, 133, 1) 0%, rgba(51, 56, 66, 1) 100%);	
	border-radius: 60px;
	text-align: center;
	padding: 20px;
	margin-top: -60px;
	margin-right: 10px;
	margin-bottom: 10px;
	display: inline-block;
}

.modal .img-column .active {
	background: #787C85;
	background: radial-gradient(circle,rgba(120, 124, 133, 1) 0%, rgba(151, 153, 155, 1) 100%);
	border: 4px solid #E1E1E1;
}

/* Modal Content */
.modal-content {
  position: relative;
  background-color: #fefefe;
  margin: auto;
  padding: 0;
  width: 90%;
  max-width: 1200px;
}

/* The Close Button */
.close {
  color: #000;
  position: absolute;
  top: 10px;
  right: 25px;
  font-size: 35px;
  font-weight: bold;
}

.close:hover,
.close:focus {
  color: #999;
  text-decoration: none;
  cursor: pointer;
}

.slide {
  display: none;
  width: 100%;
  min-height: 600px;
}

.cursor {
  cursor: pointer;
}

/* Next & previous buttons */
.prev,
.next {
	cursor: pointer;
	position: absolute;
	top: 50%;
	width: auto;
	margin-top: -50px;
	font-size: 20px;
	transition: 0.6s ease;
	border-radius: 24px;
	width: 48px;
	height: 48px;
	user-select: none;
	-webkit-user-select: none;
	background: #1E1E1E40 0% 0% no-repeat padding-box;
	border: 2px solid #FFFFFF;
	color: #fff !important;
	text-align: center;
	padding-top: 6px;
	margin: 0 10px;
}

/* Position the "next button" to the right */
.next {
  right: 0;
}

/* On hover, add a black background color with a little bit see-through */
.prev:hover,
.next:hover {
  background-color: #1E1E1E80;
}

.caption-container {
  text-align: left;
  background-color: #fff;
  padding: 10px 16px;
  position: relative;
  width: 100%;
}

.caption-container p {
	font-size: 16px;
	margin: 0;
	padding: 0;
}
.caption-container p span {
	font-size: 20px;
	display: block;
}

img.hover-shadow {
  transition: 0.3s;
}

.hover-shadow:hover {
  box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);
}

/* Add this attribute to the element that needs a tooltip */
[data-tooltip] {
	position: relative;
	z-index: 2;
	cursor: pointer;
  }

/* Hide the tooltip content by default */
[data-tooltip]:before,
[data-tooltip]:after {
visibility: hidden;
-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
filter: progid: DXImageTransform.Microsoft.Alpha(Opacity=0);
opacity: 0;
pointer-events: none;
}

/* Position tooltip above the element */
[data-tooltip]:before {
position: absolute;
bottom: 150%;
left: 50%;
margin-bottom: 5px;
margin-left: -80px;
padding: 7px;
width: 160px;
-webkit-border-radius: 3px;
-moz-border-radius: 3px;
border-radius: 3px;
background-color: #000;
background-color: hsla(0, 0%, 20%, 0.9);
color: #fff;
content: attr(data-tooltip);
text-align: center;
font-size: 14px;
line-height: 1.2;
}

/* Triangle hack to make tooltip look like a speech bubble */
[data-tooltip]:after {
position: absolute;
bottom: 150%;
left: 50%;
margin-left: -5px;
width: 0;
border-top: 5px solid #000;
border-top: 5px solid hsla(0, 0%, 20%, 0.9);
border-right: 5px solid transparent;
border-left: 5px solid transparent;
content: " ";
font-size: 0;
line-height: 0;
}

/* Show tooltip content on hover */
[data-tooltip]:hover:before,
[data-tooltip]:hover:after {
visibility: visible;
-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
filter: progid: DXImageTransform.Microsoft.Alpha(Opacity=100);
opacity: 1;
}

table.comparison {
	text-align: left;
}

table.comparison td {
	border: #efefef 4px solid;
}

table.comparison tbody > tr > td, table.comparison tbody > tr > th {
	background: none !important;
}

table.comparison td.blue {
	background: #012169 !important;
	color: #fff;
	font-weight: 600;
	text-align: center;
	text-transform: uppercase;
	font-size: 16px;
}

table.comparison td.blue img {
	padding: 15px 0 25px 0;
	display: block;
	margin: auto;
	max-height: 90px;
}

table.comparison td.blue-lrg {
	background: #012169 !important;
	color: #fff;
	font-weight: 600;
	font-size: 30px;
	max-width: 200px;
}

table.comparison .product {
	font-size: 16px;
	font-weight: 600;
}

.stars {
	text-align: center;
}

.quiz-container {
    margin: 60px auto;
}

.quiz-container .elementor-divider {
    border-top: solid var( --e-global-color-accent ) 4px;
    display: flex;
    text-align: left;
    width: 105px;
    margin-bottom: 60px;
}

.quiz-container .section-top,
.quiz-container .section-results {
    display: flex;
    flex-flow: row;
    align-items: center
}

.quiz-container .colone,
.quiz-container .coltwo {
    width: 100%;
}

.quiz-container .form {
    border-top: 1px solid #97999B;
    margin-top: 40px;
    padding-top: 60px;
    display: flex;
    gap: 10px;
}

.quiz-container .steptwo {
    border-top: 1px solid #97999B;
    margin-top: 40px;
    padding-top: 60px;
}

.quiz-container .colone label {
    background: #FFFFFF 0% 0% no-repeat padding-box;
    box-shadow: 0px 3px 8px #0000000F;
    border: 1px solid #CCCCCC;
    border-radius: 4px;
    color: #707070;
    font-size: 18px;
    padding: 20px;
    width: 300px;
    display: block;
    margin-top: 20px;
}

.quiz-container .colone label:hover {
    border: 1px solid #A5551C;
}

.quiz-container .colone input {
    margin-right: 20px;
}

.quiz-container .form input {
    display: block;
    text-align: center;
    margin: 14px auto;
}

.quiz-container .form div {
    border: solid 1px #DEDEDE;
    box-shadow: 10px 10px 10px #00000014;
    background: #fff;
    cursor: pointer;
}

.quiz-container .form div label {
    cursor: pointer;
}

.quiz-container p.title {
    font-size: 60px;
    font-weight: normal;
    text-transform: uppercase;
    margin: 0px;
    padding: 0px;
}

.quiz-container p.spacing {
    margin-bottom: 60px;
}

.quiz-container .cabinets img {
    border-bottom: solid 1px #DEDEDE;

}

.quiz-container img.kitchen {
    border-radius: 8px;
}

.quiz-container .form div:hover {
    background: #F5F5F5
}


.quiz-container .coltwo {
    text-align: right;
}

.quiz-container .elementor-button {
    background-color: #FFFFFF2E;
    fill: var( --e-global-color-accent );
    color: var( --e-global-color-accent );
    border-style: solid;
    border-width: 2px 2px 2px 2px;
    border-color: var( --e-global-color-accent );
    font-weight: 600;
}

.quiz-container p.steps {
    font-size: 20px;
}
.quiz-container p.question {
    font-size: 28px;
    font-weight: 600;
}

@media screen and (max-width: 1254px) {
	.card-color, .card-option {
		width: calc((98% - 20px) / 2); 
	}
}

@media screen and (max-width: 767px) {
	aside.filters {
		display:none;
	}

	.modal .img-column .icons {
		width: 80px;
		height: 80px;
		border-radius: 40px;
		padding: 20px;
		margin-top: -40px;
	}

	.card-color .color-opt {
		display: block;
	}
	.card-color .color-opt > div {
		width: 100%;
	}
	.card-color .color-opt .color {
		font-size: 14px;
		font-weight: normal;
		text-align: left;
	}
	.card-color .color-opt .colorized-icon {
		text-align: left;
	}
}


