/* ------------------------ */
/* nmx framework */
.nmx * {
	border: none;
    list-style: none;
    margin: 0;
    padding: 0;
}

.nmx *,
.nmx *:after,
.nmx *:before {
    box-sizing: border-box;
}

    /* ------------------------ */
    /* utilities */

        /* push */
        .nmx-pull-left { float: left !important }
        .nmx-pull-right { float: right !important }

        /* clean margins */
        .nmx-mb0 { margin-bottom: 0 !important; }
        .nmx-mt0 { margin-top: 0 !important; }
        .nmx-ml0 { margin-left: 0 !important; }
        .nmx-mr0 { margin-right: 0 !important; }

        /* clean paddings */
        .nmx-pb0 { padding-bottom: 0 !important; }
        .nmx-pt0 { padding-top: 0 !important; }
        .nmx-pl0 { padding-left: 0 !important; }
        .nmx-pr0 { padding-right: 0 !important; }

        /* text alignments */
        .nmx-tac { text-align: center !important; }
        .nmx-tar { text-align: right !important; }

        /* height */
        .nmx-ha { height: auto !important }

        /* hidden */
        .nmx-hidden,
        .hiddenField { display: none !important; }

        /* clearfix */
        .nmx-cf:before,
        .nmx-cf:after {
            content: " "; /* 1 */
            display: inline; /* 2 */
        }

        .nmx-cf:after {
            clear: both;
        }

        /* wrapper */
        .nmx-wrapper {
            max-width: 978px;
            margin: 0 auto;
        }

        @media screen and (max-width: 1008px) {
            .nmx-wrapper {
                margin-left: 15px;
                margin-right: 15px;
                width: auto;
            }
        }

        @media screen and (min-width: 1400px) {
            .nmx-wrapper {
                max-width: 1232px
            }
        }

		/* loading */
		.nmx-loading {
			z-index: 999999 !important;
			opacity: 1 !important;
			background: rgba(0, 0, 0, .5);
			position: fixed;
			left: 0;
			right: 0;
			top: 0;
			bottom: 0;
		}

			.nmx-loading:before {
				content: "";
				background: #fff url("../images/nmx-loading.svg") no-repeat center center;
				height: 50px;
				width: 50px;
				position: absolute;
				left: 0;
				right: 0;
				top: 0;
				bottom: 0;
				margin: auto;
			}

    /* typography */
    .nmx strong {
        font-weight: bold;
    }

	/* buttons */
	.nmx-buttons {
		margin-top: 21px;
	}

	.nmx-buttons + .nmx-buttons {
		margin-top: 12px;
	}

		.nmx-buttons a,
		.nmx-buttons span,
		.nmx [class*="cssButton"] {
			display: inline-block;
			vertical-align: middle;
		}

		.nmx [class*="cssButton"] {
			border: none;
			background: #333;
			color: #fff;
			cursor: pointer;
			font-family: inherit;
			font-size: 14px;
			height: 33px;
			line-height: 33px;
			margin: 0;
			padding: 0 12px;
			text-decoration: none;
			text-transform: none;
			width: auto !important;
		}

		.nmx [class*="cssButton"]:hover {
			opacity: 0.9;
		}

		.nmx-buttons a + a,
		.nmx-buttons a + span,
		.nmx-buttons a + [class*="cssButton"],
		.nmx-buttons span + a,
		.nmx-buttons span + span,
		.nmx-buttons span + [class*="cssButton"],
		.nmx-buttons [class*="cssButton"] + a,
		.nmx-buttons [class*="cssButton"] + span,
		.nmx-buttons [class*="cssButton"] + [class*="cssButton"] {
			margin-left: 9px;
		}


    /* ------------------------ */
    /* form */
    .nmx-form {
        display: block;
    }

        [class*="nmx-form-group"] {
            overflow: hidden;
            white-space: normal;
        }

        [class*="nmx-form-group"] + [class*="nmx-form-group"] {
            margin-top: 17px;
        }

        .nmx label {
            display: block;
            float: none;
            line-height: 100%;
            max-width: 100%;
            margin-bottom: 8px;
            width: auto;
            text-transform: lowercase;
        }

        .nmx label::first-letter {
            text-transform: uppercase;
        }

			.nmx label .alert {
				color: #a94442;
			}

        .nmx input,
        .nmx select,
        .nmx textarea,
        .nmx .nmx-form-control {
            background: #fff;
            border: 1px solid rgba(0, 0, 0, 0.3);
            display: block;
            height: 33px;
            font-family: inherit;
            overflow: hidden;
            margin: 0;
            padding: 6px 12px;
            width: 100%;
        }

        .nmx-col-12 input,
        .nmx-col-12 select,
        .nmx-col-12 textarea,
        .nmx-col-12 .nmx-form-control {
            max-width: none !important;
        }

        .nmx input,
        .nmx select {
            max-width: 254px;
        }

            @media only screen and (max-width: 415px) {
                .nmx input,
                .nmx select {
                    max-width: none;
                }
            }

        .nmx textarea {
            height: 100px;
            max-width: none;
        }

	/* ------------------------ */
    /* popup */
	.nmx-popalert {
		z-index: -1;
		opacity: 0;
		background: rgba(0, 0, 0, .5);
		position: fixed;
		left: 0;
		right: 0;
		top: 0;
		bottom: 0;
		transition: all .5s;
	}

	.nmx-popalert.is-active {
		opacity: 1;
		z-index: 9999;
	}

		.nmx-popalert .nmx-pop-content {
			background: #fff;
			border: 1px solid rgba(0, 0, 0, 0.1);
			padding: 21px;
			position: absolute;
			left: 0;
			right: 0;
			top: 50%;
			transform: translateY(-50%);
			margin: auto;
			max-width: 400px;
		}

	/* ------------------------ */
    /* messages */
	.nmx [class*="messageStack"] {
		font-size: 0.875em;
		padding: 15px;
		margin-bottom: 20px;
		border: 1px solid transparent;
	}

	.nmx [class*="messageStack"] + [class*="messageStack"] {
		margin-top: -10px;
	}

	.nmx .messageStackSuccess {
		color: #3c763d;
		background-color: #dff0d8;
		border-color: #d6e9c6;
	}

	.nmx .messageStackCaution {
		color: #31708f;
		background-color: #d9edf7;
		border-color: #bce8f1;
	}

	.messageStackError {
		color: #a94442;
		background-color: #f2dede;
		border-color: #ebccd1;
	}

	.nmx .messageStackWarning {
		color: #8a6d3b;
		background-color: #fcf8e3;
		border-color: #faebcc;
	}

		.nmx [class*="messageStack"]:before {
			display: none;
		}

