body,
input,
select,
textarea,
td,
div,
a,
p,
span {
    font-family: "Roboto", sans-serif;
    line-height: 1.2em;
    font-size: 12.5px;
    color: #000;
    font-weight: 400;
    max-height: 1000000px;
    -moz-box-sizing: content-box;
    box-sizing: content-box
}

body {
    background-color: #fff;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    margin: 0;
    padding: 0;
}

select,
input,
textarea {
    margin: 2px;
    padding: 4px;
    border: 1px solid #c5c5c5;
}

select {
    margin: 2px;
    padding: 3px;
    border: 1px solid #c5c5c5;
}

input[type=checkbox],
input[type=radio] {
    position: relative;
    vertical-align: middle;
    bottom: 1px;
}

a {
    outline: none;
}

p {
    padding: 0;
    margin: 0;
}

sup,
sub {
    vertical-align: baseline;
    position: relative;
    font-family: Arial;
}

sup {
    bottom: .8ex;
    font-size: .8em;
}

sub {
    top: .5ex;
}

header {
    position: relative;
    display: block;
}

header.section-header {
    padding: 8px 0;
    border-bottom: 1px solid #c5c5c5;
    margin: 30px 0 15px;
}

header.section-header h1.header,
header.section-header h2.header,
header.section-header h3.header,
header.section-header h4.header {
    font-weight: 400;
    padding: 0;
    margin: 0;
    line-height: 140%;
    font-size: 16px;
}

header.section-header h1.subheader,
header.section-header h2.subheader,
header.section-header h3.subheader,
header.section-header h4.subheader {
    font-weight: 400;
    padding: 0;
    margin: 0;
    line-height: 140%;
    color: #777;
    font-size: 11px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

footer {
    display: block;
    width: 980px;
    margin: 80px auto 160px;
    padding: 0 10px;
}

footer * {
    font-size: 11px;
}

footer .thank-you {
    text-align: center;
}

footer .disclaimer {
    margin-top: 12px;
    text-align: center;
}

footer .social {
    margin-top: 16px;
}

footer .links {
    text-align: center;
    margin-top: 16px;
}

footer .links * {
    color: #777;
}

h1 {
    font-weight: 400;
    padding: 0;
    margin: 0;
    line-height: 120%;
    font-size: 16px;
    padding: 12px 0 12px 0;
}

nav {
    text-align: right;
    margin-top: 10px;
    overflow-y: hidden;
}




/* placeholders */

::-webkit-input-placeholder {
    color: #555;
    opacity: 1;
}

::-moz-placeholder {
    color: #555;
    opacity: 1;
}

::-ms-input-placeholder {
    color: #555;
    opacity: 1;
}

::placeholder {
    color: #555;
    opacity: 1;
}




/* id */

#header-container {
    width: 100%;
    height: 70px;
    background-color: #f5f5f5;
    margin-top: 40px;
}

#header {
    position: relative;
    width: 980px;
    height: 70px;
    padding: 0 10px;
    background-color: #f5f5f5;
    margin-left: auto;
    margin-right: auto;
}

#header #logo {
    position: absolute;
    z-index: 1000;
    left: 10px;
    top: 19px;
    width: 260px;
    height: 33px;
    background: url(../images/ui/logo.svg) top left no-repeat;
    opacity: .8;
    cursor: pointer;
}

#header #social-follow {
    position: absolute;
    display: block;
    top: 27px;
    right: 280px;
}

#header #device-finder {
    position: absolute;
    display: block;
    right: 226px;
    top: 27px;
    width: 16px;
    height: 16px;
    background: url(../images/ui/device_finder.svg) left top no-repeat;
    opacity: .3;
}

#header #search {
    position: absolute;
    right: 10px;
    top: 21px;
    width: 200px;
    z-index: 10;
}

#header #language-flags {
    position: absolute;
    right: 10px;
    top: -25px;
    height: 11px;
}

#header #language-flags a {
    width: 16px;
    height: 11px;
    display: block;
    float: left;
    margin-left: 4px;
}

#header #language-flags a.en {
    background: url(../images/ui/flag_en.svg) 0 0 no-repeat;
}

#header #language-flags a.de {
    background: url(../images/ui/flag_de.svg) 0 0 no-repeat;
}

#header #language-flags a.es {
    background: url(../images/ui/flag_es.svg) 0 0 no-repeat;
}

#header #language-flags a.fr {
    background: url(../images/ui/flag_fr.svg) 0 0 no-repeat;
}

#header #language-flags a.it {
    background: url(../images/ui/flag_it.svg) 0 0 no-repeat;
}

#header #language-flags a.ru {
    background: url(../images/ui/flag_ru.svg) 0 0 no-repeat;
}

#header #language-flags a.bg {
    background: url(../images/ui/flag_bg.svg) 0 0 no-repeat;
}

#header #language-flags a.tr {
    background: url(../images/ui/flag_tr.svg) 0 0 no-repeat;
}





#comparison {
    position: fixed;
    bottom: -1px;
    right: 70px;
    width: 580px;
    margin-left: auto;
    margin-right: auto;
    z-index: 10050;
    height: 0;
    border-top-left-radius: 5px;
    border-top-right-radius: 5px;
    border-left: 1px solid #c5c5c5;
    border-top: 1px solid #c5c5c5;
    border-right: 1px solid #c5c5c5;
    background: #fff;
    background: -moz-linear-gradient(top, rgba(255, 255, 255, 1) 0%, rgba(249, 249, 249, 1) 100%);
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, rgba(255, 255, 255, 1)), color-stop(100%, rgba(249, 249, 249, 1)));
    background: -webkit-linear-gradient(top, rgba(255, 255, 255, 1) 0%, rgba(249, 249, 249, 1) 100%);
    background: -o-linear-gradient(top, rgba(255, 255, 255, 1) 0%, rgba(249, 249, 249, 1) 100%);
    background: -ms-linear-gradient(top, rgba(255, 255, 255, 1) 0%, rgba(249, 249, 249, 1) 100%);
    background: linear-gradient(to bottom, rgba(255, 255, 255, 1) 0%, rgba(249, 249, 249, 1) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffff', endColorstr='#f9f9f9', GradientType=0);
    -moz-box-shadow: 0 0 5px #aaa;
    -webkit-box-shadow: 0 0 5px #aaa;
    box-shadow: 0 0 5px #aaa;
    -webkit-transition: height .6s ease-out;
    -moz-transition: height .6s ease-out;
    -ms-transition: height .6s ease-out;
    -o-transition: height .6s ease-out;
    transition: height .6s ease-out;
}

#comparison.visible {
    bottom: 0;
    height: 180px;
}

#comparison > div.icon-button {
    position: absolute;
    right: 4px;
    top: 4px;
}

#comparison > div.comparison-container {
    padding: 15px;
}

#comparison a.comparison-button {
    position: absolute;
    right: 7px;
    top: 145px;
}





#tooltip {
    position: absolute;
    z-index: 2000;
    border-radius: 5px;
    border: 1px solid #c5c5c5;
    background-color: #fff;
    padding: 8px;
    font-size: 11px;
    white-space: nowrap;
    background: #fff;
    background: -moz-linear-gradient(top, rgba(255, 255, 255, 1) 0%, rgba(249, 249, 249, 1) 100%);
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, rgba(255, 255, 255, 1)), color-stop(100%, rgba(249, 249, 249, 1)));
    background: -webkit-linear-gradient(top, rgba(255, 255, 255, 1) 0%, rgba(249, 249, 249, 1) 100%);
    background: -o-linear-gradient(top, rgba(255, 255, 255, 1) 0%, rgba(249, 249, 249, 1) 100%);
    background: -ms-linear-gradient(top, rgba(255, 255, 255, 1) 0%, rgba(249, 249, 249, 1) 100%);
    background: linear-gradient(to bottom, rgba(255, 255, 255, 1) 0%, rgba(249, 249, 249, 1) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffff', endColorstr='#f9f9f9', GradientType=0);
    -moz-box-shadow: 0 0 5px #aaa;
    -webkit-box-shadow: 0 0 5px #aaa;
    box-shadow: 0 0 5px #aaa;
    -webkit-transition: opacity .4s ease-in-out, z-index .4s ease-in-out;
    -moz-transition: opacity .4s ease-in-out, z-index .4s ease-in-out;
    -ms-transition: opacity .4s ease-in-out, z-index .4s ease-in-out;
    -o-transition: opacity .4s ease-in-out, z-index .4s ease-in-out;
    transition: opacity .4s ease-in-out, z-index .4s ease-in-out;
}

#main {
    width: 980px;
    padding: 0 10px;
    margin-left: auto;
    margin-right: auto;
}




/* frontpage */

#frontpage-left-column {
    float: left;
    overflow: hidden;
    width: 510px;
    margin-right: 30px;
}

#frontpage-right-column {
    float: left;
    overflow: hidden;
    width: 440px;
}




/* model */

#model-image {
    float: left;
    width: 320px;
    height: 320px;
    position: relative;
    overflow: hidden;
    background-repeat: no-repeat;
    background-size: 320px 320px;
}

#model-brief-specifications {
    float: left;
    width: auto;
    margin-left: 20px;
    height: 320px;
}




/* model - prices and review label */

#model-image a.prices,
#model-image a.review {
    display: block;
    position: absolute;
    z-index: 1000;
    left: 0;
    width: 130px;
    height: 30px;
    opacity: .9;
}

#model-image a.prices > div:nth-child(1),
#model-image a.review > div:nth-child(1) {
    float: right;
    width: 30px;
    border-top: 15px solid transparent;
    border-bottom: 15px solid transparent;
}

#model-image a.prices > div:nth-child(2),
#model-image a.review > div:nth-child(2) {
    float: right;
    width: 80px;
    height: 30px;
    text-align: center;
    font-size: 13px;
    font-weight: 700;
    line-height: 29px;
    border-top-left-radius: 4px;
    border-bottom-left-radius: 4px;
}

#model-image a.prices {
    top: 20px;
}

#model-image a.prices > div:nth-child(1) {
    border-left: 15px solid #8c4;
}

#model-image a.prices > div:nth-child(2) {
    background-color: #8c4;
}

#model-image a.review {
    top: 60px;
}

#model-image a.review > div:nth-child(1) {
    border-left: 15px solid #eb4;
}

#model-image a.review > div:nth-child(2) {
    background-color: #eb4;
}




/* model - unconfirmed specifications */

#model-image div.unconfirmed-specifications {
    position: absolute;
    z-index: 1000;
    bottom: 10px;
    left: calc(50% - 140px);
    width: 280px;
    height: 30px;
    line-height: 30px;
    opacity: 0.9;
    background-color: #ff6600;
    border-radius: 4px;
    text-align: center;
    font-weight: bold;
}




/* brand listing container */

.brand-listing-container-frontpage {
    -webkit-columns: auto 4;
    -moz-columns: auto 4;
    columns: 4 auto;
}

.brand-listing-container-frontpage a {
    display: block;
}

.brand-listing-container-news {
    -webkit-columns: auto 10;
    -moz-columns: auto 10;
    columns: 10 auto;
}

.brand-listing-container-news a {
    display: block;
}




/* lazy image loader */

.lazy-image-loader {
    opacity: 0;
    -webkit-transition: opacity .3s ease-in-out;
    -moz-transition: opacity .3s ease-in-out;
    -ms-transition: opacity .3s ease-in-out;
    -o-transition: opacity .3s ease-in-out;
    transition: opacity .3s ease-in-out;
}




/* system messages */

.message-red {
    padding: 40px;
    border: 1px solid #ecc;
    border-radius: 4px;
    background-color: #fffaf7;
    text-align: center;
}

.message-green {
    padding: 40px;
    border: 1px solid #cdc;
    border-radius: 4px;
    background-color: #fafff9;
    text-align: center;
}




/* chart table */

table.chart-table {
    width: 100%;
    border-collapse: collapse;
}

table.chart-table tr td {
    padding: 0 0 0 6px;
    line-height: 40px;
}

table.chart-table tr td:first-child {
    width: 33%;
    text-align: right;
    padding: 2px 8px 2px 0;
    border-right: 1px solid #ddd;
}

table.chart-table tr td:first-child div.image {
    float: right;
    display: block;
    width: 40px;
    height: 40px;
    margin-left: 6px;
    background-size: 40px 40px;
    background-repeat: no-repeat;
    background-position: top left;
}