/* products questions & answers */
@font-face {
  font-family: 'pqanmnfonts';
  src:
    url('../fonts/pqanmnfonts.ttf?9pqyk5') format('truetype'),
    url('../fonts/pqanmnfonts.woff?9pqyk5') format('woff'),
    url('../fonts/pqanmnfonts.svg?9pqyk5#pqanmnfonts') format('svg');
  font-weight: normal;
  font-style: normal;
}

[class^="nmx-qa-"], [class*=" nmx-qa-"] {
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: 'pqanmnfonts' !important;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;

  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.nmx-qa-icon-laugh:before {
  content: "\263b";
  font-size: 20px;
}
.nmx-qa-icon-knot:before {
  content: "\27B0";
  font-size: 20px;
}
.nmx-qa-icon-bulb:before {
  content: "\1F4A1";
}

.ask-answer {
	/* border-top: 1px solid rgba(0, 0, 0, 0.1); */
	/* margin-top: 45px; */
	padding-top: 5px;
}

.ask-answer h2 {
	font-size: 28px;
	margin-bottom: 21px;
}

.ask-answer textarea,
.ask-answer textarea#ask-question {
	width: 100% !important;
}

.questions-container {
	position: relative;
	overflow: hidden;
}

	#vote-answer-result-msg .messageStackError {
		display: none; /* just show first error message */
	}

	#vote-answer-result-msg .messageStackError:first-child {
		display: block;
	}

	/* list */
	.questions-list {
		list-style: none;
		margin-left: 0;
		/* prefix: 0; */
	}

	.questions-buttons + .questions-list {
		margin-top: 20px;
	}

		.questions-list li {
			border-bottom: 1px solid rgba(0, 0, 0, 0.1);
			padding: 27px 0 30px;
		}

		.questions-list li + li {
			margin-top: 0;
		}

		.questions-header {
			float: left;
			padding-right: 15px;
			width: 155px;
		}

		.questions-list .client-stars {
			display: block;
		}

		.questions-list .review-stars {
			font-size: 21px;
		}

		.questions-list .review-stars-off {
			letter-spacing: -4px;
			font-size: 24px;
		}

		/* user details */
		.questions-user-details span {
			display: inline-block;
			font-size: 14px;
			line-height: 100%;
			display: block;
		}

			.questions-user-details .questions-author {
				font-weight: bold;
				margin: 4px 0 5px;
			}

		.questions-list li .nmx-rating-wrap {
			margin-bottom: 0;
			margin-top: 0;
		}

		.questions-qa-mark {
			float: left;
			width: 29px;
		}

			.questions-answer .questions-qa-mark {
				font-weight: normal;
			}

		.questions-title {
			display: block;
			font-weight: bold;
			font-size: 18px;
			margin-bottom: 7px;
			margin-top: 0;
		}

		.questions-title.for-review {
			margin-top: -5px;
		}

		.questions-answer .questions-title {
			font-weight: normal;
		}

		.questions-comment,
		.questions-content {
			overflow: hidden;
			line-height: 1.5;
		}

			.questions-title,
			.questions-content {
				display: block;
				line-height: 1.5;
			}

	#js-tools-bottom {
		display: block;
	}

	.questions-list + .btn {
		margin-top: 30px;
	}

	.questions-helpful {
		margin-top: 18px;
		padding-left: 30px;
	}

		.questions-helpful > span {
			display: block;
			margin-bottom: 7px;
			font-size: 14px;
		}

		.questions-helpful [class*="cssButton"] {
			background: none;
			border: 1px solid rgba(0, 0, 0, 0.1);
			color: inherit;
		}

		.questions-helpful [class*="cssButton"]:focus,
		.questions-helpful [class*="cssButton"]:hover {
			background: none;
		}

			.questions-helpful [class*="icon-"] {
				position: relative;
				top: -2px;
			}

			.questions-helpful [class*="icon-bulb"] {
				color: #fd7705;
			}

			.questions-helpful [class*="icon-laugh"] {
				color: #1f8a70;
			}

			.questions-helpful [class*="icon-knot"] {
				color: #ea2e49;
			}

		.questions-helpful .js-number-votes {
			margin-left: 6px;
			color: #999999;
			vertical-align: top;
		}