table.chart-table tr td:first-child div.name {
    float: right;
    display: block;
    height: 40px;
    line-height: 40px;
    max-width: 200px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

table.chart-table tr td:not(:first-child) div {
    float: left;
    height: 26px;
    margin: 6px 6px 0 0;
}

table.chart-table tr td .model-chart-bar-gray,
table.chart-table tr td .model-chart-bar-green,
table.chart-table tr td .model-chart-bar-red {
    margin: 1px;
    border-top-right-radius: 4px;
    border-bottom-right-radius: 4px;
}

table.chart-table tr td .model-chart-bar-gray {
    background-color: #ddd;
}

table.chart-table tr td .model-chart-bar-green {
    background-color: #7ebe6a;
}

table.chart-table tr td .model-chart-bar-red {
    background-color: #ff8664;
}




/* UI icons */

.icon-arrows {
    width: 16px;
    height: 16px;
    background: url(../images/ui/arrows.svg) left top no-repeat;
    cursor: pointer;
    -webkit-filter: grayscale(100%);
    filter: grayscale(100%) brightness(80%);
}

.icon-arrows:hover {
    filter: none;
}

.icon-x {
    width: 16px;
    height: 16px;
    background: url(../images/ui/x.svg) no-repeat center center;
    background-size: 10px 10px;
    cursor: pointer;
    opacity: .5;
}

.icon-x:hover {
    opacity: .8;
}

.icon-arrow-triangle {
    width: 16px;
    height: 16px;
    background: url(../images/ui/arrow_triangle.svg) no-repeat center center;
    background-size: 10px 10px;
    cursor: pointer;
    opacity: .5;
}

.icon-arrow-triangle:hover {
    opacity: .8;
}




/* model information table */

table.model-information-table {
    border-collapse: collapse;
    margin-left: 20px;
    width: -moz-calc(100% - 20px);
    width: -webkit-calc(100% - 20px);
    width: -o-calc(100% - 20px);
    width: calc(100% - 20px);
}

table.model-information-table tr {
    border-top: 1px solid #e8e8e8;
}

table.model-information-table tr td:first-child {
    width: 286px;
    vertical-align: middle;
    padding: 8px 8px 8px 26px;
    border-right: 1px solid #e8e8e8;
}

table.model-information-table tr td:first-child p {
    font-size: 11px;
    color: #777;
    padding-top: 8px;
}

table.model-information-table tr td:not(:first-child) {
    padding: 5px;
}

table.model-information-table tr:first-child {
    border-top: 0;
}




/* table row mouseover selection */

table.row-selection tr:hover {
    background: #fff9e0;
}

table.row-selection tr:hover td:last-child {
    background: #fff9e0;
    background: -moz-linear-gradient(left, rgba(255, 249, 224, 1) 0%, rgba(255, 249, 224, 1) 61%, rgba(255, 255, 255, 1) 100%);
    background: -webkit-gradient(linear, left top, right top, color-stop(0%, rgba(255, 249, 224, 1)), color-stop(61%, rgba(255, 249, 224, 1)), color-stop(100%, rgba(255, 255, 255, 1)));
    background: -webkit-linear-gradient(left, rgba(255, 249, 224, 1) 0%, rgba(255, 249, 224, 1) 61%, rgba(255, 255, 255, 1) 100%);
    background: -o-linear-gradient(left, rgba(255, 249, 224, 1) 0%, rgba(255, 249, 224, 1) 61%, rgba(255, 255, 255, 1) 100%);
    background: -ms-linear-gradient(left, rgba(255, 249, 224, 1) 0%, rgba(255, 249, 224, 1) 61%, rgba(255, 255, 255, 1) 100%);
    background: linear-gradient(to right, rgba(255, 249, 224, 1) 0%, rgba(255, 249, 224, 1) 61%, rgba(255, 255, 255, 1) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff9e0', endColorstr='#ffffff', GradientType=1);
}




/* model-comparison-table-header */

#model-comparison-table-header {
    width: 980px;
    margin-left: auto;
    margin-right: auto;
    position: fixed;
    z-index: 1000;
    top: 0;
    display: none;
    background: #fff;
    background: -moz-linear-gradient(top, rgba(255, 255, 255, 1) 0%, rgba(249, 249, 249, 1) 100%);
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, rgba(255, 255, 255, 1)), color-stop(100%, rgba(249, 249, 249, 1)));
    background: -webkit-linear-gradient(top, rgba(255, 255, 255, 1) 0%, rgba(249, 249, 249, 1) 100%);
    background: -o-linear-gradient(top, rgba(255, 255, 255, 1) 0%, rgba(249, 249, 249, 1) 100%);
    background: -ms-linear-gradient(top, rgba(255, 255, 255, 1) 0%, rgba(249, 249, 249, 1) 100%);
    background: linear-gradient(to bottom, rgba(255, 255, 255, 1) 0%, rgba(249, 249, 249, 1) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffff', endColorstr='#f9f9f9', GradientType=0);
    -moz-box-shadow: 0 0 5px #aaa;
    -webkit-box-shadow: 0 0 5px #aaa;
    box-shadow: 0 0 5px #aaa;
    border-bottom-left-radius: 4px;
    border-bottom-right-radius: 4px;
}




/* model comparison table */

table.model-comparison-table {
    border-collapse: collapse;
    width: 100%;
}

table.model-comparison-table tr {
    border-top: 1px solid #e8e8e8;
}

table.model-comparison-table tr:first-child {
    border-top: 0;
}

table.model-comparison-table tr td:first-child {
    width: 20%;
    vertical-align: middle;
    padding: 8px 5px 8px 47px;
}

table.model-comparison-table tr td:not(:first-child) {
    width: 20%;
    border-left: 1px solid #e8e8e8;
    vertical-align: top;
    padding: 8px 5px;
}

table.model-comparison-table tr td.equal {
    box-shadow: inset 4px 0 0 0 #daeaa0;
}

table.model-comparison-table tr td.different {
    box-shadow: inset -4px 0 0 0 #ffd9c4;
}

table.model-comparison-table tr td.unknown {
    box-shadow: inset -4px 0 0 0 #eaeaea;
}




/* bullets and signs */

span.arrow-bullet {
    display: inline-block;
    width: 5px;
    height: 7px;
    background: url(../images/ui/arrow_triangle.svg) top left no-repeat;
    margin-right: 4px;
}

span.approximation-bullet {
    display: inline-block;
    width: 10px;
    height: 7px;
    background: url(../images/ui/approximation.svg) top left no-repeat;
    margin-right: 4px;
}

span.arrow-up {
    display: inline-block;
    width: 7px;
    height: 8px;
    background: url(../images/ui/arrow_up.svg) top left no-repeat;
}

span.arrow-down {
    display: inline-block;
    width: 7px;
    height: 8px;
    background: url(../images/ui/arrow_down.svg) top left no-repeat;
}




/* search dropdown */

div.search-dropdown {
    position: absolute;
    top: 44px;
    right: 0;
    border: 1px solid #c5c5c5;
    text-align: left;
    overflow: hidden;
    visibility: hidden;
    -moz-box-sizing: content-box;
    box-sizing: content-box;
    background-color: #fff;
    padding: 15px;
    -moz-box-shadow: 0 0 5px #aaa;
    -webkit-box-shadow: 0 0 5px #aaa;
    box-shadow: 0 0 5px #aaa;
}

div.search-result-normal,
div.search-result-selected {
    clear: both;
    margin: 4px;
    border-radius: 4px;
    padding: 4px 10px;
    cursor: pointer;
    height: 40px;
}

div.search-result-normal {
    background-color: #fff;
}

div.search-result-selected {
    background-color: #f5f5f5;
}

div.search-result-separator {
    height: 1px;
    padding: 6px 0;
}

div.search-result-separator :before {
    content: "";
    display: block;
    height: 1px;
    background-color: #c5c5c5;
}




/* tabs */

div.tab-container {
    overflow-y: hidden;
}

div.tab-container > div {
    position: relative;
    border-bottom: 1px solid #c5c5c5;
    overflow-y: hidden;
}

div.tab-container > div > a {
    position: relative;
    display: inline-block;
    list-style: none;
    outline: none;
    top: 0;
    height: 25px;
    line-height: 25px;
    border-top: 1px solid #c5c5c5;
    border-left: 1px solid #c5c5c5;
    border-right: 1px solid #c5c5c5;
    border-top-left-radius: 8px;
    border-top-right-radius: 8px;
    background-color: #dadada;
    text-decoration: none;
    text-align: center;
    vertical-align: middle;
    padding: 0 28px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    background: #fff;
    background: -moz-linear-gradient(top, rgba(255, 255, 255, 1) 0%, rgba(249, 249, 249, 1) 100%);
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, rgba(255, 255, 255, 1)), color-stop(100%, rgba(249, 249, 249, 1)));
    background: -webkit-linear-gradient(top, rgba(255, 255, 255, 1) 0%, rgba(249, 249, 249, 1) 100%);
    background: -o-linear-gradient(top, rgba(255, 255, 255, 1) 0%, rgba(249, 249, 249, 1) 100%);
    background: -ms-linear-gradient(top, rgba(255, 255, 255, 1) 0%, rgba(249, 249, 249, 1) 100%);
    background: linear-gradient(to bottom, rgba(255, 255, 255, 1) 0%, rgba(249, 249, 249, 1) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffff', endColorstr='#f9f9f9', GradientType=0);
}

div.tab-container > div > a:hover {
    background: #f2f2f2;
    background: -moz-linear-gradient(top, rgba(255, 255, 255, 1) 0%, rgba(242, 242, 242, 1) 100%);
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, rgba(255, 255, 255, 1)), color-stop(100%, rgba(242, 242, 242, 1)));
    background: -webkit-linear-gradient(top, rgba(255, 255, 255, 1) 0%, rgba(242, 242, 242, 1) 100%);
    background: -o-linear-gradient(top, rgba(255, 255, 255, 1) 0%, rgba(242, 242, 242, 1) 100%);
    background: -ms-linear-gradient(top, rgba(255, 255, 255, 1) 0%, rgba(242, 242, 242, 1) 100%);
    background: linear-gradient(to bottom, rgba(255, 255, 255, 1) 0%, rgba(242, 242, 242, 1) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffff', endColorstr='#f2f2f2', GradientType=0);
}

div.tab-container > div > a.tab-selected {
    border-top: 1px solid #e0c0b0;
    border-left: 1px solid #e0c0b0;
    border-right: 1px solid #e0c0b0;
    background: #fff;
    background: -moz-linear-gradient(top, rgba(255, 255, 255, 1) 0%, rgba(255, 240, 230, 1) 100%);
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, rgba(255, 255, 255, 1)), color-stop(100%, rgba(255, 240, 230, 1)));
    background: -webkit-linear-gradient(top, rgba(255, 255, 255, 1) 0%, rgba(255, 240, 230, 1) 100%);
    background: -o-linear-gradient(top, rgba(255, 255, 255, 1) 0%, rgba(255, 240, 230, 1) 100%);
    background: -ms-linear-gradient(top, rgba(255, 255, 255, 1) 0%, rgba(255, 240, 230, 1) 100%);
    background: linear-gradient(to bottom, rgba(255, 255, 255, 1) 0%, rgba(255, 240, 230, 1) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffff', endColorstr='#fff0e6', GradientType=0);
}

div.tab-container > div > a > span.icon {
    width: 16px;
    height: 16px;
    margin-top: -2px;
    padding: 0;
    vertical-align: middle;
    display: inline-block;
    background-repeat: no-repeat;
    background-position-x: left;
    background-position-y: top;
    background-size: 16px 16px;
    opacity: .75;
}

div.tab-container > div > a > span+.text {
    margin-left: 6px;
}

div.tab-container > div > a > span.text .user-review-count {
    position: relative;
    top: -1px;
    width: 16px;
    height: 16px;
    line-height: 16px;
    padding: 0;
    margin: 0;
    border: 0;
    border-radius: 14px;
    text-align: center;
    display: inline-block;
    font-size: 9px;
    font-weight: 700;
    background-color: #bbb;
    color: #fff;
}

div.tab-container > div > a > span.text .merchant-product-count {
    position: relative;
    top: -1px;
    width: 16px;
    height: 16px;
    line-height: 16px;
    padding: 0;
    margin: 0;
    border: 0;
    border-radius: 14px;
    text-align: center;
    display: inline-block;
    font-size: 9px;
    font-weight: 700;
    background-color: #8c4;
    color: #fff;
}




/* form */

span.field-obligatory {
    font-size: 18px;
    font-weight: 700;
    color: #f60;
}

input.invalid-data,
select.invalid-data,
textarea.invalid-data {
    border: 1px solid #f60;
}




/* user review */

.user-review {
    overflow-y: auto;
}

.user-review > .ratings {
    float: left;
    width: 320px;
    margin-right: 20px;
}

.user-review > .ratings > table {
    border-collapse: collapse;
    float: right;
}

.user-review > .ratings > table tr td {
    height: 16px;
}

.user-review > .ratings > table tr td:first-child {
    text-align: right;
    padding-right: 4px;
    width: 180px;
}

.user-review > .ratings > table tr td:nth-child(2n) {
    padding-top: 0;
}

.user-review > .ratings > table tr td:nth-child(2n+1) > span.rating {
    width: 16px;
    height: 16px;
    line-height: 16px;
    padding: 0;
    margin: 0;
    border: 0;
    border-radius: 2px;
    text-align: center;
    display: inline-block;
    font-weight: 700;
    background-color: #efefef
}