/* no reviews message */
.write-review-wrapper.no-reviews {
	padding-top: 18px;
}

/* filters */
.product-section-filter {
	border: 1px solid rgba(0, 0, 0, 0.1);
	border-left: none;
	border-right: none;
	overflow: hidden;
	padding: 15px 0;
	margin-top: 10px;
}

.product-section-title + .product-section-filter {
	border-top: none;
	margin-top: 0;
	padding-top: 0;
}

	.product-section-filter *:not(a) {
		float: left;
		vertical-align: middle;
	}

	.product-section-filter * {
		height: 29px;
		line-height: 29px;
	}

	.product-section-filter span {
		font-size: 16px;
		font-weight: 700;
		margin-right: 20px;
		text-transform: uppercase;
	}

	.product-section-filter dl,
	.product-section-filter dd {
		margin: 0;
	}

		.product-section-filter dt,
		.product-section-filter dd a {
			padding: 0 15px;
		}

		.product-section-filter dt {
			border-radius: 7px 0 0 7px;
			background: none;
			font-size: 16px;
			font-weight: 700;
		}

		.product-section-filter dd a {
			border: 1px solid rgba(0, 0, 0, 0.1);
			display: block;
			color: inherit;
			font-size: 14px;
			line-height: 28px;
			text-decoration: none;
		}

		.product-section-filter dd a + a {
			border-left: none;
		}

		.product-section-filter dd a:hover {
			opacity: 0.9;
		}

		.product-section-filter dd .is-active {
			background: rgba(0, 0, 0, 0.05);
		}

/* ask question */
.nmx .ask-question {
	background: rgba(0, 0, 0, 0.02);
	border: 1px solid rgba(0, 0, 0, 0.1);
	padding: 28px;
	max-width: 606px;
	margin: 60px auto 0;
}

	.nmx .ask-question h3 {
		font-size: 28px;
		line-height: 100%;
		letter-spacing: 1px;
		margin-top: 0;
		margin-bottom: 20px;
	}

	.nmx .ask-question input[type="text"],
	.nmx .ask-question textarea {
		max-width: none;
	}

	.nmx .ask-question .g-recaptcha {
		margin-top: 10px;
		overflow: hidden;
	}

	.nmx .ask-question .messageStackError, .nmx .ask-question .messageStackSuccess{
		width: inherit !important;
	}

/* responsive */
@media only screen and (max-width: 600px) {
	.questions-header {
		float: none;
		width: auto;
		padding: 0;
	}

	.questions-list .questions-user-details {
		line-height: 100%;
	}

		.questions-user-details span {
			display: inline-block;
			line-height: 100%;
		}

		.questions-user-details span + span:before {
			content: '• ';
		}

	.product-section-filter span {
		float: none;
		display: block;
		line-height: 100%;
		height: auto;
		margin-bottom: 8px;
	}

	.product-section-filter dt,
	.product-section-filter dd a {
		padding-left: 9px;
		padding-right: 9px;
	}

	 .product-section-filter dt {
		 padding-left: 0;
	 }

	.nmx .ask-question {
		padding: 18px;
	}
}

@media only screen and (max-width: 480px) {
	.questions-helpful {
		padding-left: 0;
	}

		.questions-helpful [class*="cssButton"] {
			margin-left: 5px;
		}
}