.user-review > div.text {
    text-align: justify;
    overflow: hidden;
}




/* passive 16px star rating container */

.passive-16px-red-stars-container {
    position: relative;
    width: 80px;
    height: 16px;
}

.passive-16px-red-stars-container .star-default {
    position: absolute;
    height: 16px;
    z-index: 1;
    background: url(../images/ui/star_red.svg) 0 0 repeat-x;
}

.passive-16px-yellow-stars-container {
    position: relative;
    width: 80px;
    height: 16px;
}

.passive-16px-yellow-stars-container .star-default {
    position: absolute;
    height: 16px;
    z-index: 1;
    background: url(../images/ui/star_yellow.svg) 0 0 repeat-x;
}




/* active star rating container */

.active-yellow-stars-container {
    position: relative;
    width: 120px;
    height: 24px;
    background: url(../images/ui/star_gray.svg) 0 0 repeat-x;
    cursor: pointer;
}

.active-yellow-stars-container .star-default {
    position: absolute;
    height: 24px;
    z-index: 1;
    background: url(../images/ui/star_yellow.svg) repeat-x;
}

.active-yellow-stars-container:hover .star-default {
    display: none;
}

.active-yellow-stars-container [class^="star-"] {
    position: absolute;
    width: 24px;
    height: 24px;
    z-index: 100;
}

.active-yellow-stars-container [class^="star-"]:hover {
    z-index: 2;
    background: url(../images/ui/star_yellow.svg) 0 0 repeat-x;
}

.active-yellow-stars-container .star-1 {
    left: 0;
    width: 24px;
}

.active-yellow-stars-container .star-1:hover {
    left: 0;
    width: 24px;
}

.active-yellow-stars-container .star-2 {
    left: 24px;
    width: 24px;
}

.active-yellow-stars-container .star-2:hover {
    left: 0;
    width: 48px;
}

.active-yellow-stars-container .star-3 {
    left: 48px;
    width: 24px;
}

.active-yellow-stars-container .star-3:hover {
    left: 0;
    width: 72px;
}

.active-yellow-stars-container .star-4 {
    left: 72px;
    width: 24px;
}

.active-yellow-stars-container .star-4:hover {
    left: 0;
    width: 96px;
}

.active-yellow-stars-container .star-5 {
    left: 96px;
    width: 24px;
}

.active-yellow-stars-container .star-5:hover {
    left: 0;
    width: 120px;
}




/* button */

a.button {
    display: inline-block;
    height: 26px;
    padding: 0 14px;
    border: 1px solid #c5c5c5;
    border-radius: 4px;
    outline: none;
    text-decoration: none;
    cursor: pointer;
    white-space: nowrap;
    overflow: hidden;
    -moz-box-shadow: 0 0 1px #ddd;
    -webkit-box-shadow: 0 0 1px #ddd;
    box-shadow: 0 0 1px #ddd;
    background: #fff;
    background: -moz-linear-gradient(top, rgba(255, 255, 255, 1) 0%, rgba(249, 249, 249, 1) 100%);
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, rgba(255, 255, 255, 1)), color-stop(100%, rgba(249, 249, 249, 1)));
    background: -webkit-linear-gradient(top, rgba(255, 255, 255, 1) 0%, rgba(249, 249, 249, 1) 100%);
    background: -o-linear-gradient(top, rgba(255, 255, 255, 1) 0%, rgba(249, 249, 249, 1) 100%);
    background: -ms-linear-gradient(top, rgba(255, 255, 255, 1) 0%, rgba(249, 249, 249, 1) 100%);
    background: linear-gradient(to bottom, rgba(255, 255, 255, 1) 0%, rgba(249, 249, 249, 1) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffff', endColorstr='#f9f9f9', GradientType=0);
}

a.button .image-arrows,
a.button .image-pencil {
    display: block;
    float: left;
    width: 16px;
    height: 16px;
    margin: 0 6px 0 0;
    border: 0;
    opacity: .8;
}

a.button .image-arrow-left,
a.button .image-arrow-right {
    display: block;
    float: left;
    width: 16px;
    height: 16px;
    margin: 0;
    border: 0;
    opacity: .8;
}

a.button .image-arrow-left {
    background: url(../images/ui/arrow_triangle.svg) center center / 12px 12px no-repeat;
    transform: rotate(-180deg);
}

a.button .image-arrow-right {
    background: url(../images/ui/arrow_triangle.svg) center center / 12px 12px no-repeat;
}

a.button .image-arrows {
    background: url(../images/ui/arrows.svg) left top no-repeat;
}

a.button .image-pencil {
    background: url(../images/ui/pencil.svg) left top no-repeat;
}

a.button > span {
    display: inline-block;
    text-shadow: 1px 1px 0 rgba(255, 255, 255, 0.8);
    font-weight: 700;
    margin-top: 5px;
}

a.button:hover {
    background: #fff;
    background: -moz-linear-gradient(top, rgba(255, 255, 255, 1) 0%, rgba(242, 242, 242, 1) 100%);
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, rgba(255, 255, 255, 1)), color-stop(100%, rgba(242, 242, 242, 1)));
    background: -webkit-linear-gradient(top, rgba(255, 255, 255, 1) 0%, rgba(242, 242, 242, 1) 100%);
    background: -o-linear-gradient(top, rgba(255, 255, 255, 1) 0%, rgba(242, 242, 242, 1) 100%);
    background: -ms-linear-gradient(top, rgba(255, 255, 255, 1) 0%, rgba(242, 242, 242, 1) 100%);
    background: linear-gradient(to bottom, rgba(255, 255, 255, 1) 0%, rgba(242, 242, 242, 1) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffff', endColorstr='#f2f2f2', GradientType=0);
}

a.button:hover .image-arrows,
a.button:hover .image-pencil {
    opacity: 1;
}

a.button:active {
    -moz-box-shadow: inset 0 0 2px #bbb;
    -webkit-box-shadow: inset 0 0 2px #bbb;
    box-shadow: inset 0 0 2px #bbb;
    background: #f5f5f5;
}




/* product listing container */

.product-listing-container > div {
    clear: both;
    width: 100%;
    margin-top: 25px;
    border-bottom: 1px solid #e8e8e8;
    padding-bottom: 25px;
}

.product-listing-container > div:first-child {
    margin-top: 5px;
}

.product-listing-container > div:last-child {
    border-bottom: 0;
}

.product-listing-container .product {
    clear: both;
    width: 100%;
    height: 32px;
    position: relative;
}

.product-listing-container .product > .logo {
    float: left;
    width: 150px;
    height: 30px;
    background-repeat: no-repeat;
    background-position: top left;
}

.product-listing-container .product > .title {
    float: left;
    width: calc(100% - 450px);
    height: 15px;
    margin-top: 10px;
    white-space: nowrap;
    text-overflow: ellipsis;
    overflow: hidden;
}

.product-listing-container .product > .price {
    float: left;
    width: 200px;
    overflow: hidden;
    font-size: 14px;
    text-align: center;
    white-space: nowrap;
    margin-top: 10px;
}

.product-listing-container .product > div.more-info-button,
.product-listing-container .product > div.buy-button {
    position: absolute;
    right: 7px;
    top: 2px;
}

.product-listing-container .coupons {
    clear: both;
    width: calc(100% - 150px);
    margin-left: 150px;
}

.product-listing-container .coupons .coupon {
    height: 22px;
    margin: 10px 0 13px;
}

.product-listing-container .coupons .coupon > .label-and-code {
    float: left;
    width: 140px;
    height: 22px;
    background-color: #eaeaea;
    border-radius: 2px;
}

.product-listing-container .coupons .coupon > .label-and-code > .label-gray,
.product-listing-container .coupons .coupon > .label-and-code > .label-green,
.product-listing-container .coupons .coupon > .label-and-code > .label-blue {
    float: left;
    width: 40px;
    height: 22px;
    line-height: 22px;
    text-align: center;
    font-weight: 700;
    color: #333;
    border-right: 1px dashed #fff;
    border-top-left-radius: 2px;
    border-bottom-left-radius: 2px;
}

.product-listing-container .coupons .coupon > .label-and-code > .label-gray {
    background-color: #e0e0e0;
}

.product-listing-container .coupons .coupon > .label-and-code > .label-green {
    background-color: #d5eaad;
}

.product-listing-container .coupons .coupon > .label-and-code > .label-blue {
    background-color: #d0e5fa;
}

.product-listing-container .coupons .coupon > .label-and-code > input[type="text"] {
    display: block;
    float: left;
    width: 93px;
    height: 22px;
    outline: none;
    border: none;
    background-color: transparent;
    margin: 0 0 0 3px;
    padding: 0;
    color: #333;
    cursor: text;
}

.product-listing-container .coupons .coupon > .time {
    float: left;
    width: 16px;
    height: 22px;
    opacity: 1;
    margin-left: 8px;
}

.product-listing-container .coupons .coupon > .time-color-gray {
    background: url(../images/ui/clock_black.svg) left center no-repeat;
    opacity: .4;
}

.product-listing-container .coupons .coupon > .time-color-orange {
    background: url(../images/ui/clock_orange.svg) left center no-repeat;
    opacity: .9;
}

.product-listing-container .coupons .coupon > .time-color-red {
    background: url(../images/ui/clock_red.svg) left center no-repeat;
    opacity: .8;
}

.product-listing-container .coupons .coupon > .text {
    float: left;
    width: calc(100% - 305px);
    height: 22px;
    line-height: 22px;
    margin-left: 8px;
    white-space: nowrap;
    text-overflow: ellipsis;
    overflow: hidden;
}




/* comparison listing container */

.comparison-listing-container > div {
    clear: both;
    width: 100%;
    height: 60px;
    position: relative;
    margin-top: 20px;
    border-bottom: 1px solid #e8e8e8;
}

.comparison-listing-container > div:first-child {
    margin-top: 0;
}

.comparison-listing-container > div:last-child {
    border-bottom: 0;
}

.comparison-listing-container > div > div {
    float: left;
    width: 170px;
    white-space: nowrap;
    text-overflow: ellipsis;
    overflow: hidden;
    height: 40px;
    padding: 12px 10px 0 42px;
}

.comparison-listing-container > div .more-info-button {
    position: absolute;
    right: 7px;
    top: 7px;
}




/* model listing container */

.model-listing-container-80 > div {
    width: 100px;
    height: 140px;
}

.model-listing-container-160 > div {
    width: 180px;
    height: 220px;
}

.model-listing-container-80,
.model-listing-container-160 {
    overflow: auto;
}

.model-listing-container-80 > div,
.model-listing-container-160 > div {
    position: relative;
    float: left;
    margin: 0 8px 8px 0;
    background-repeat: no-repeat;
    text-align: center;
    overflow: hidden;
    -webkit-transition: background-color .2s ease-in-out;
    -moz-transition: background-color .2s ease-in-out;
    -o-transition: background-color .2s ease-in-out;
    -ms-transition: background-color .2s ease-in-out;
    transition: background-color .2s ease-in-out
}

.model-listing-container-80 > div:hover,
.model-listing-container-160 > div:hover {
    background-color: #f5f5f5;
    border-radius: 5px;
}

.model-listing-container-80 > div:hover > span.icon-arrows,
.model-listing-container-160 > div:hover > span.icon-arrows {
    opacity: 1;
}

.model-listing-container-80 > div:hover > span.icon-x,
.model-listing-container-160 > div:hover > span.icon-x {
    opacity: .5;
}

.model-listing-container-80 > div > h3,
.model-listing-container-160 > div > h3 {
    margin: 0;
    font-size: 11px;
    font-weight: 400;
}

.model-listing-container-80 > div a,
.model-listing-container-160 > div a {
    text-decoration: none;
}

.model-listing-container-80 > div a > img,
.model-listing-container-160 > div a > img {
    margin-top: 25px;
    border: 0;
}

.model-listing-container-80 > div > p,
.model-listing-container-160 > div > p {
    display: none;
}

.model-listing-container-80 > div > span.icon-arrows,
.model-listing-container-160 > div > span.icon-arrows {
    -webkit-transition: opacity .2s ease-in-out;
    -moz-transition: opacity .2s ease-in-out;
    -ms-transition: opacity .2s ease-in-out;
    -o-transition: opacity .2s ease-in-out;
    transition: opacity .2s ease-in-out;
    opacity: .25;
}

.model-listing-container-80 > div > span.icon-x,
.model-listing-container-160 > div > span.icon-x {
    -webkit-transition: opacity .2s ease-in-out;
    -moz-transition: opacity .2s ease-in-out;
    -ms-transition: opacity .2s ease-in-out;
    -o-transition: opacity .2s ease-in-out;
    transition: opacity .2s ease-in-out;
    opacity: .25;
}

.model-listing-container-80 > div > span.icon-button,
.model-listing-container-160 > div > span.icon-button {
    position: absolute;
    top: 4px;
    right: 4px;
}




/* article listing contaner - 1 coumn */

.article-listing-container > div {
    height: 80px;
    text-align: justify;
    margin-top: 20px;
}

.article-listing-container > div:first-child {
    margin-top: 0;
}




/* article listing container - 2 columns */

.article-listing-2column-container {
    overflow: hidden;
}

.article-listing-2column-container > div {
    float: left;
    width: 48%;
    height: 80px;
    text-align: justify;
    margin-top: 20px;
}

.article-listing-2column-container > div:nth-child(1),
.article-listing-2column-container > div:nth-child(2) {
    margin-top: 0;
}

.article-listing-2column-container > div:nth-child(even) {
    margin-left: 2%;
}

/* article listing container - common */

.article-listing-container > div > a.header,
.article-listing-2column-container > div > a.header {
    display: block;
    text-align: left;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.article-listing-container > div > a.image,
.article-listing-2column-container > div > a.image {
    display: block;
    float: left;
    width: 80px;
    height: 80px;
    margin-right: 10px;
}

.article-listing-container > div > p.text,
.article-listing-2column-container > div > p.text {
    margin-top: 2px;
    max-height: 44px;
    overflow: hidden;
}

.article-listing-container > div > p.date,
.article-listing-2column-container > div > p.date {
    font-size: 11px;
    color: #777;
    margin-top: 2px;
}

.article-listing-container > div > h3,
.article-listing-2column-container > div > h3 {
    margin: 0 0 2px;
}




/* gallery container */

.gallery-container > img {
    display: block;
    width: 800px;
    height: 800px;
    margin-left: auto;
    margin-right: auto;
    margin-top: 40px;
}

.gallery-container > img:first-child {
    margin-top: 0;
}




/* article */

.article {
    text-align: justify;
    overflow: hidden;
    line-height: 1.35em;
}

.article img.main {
    width: 100%;
    display: block;
    margin-bottom: 15px;
}

.article img.additional {
    width: 100%;
    display: block;
    margin: 20px 0;
}

.article a.source {
    display: block;
    color: #777;
    float: right;
    margin-top: 20px;
}

.article div.video {
    position: relative;
    padding-bottom: 56.25%;
    height: 0;
    margin: 20px 0;
}

.article div.video iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.article .info {
    border-left: 6px solid #c5c5c5;
    padding-left: 8px;
    overflow: auto;
    line-height: inherit;
}




/* article table of contents */

.article-table-of-contents {
    position: relative;
    width: 100%;
    background-color: #f5f5f5;
    border-radius: 4px;
    padding: 8px;
}

.article-table-of-contents .row {
    height: 18px;
    white-space: nowrap;
}

.article-table-of-contents .row .pointer {
    float: left;
    width: 18px;
    height: 18px;
    text-align: center;
    margin-right: 2px;
    line-height: 18px;
}

.article-table-of-contents .row .pointer > div {
    width: 12px;
    height: 12px;
    margin-top: 2px;
    background: url(../images/ui/arrow_triangle.svg) center center / 12px 12px no-repeat;
}

.article-table-of-contents .row .number {
    display: inline-block;
    width: 18px;
    margin-right: 4px;
    text-align: right;
}

.article-table-of-contents .row a.link {
    float: left;
    width: calc(100% - 140px);
    line-height: 18px;
    text-decoration: none;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.article-table-of-contents .row a.link:hover {
    text-decoration: underline;
}

.article-table-of-contents .row a.selected {
    font-weight: 500;
}

.article-table-of-contents .buttons {
    position: absolute;
    overflow: hidden;
    right: 24px;
    top: 8px;
}

.article-table-of-contents .buttons a.button:nth-child(n+2) {
    margin-left: 4px;
}




/* follow 16px */

.social-follow-16 {
    width: 54px;
    height: 16px;
}

.social-follow-16 > a {
    width: 16px;
    height: 16px;
}




/* follow 24px */

.social-follow-24 {
    width: 78px;
    height: 24px;
    margin-top: 10px;
    margin-left: auto;
    margin-right: auto;
}

.social-follow-24 > a {
    width: 24px;
    height: 24px;
}




/* follow - common */

.social-follow-16 > a,
.social-follow-24 > a {
    display: block;
    float: left;
    margin-left: 3px;
    -webkit-transition: all .2s ease-in-out;
    -moz-transition: all .2s ease-in-out;
    -ms-transition: all .2s ease-in-out;
    -o-transition: all .2s ease-in-out;
    transition: all .2s ease-in-out;
}

.social-follow-16 > a:first-child,
.social-follow-24 > a:first-child {
    margin-left: 0;
}

.social-follow-16 > a.facebook,
.social-follow-24 > a.facebook {
    background: url(../images/ui/facebook.svg) left top no-repeat;
    -webkit-filter: grayscale(100%);
    filter: grayscale(100%) brightness(185%);
}

.social-follow-16 > a.twitter,
.social-follow-24 > a.twitter {
    background: url(../images/ui/twitter.svg) left top no-repeat;
    -webkit-filter: grayscale(100%);
    filter: grayscale(100%) brightness(145%);
}

.social-follow-16 > a.rss,
.social-follow-24 > a.rss {
    background: url(../images/ui/rss.svg) left top no-repeat;
    -webkit-filter: grayscale(100%);
    filter: grayscale(100%) brightness(150%);
}

.social-follow-16 > a:hover,
.social-follow-24 > a:hover {
    filter: none;
}




/* view more link */

header a.view-more {
    position: absolute;
    bottom: 7px;
    right: 0;
    width: 10px;
    height: 10px;
    background: url(../images/ui/arrow_triangle.svg) 0 0 no-repeat;
    opacity: .5;
}

header a.view-more:hover {
    opacity: .8;
}




/* slideshow */

.slideshow {
    position: relative;
}

.slideshow .control-prev,
.slideshow .control-next {
    position: absolute;
    width: 32px;
    height: 32px;
    cursor: pointer;
    opacity: .3;
    top: 50%;
    margin-top: -16px;
    z-index: 1000;
    -webkit-transition: opacity .5s ease-in-out;
    -moz-transition: opacity .5s ease-in-out;
    -ms-transition: opacity .5s ease-in-out;
    -o-transition: opacity .5s ease-in-out;
    transition: opacity .5s ease-in-out;
}

.slideshow .control-prev:hover,
.slideshow .control-next:hover {
    opacity: .5;
}

.slideshow .control-prev {
    left: 0;
    background: url(../images/ui/arrows_slideshow.png) 0 0 no-repeat;
}

.slideshow .control-next {
    right: 0;
    background: url(../images/ui/arrows_slideshow.png) -32px 0 no-repeat;
}

.slideshow .layer {
    width: 100%;
    height: 100%;
    position: absolute;
    background-size: contain;
    -webkit-transition: opacity 1.5s ease-in-out;
    -moz-transition: opacity 1.5s ease-in-out;
    -ms-transition: opacity 1.5s ease-in-out;
    -o-transition: opacity 1.5s ease-in-out;
    transition: opacity 1.5s ease-in-out;
}




/* trackbar */

.trackbar {
    position: relative;
    left: -6px;
    width: calc(100% + 6px);
    margin-top: 1px;
    height: 14px;
    outline: none;
    overflow: visible;
    border: 1px solid rgba(0, 0, 0, 0);
    box-sizing: content-box;
}

.trackbar > .line {
    position: relative;
    height: 1px;
    background-color: #c5c5c5;
    margin: 6px 8px 0;
    border-top: 1px solid #f5f5f5;
    border-bottom: 1px solid #f5f5f5;
}

.trackbar > .line > .range {
    position: absolute;
    width: 0;
    height: 100%;
    background-color: #fa2;
}

.trackbar > .thumb {
    position: absolute;
    display: flex;
    justify-content: center;
    align-items: center;
    top: -8px;
    left: 0;
    width: 30px;
    height: 30px;
    z-index: 1000;
}

.trackbar > .thumb:before {
    position: absolute;
    width: 9px;
    height: 9px;
    background-color: #fff;
    border-radius: 50%;
    border: 3px solid #999;
    content: "";
}

.trackbar:hover > .thumb:before {
    border: 3px solid #fa2;
}




/* advanced search */

#advanced-search {
    position: relative;
    overflow: hidden;
    margin-top: 10px;
}

#advanced-search #advanced-search-inputs {
    position: absolute;
    overflow: hidden;
    left: 0;
    top: 20px;
    width: 180px;
    opacity: 1;
    -webkit-transition: all .5s ease-in-out;
    -moz-transition: all .5s ease-in-out;
    -ms-transition: all .5s ease-in-out;
    -o-transition: all .5s ease-in-out;
    transition: all .5s ease-in-out;
}

#advanced-search #advanced-search-clear {
    margin: 3px 0 0 35px;
}

#advanced-search #advanced-search-toggle {
    position: absolute;
    left: 0;
    top: 23px;
    z-index: 10;
    transform: scaleX(-1);
    -webkit-transition: transform .5s ease-in-out, left .5s ease-in-out, top .5s ease-in-out;
    -moz-transition: transform .5s ease-in-out, left .5s ease-in-out, top .5s ease-in-out;
    -ms-transition: transform .5s ease-in-out, left .5s ease-in-out, top .5s ease-in-out;
    -o-transition: transform .5s ease-in-out, left .5s ease-in-out, top .5s ease-in-out;
    transition: transform .5s ease-in-out, left .5s ease-in-out, top .5s ease-in-out;
}

#advanced-search #advanced-search-results {
    position: absolute;
    left: 200px;
    top: 20px;
    overflow-y: auto;
    -webkit-transition: all .5s ease-in-out;
    -moz-transition: all .5s ease-in-out;
    -ms-transition: all .5s ease-in-out;
    -o-transition: all .5s ease-in-out;
    transition: all .5s ease-in-out;
}




/* scrollbar */

.scrollbar::-webkit-scrollbar {
    width: 6px;
}

.scrollbar::-webkit-scrollbar-track {
    border-radius: 2px;
    background-color: #f5f5f5;
}

.scrollbar::-webkit-scrollbar-thumb {
    border-radius: 2px;
    background-color: #888;
}




/* checkbox */

label.checkbox {
    position: relative;
    display: block;
    padding: 0 0 0 18px;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

label.checkbox input[type="checkbox"] {
    display: none;
}

label.checkbox input[type="checkbox"]~div {
    position: absolute;
    display: block;
    top: 0;
    left: 0;
    width: 13px;
    height: 13px;
    content: "";
    border: 1px solid #c5c5c5;
    border-radius: 2px;
}

label.checkbox input[type="checkbox"]:checked~div {
    background-color: #fa2;
    border-color: #fa2;
}

label.checkbox input[type="checkbox"]:checked~div::before {
    position: absolute;
    display: block;
    top: 1px;
    left: 4px;
    width: 3px;
    height: 7px;
    content: "";
    border: solid #fff;
    border-width: 0 2px 2px 0;
    -webkit-transform: rotate(40deg);
    -ms-transform: rotate(40deg);
    transform: rotate(40deg);
}




/* radio */

label.radio {
    position: relative;
    display: block;
    padding: 0 0 0 18px;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

label.radio input[type="radio"] {
    display: none;
}

label.radio input[type="radio"]~div {
    position: absolute;
    display: block;
    top: 0;
    left: 0;
    width: 13px;
    height: 13px;
    content: "";
    border: 1px solid #c5c5c5;
    border-radius: 50%;
}

label.radio input[type="radio"]:checked~div {
    background-color: #fff;
    border: 3px solid #fa2;
    width: 9px;
    height: 9px;
}




/* window overlay */

div.window-overlay {
    position: fixed;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    z-index: 10;
    background-color: rgba(0, 0, 0, 0.5);
    backdrop-filter: blur(6px);
    outline: none;
}

div.window-overlay div.window-cookie-consent-1,
div.window-overlay div.window-cookie-consent-2 {
    width: 540px;
    height: 240px;
    position: relative;
    margin-left: auto;
    margin-right: auto;
    background-color: #fff;
    border: 1px solid #c5c5c5;
    padding: 10px;
    outline: none;
    -moz-box-shadow: 0 0 5px #aaa;
    -webkit-box-shadow: 0 0 5px #aaa;
    box-shadow: 0 0 5px #aaa;
}

div.window-overlay {
    position: fixed;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    z-index: 10;
    background-color: rgba(0, 0, 0, 0.5);
    backdrop-filter: blur(6px);
    outline: none;
}

div.window-overlay .icon-button {
    position: absolute;
    right: 4px;
    top: 4px;
    z-index: 99999;
}

div.window-overlay .window-suggest-an-edit {
    position: relative;
    width: 450px;
    height: 352px;
    margin-left: auto;
    margin-right: auto;
    background-color: #fff;
    border: 1px solid #c5c5c5;
    padding: 10px;
    outline: none;
    -moz-box-shadow: 0 0 5px #aaa;
    -webkit-box-shadow: 0 0 5px #aaa;
    box-shadow: 0 0 5px #aaa;
}