/*
Theme Name: Tabletphone
Text Domain: tp
Version: 3.0.10
Requires at least: 7.0
Requires PHP: 7.3
Author: Mehdi Namvar
Author URI: https://github.com/ilxanlar
*/

@import "fonts/dana/dana.css";
@import "fonts/fontello-58068c52/css/icons.css";

/* CSS VARIABLES */

:root {
    --font-size: 14px;
    --line-height: 1.6;
    --danger-color: #ff4757;
    --danger-light-color: #ffe0e3;
    --primary-color: #0abde3;
    --secondary-color: #a4b0be;
    --success-color: #20bf6b;
    --success-light-color: #d8f7e5;
    --info-light-color: #d5f6fd;
    --text-color: #2f3542;
    --muted-text-color: #747d8c;
    --input-border-color: #ddd;
    --input-border-color-active: #999;
    --input-placeholder-color: #bbb;
    --shadow: 0 0 10px rgba(0, 0, 0, 0.075);
}

@media (min-width: 375px) {
    :root {
        --font-size: 16px;
    }
}

@media (min-width: 768px) {
    :root {
        --font-size: 24px;
    }
}

@media (min-width: 992px) {
    :root {
        --font-size: 16px;
    }
}

/* CSS VARIABLES; END */


/* COMMON STYLES */

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

* {
    outline-color: #eee;
    outline-width: 4px;
}

html {
    background-color: var(--primary-color);
    font-size: var(--font-size);
    line-height: var(--line-height);
}

body {
    background-color: #fff;
    color: var(--text-color);
    /*font: 300 1rem/1.75 dana;*/
    font-family: dana, sans-serif;
    font-size: 0.8125rem;
    font-weight: 300;
    font-variant-numeric: oldstyle-nums;
    margin: 0 auto;
    min-height: 100vh;
    padding: 0;
}

body.disable-scroll {
    overflow: hidden;
}

a, button, input, select, option, textarea {
    color: inherit;
    font: inherit;
}

a {
    color: var(--primary-color);
    text-decoration: none;
}

b, strong, h1, h2, h3, h4, h5, h6 {
    font-weight: 500;
}

p {
    margin: 0 0 1rem;
}

table {
    border-collapse: collapse;
    width: 100%;
}

table th {
    color: #999;
    font-weight: 500;
}

table th, table td {
    text-align: right;
}

::-webkit-input-placeholder { /* Chrome/Opera/Safari */
    color: var(--input-placeholder-color);
}

::-moz-placeholder { /* Firefox 19+ */
    color: var(--input-placeholder-color);
}

:-ms-input-placeholder { /* IE 10+ */
    color: var(--input-placeholder-color);
}

:-moz-placeholder { /* Firefox 18- */
    color: var(--input-placeholder-color);
}

label .required {
    color: var(--danger-color);
    font-weight: 500;
    text-decoration: none;
}

fieldset {
    background-color: #f9f9f9;
    border: none;
    margin: 0 -1rem 1rem;
    padding: 1rem 1rem 0;
}

fieldset legend {
    font-size: 1rem;
    margin-bottom: -0.5rem;
    padding: 0;
}

select {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background-color: #fff;
    background-image: url('data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20width%3D%2232%22%20height%3D%2232%22%20viewBox%3D%220%200%2032%2032%22%3E%3Cpath%20d%3D%22M14.985%2025.166L2.997%2013.178q-.46-.46-.46-1.11t.46-1.094%201.11-.444%201.094.444l10.784%2010.8%2010.99-10.99q.46-.444%201.11-.444t1.093.444.444%201.094-.443%201.094L17.19%2024.96q-.604.603-1.206.603t-1-.396z%22%20fill%3D%22%23919496%22%20/%3E%3C/svg%3E');
    background-position: left 1rem center;
    background-repeat: no-repeat;
    background-size: 0.75rem;
    border-color: var(--input-border-color);
    border-radius: 0.25rem;
    display: block;
    font-size: 1rem;
    font-weight: 300;
    height: 32px;
    max-height: 32px;
    min-height: 32px;
    max-width: 100%;
    padding: 0 0.75rem 0 2.5rem;
    text-indent: .01px;
    text-overflow: '';
}

input[type=text],
input[type=password],
input[type=email],
input[type=number],
input[type=tel],
textarea {
    background-color: #fff;
    border: 1px solid var(--input-border-color);
    border-radius: 0.25rem;
    color: inherit;
    display: block;
    font-size: 1rem;
    font-weight: 300;
    line-height: var(--line-height);
    max-width: 100%;
    padding: 0.35rem 0.75rem 0.15rem;
    width: 100%;
}

input[type=text]:focus,
input[type=password]:focus,
input[type=email]:focus,
input[type=number]:focus,
input[type=tel]:focus,
textarea:focus {
    border-color: var(--input-border-color-active);
}

textarea {
    height: 4rem;
    min-height: 3rem;
}

button,
input[type=submit],
.button {
    background-color: var(--text-color);
    border: 1px solid transparent;
    border-radius: 0.25rem;
    color: #fff;
    display: inline-block;
    font-size: 1rem;
    font-weight: 500;
    line-height: var(--line-height);
    padding: 0.3rem 1.5rem 0.2rem;
    text-align: center;
    vertical-align: middle;
    white-space: nowrap;
}

.pill-button {
    background-color: var(--text-color);
    border: none;
    border-radius: 2rem;
    color: #fff;
    display: inline-block;
    font-size: 0.75rem;
    line-height: var(--line-height);
    padding: 0.25rem 1rem;
    text-align: center;
    vertical-align: middle;
    white-space: nowrap;
}

.button-primary {
    background-color: var(--primary-color);
}

.button-danger {
    background-color: var(--danger-color);
}

.button.alt,
.button-success {
    background-color: var(--success-color);
}

.select2 .select2-selection {
    border-color: var(--input-border-color);
    height: 34px;
}

.select2 .select2-selection__arrow {
    top: 4px !important;
}

.select2 .select2-selection__rendered {
    line-height: 34px !important;
}

.select2-dropdown {
    border-color: var(--input-border-color);
}

input.fancy-radio {
    display: none;
}

input.fancy-radio + span.fancy-radio {
    display: inline-block;
    padding-right: 1.5rem;
    position: relative;
    vertical-align: middle;
}

input.fancy-radio + span.fancy-radio:before {
    background-color: #fff;
    border: 1px solid #aaa;
    border-radius: 50%;
    box-shadow: inset 0 0 3px rgba(0, 0, 0, 0.2);
    content: '';
    display: block;
    height: 1rem;
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    transition: border-width 300ms ease;
    width: 1rem;
}

input.fancy-radio:checked + span.fancy-radio:before {
    border-color: var(--primary-color);
    border-width: 0.375rem;
}

.form-row-last {
    margin-bottom: 0;
}

.form-row em {
    color: var(--muted-text-color);
    display: block;
    font-size: 0.75rem;
    margin-top: 0.2rem;
}

[class^="i-"], [class*=" i-"] {
    display: inline-block;
    line-height: 1;
    vertical-align: middle;
}

[class^="i-"]:before, [class*=" i-"]:before {
    display: block;
    line-height: 1;
}

.text-center {
    text-align: center;
}

.text-left {
    text-align: left;
}

.text-right {
    text-align: right;
}

@media (max-width: 767px) {
    .hidden-sm {
        display: none;
    }
}

@media (min-width: 768px) and (max-width: 991px) {
    .hidden-md {
        display: none;
    }
}

@media (max-width: 992px) {
    .hidden-lg {
        display: none;
    }
}

.amount .money {
    /*font-weight: 500;*/
}

.amount > span.woocommerce-Price-currencySymbol {
}

.price ins {
    text-decoration: none;
}

.price del {
    color: #bbb;
}

.collapsible {
    position: relative;
}

.collapsible .collapsible-wrapper {
    overflow: hidden;
}

.collapsible .collapsible-toggle {
    background: rgba(255, 255, 255, 0.9);
    background: linear-gradient(0deg, rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 1) 30%, rgba(255, 255, 255, 0.4) 100%);
    bottom: 0;
    left: 0;
    padding: 4rem 0 1rem;
    position: absolute;
    right: 0;
    text-align: center;
}

.box {
    background-color: #fff;
    border-bottom: 1px solid #eee;
    border-top: 1px solid #eee;
    margin: 1rem 0;
}

.box-header {
    align-items: center;
    background-color: #fff;
    border-bottom: 1px solid #f5f5f5;
    display: flex;
    justify-content: space-between;
    padding: 1rem;
}

.box-header .actions {
}

.box-header .title {
    font-size: 1rem;
    font-weight: 300;
    margin: 0;
}

.box-header .title span {
    color: #999;
    display: block;
    font-size: 0.75rem;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.box-header.no-border {
    border-bottom: none;
}

.box-header.sticky {
    position: sticky;
    top: 0;
}

.box-header.small {
    padding-bottom: 0.75rem;
    padding-top: 0.75rem;
}

.box-header.small .title {
    font-size: 0.875rem;
}

.box-content {
    padding: 1rem;
}

.box-content.no-padding {
    padding: 0;
}

@media (min-width: 992px) {
    .box {
        border: 1px solid #eee;
        border-radius: 4px;
        /*box-shadow: var(--shadow);*/
    }
}

.table-wrapper {
    overflow-x: auto;
}

h1.home-page-title {
    font-size: 1rem;
    font-weight: 400;
    margin: 1.5rem 0;
    text-align: center;
}

#wpadminbar {
    z-index: 999 !important;
}

.page-loading {
    align-items: center;
    background-color: #fff;
    background-color: rgba(255, 255, 255, 0.9);
    bottom: 0;
    color: var(--primary-color);
    display: flex;
    font-size: 1.5rem;
    justify-content: center;
    left: 0;
    position: fixed;
    right: 0;
    top: 0;
    z-index: 9999999;
}

.site-header {
    background-color: #fff;
    box-shadow: var(--shadow), 0 -1px 3px rgba(0, 0, 0, 0.2);
    height: 100px;
    position: relative;
    z-index: 10;
}

.site-navigation-wrapper {
    background-color: var(--text-color);
    color: #fff;
}

@media (max-width: 767px) {
    .site-header {
        position: sticky;
        top: -40px;
        z-index: 999;
    }
}

.site-navigation {
    align-items: center;
    display: flex;
    height: 40px;
    justify-content: space-between;
    line-height: 40px;
    margin: 0 auto;
    max-width: 992px;
    padding: 0 0.5rem 0 1rem;
}

.site-navigation ul {
    display: flex;
    list-style: none;
    margin: 0;
    padding: 0;
}

.site-navigation ul li {
    margin: 0;
    padding: 0;
}

.site-navigation ul li a {
    color: inherit;
    display: block;
    font-size: 12px;
    line-height: 40px;
    padding: 0 0.5rem;
}

.site-navigation .logo {
    display: block;
    padding: 8px 0;
}

.site-navigation .logo img {
    display: block;
    height: 23px;
}

@media (min-width: 992px) {
    .site-navigation {
        padding-left: 2rem;
        padding-right: 2rem;
    }

    .site-navigation ul li a {
        padding: 0 1rem;
    }
}


.shop-navigation {
    display: flex;
    justify-content: flex-start;
    margin: 0 auto;
    max-width: 992px;
}

.shop-navigation .icon-button {
    align-items: center;
    background-color: transparent;
    border: none;
    color: var(--text-color);
    display: flex;
    height: 60px;
    justify-content: center;
    min-width: 60px;
    padding: 0 1rem;
}

.shop-navigation .icon-button i {
    display: block;
    font-size: 16px;
    line-height: 20px;
}

.shop-navigation .icon-button i:after,
.shop-navigation .icon-button i:before {
    margin: 0;
}

.shop-navigation .icon-button span.text {
    opacity: 0.5;
    margin-right: 8px;
}

.shop-navigation nav.other {
    display: flex;
}

.shop-navigation nav.other div.search {
    height: 60px;
    position: relative;
    width: 60px;
    z-index: 1;
}

.shop-navigation nav.other div.search form {
    direction: ltr;
    height: 60px;
    left: 0;
    position: absolute;
    top: 0;
    transition: all 300ms ease;
    width: 60px;
}

.shop-navigation nav.other div.search form button {
    left: 0;
    position: absolute;
    top: 0;
    transition: all 300ms ease;
}

.shop-navigation nav.other div.search form input {
    background-color: transparent;
    border: none;
    direction: rtl;
    display: block;
    height: 60px;
    opacity: 0;
    outline: none;
    padding-right: 1rem;
    transition: opacity 300ms ease;
    width: 100%;
}

.shop-navigation nav.other div.search form.focused {
    background-color: #eee;
    width: calc(100vw - 140px);
}

.shop-navigation nav.other div.search form.focused input {
    opacity: 1;
}

.shop-navigation nav.other div.search form.focused button {
    color: var(--primary-color);
}

.shop-navigation nav.other a.cart {
    /*display: block;*/
    line-height: 60px;
    position: relative;
    text-align: center;
}

.shop-navigation nav.other a.cart i {
    /*line-height: 48px;*/
}

.shop-navigation nav.other a.cart span.count {
    background-color: var(--danger-color);
    border-radius: 8px;
    color: #fff;
    display: block;
    font-size: 10px;
    line-height: 12px;
    padding: 4px 5px 0;
    position: absolute;
    right: 8px;
    top: 12px;
}

.shop-navigation nav.categories {
    flex-grow: 1;
}

.shop-navigation nav.categories ul {
    list-style: none;
    margin: 0;
    padding: 0;
}

.shop-navigation nav.categories ul.menu li a {
    color: var(--text-color);
    transition: color 300ms ease;
}

.shop-navigation nav.categories ul.menu li a[href]:hover {
    color: var(--primary-color);
}

@media (max-width: 991px) {
    .shop-navigation button.open-menu i {
        font-size: 24px;
    }

    .shop-navigation nav.categories .menu-backdrop {
        background-color: rgba(0, 0, 0, 0.5);
        bottom: 0;
        display: none;
        left: 0;
        position: fixed;
        right: 0;
        top: 0;
        z-index: 9998;
    }

    .shop-navigation nav.categories ul.menu {
        background-color: #fff;
        bottom: 0;
        height: 100vh;
        overflow-y: auto;
        padding: 32px 0;
        position: fixed;
        right: -80%;
        top: 0;
        transition: right 300ms ease;
        width: 80%;
        z-index: 9999;
    }

    .shop-navigation nav.categories ul.menu.open {
        right: 0;
    }

    .shop-navigation nav.categories ul li a {
        color: inherit;
        display: block;
        padding: 0.5px 1.5rem;
    }

    .shop-navigation nav.categories ul.menu > li {
        border-bottom: 1px solid #f8f8f8;
    }

    .shop-navigation nav.categories ul.menu > li > a {
        font-size: 20px;
        padding-bottom: 1rem;
        padding-top: 1rem;
    }

    .shop-navigation nav.categories ul.menu li ul li a {
        font-size: 15px;
        line-height: 2;
    }

    .shop-navigation nav.categories ul.menu li ul {
        display: none;
    }
}

@media (min-width: 992px) {
    .shop-navigation {
        padding-left: 2rem;
        padding-right: 2rem;
        position: relative;
        z-index: 10;
    }

    .shop-navigation nav.other div.search form.focused {
        width: 300px;
    }

    .shop-navigation button.open-menu {
        display: none;
    }

    .shop-navigation nav.categories ul.menu {
        display: flex;
    }

    .shop-navigation nav.categories ul.menu > li > a {
        border-bottom: 1px solid transparent;
        color: inherit;
        display: block;
        font-size: 1rem;
        line-height: 59px;
        padding: 0 1rem;
        position: relative;
        z-index: 10;
    }

    .shop-navigation nav.categories ul.menu > li:hover > a {
        background-color: #fff;
        border-bottom-color: var(--primary-color);
    }

    .shop-navigation nav.categories ul.menu > li > ul {
        background-color: rgba(255, 255, 255, 0.95);
        border: 1px solid #eee;
        border-radius: 0 0 4px 4px;
        box-shadow: 0 5px 5px rgba(0, 0, 0, 0.075);
        display: none;
        left: 1rem;
        line-height: 1.8;
        padding: 32px 32px 0;
        position: absolute;
        right: 1rem;
        top: 59px;
        z-index: 9;
    }

    .shop-navigation nav.categories ul.menu > li:hover > ul {
        display: flex;
    }

    .shop-navigation nav.categories ul.menu > li > ul > li {
        margin: 0 0 32px 32px;
        max-width: 20rem;
    }
}

#breadcrumbs {
    margin: 0 auto;
    max-width: 992px;
    padding: 1rem 1rem 0.5rem;
}

@media (max-width: 991px) {
    #breadcrumbs {
        overflow-x: auto;
        white-space: nowrap;
    }
}

@media (min-width: 992px) {
    #breadcrumbs {
        padding-left: 3rem;
        padding-right: 3rem;
    }
}

#site-content {
    min-height: calc(100vh - 264px);
}

@media (min-width: 768px) {
    #site-content {
        margin: 0 auto;
        max-width: 768px;
    }
}

@media (min-width: 992px) {
    #site-content {
        max-width: 992px;
        padding-left: 2rem;
        padding-right: 2rem;
    }
}

/* FOOTER */

.site-footer {
    background-color: var(--text-color);
    color: #fff;
    font-size: 0.75rem;
    margin-top: 1rem;
    padding: 1rem 0;
    text-align: center;
}

.site-footer hr {
    background-color: rgba(255, 255, 255, 0.05);
    border: none;
    height: 1px;
    margin: 0.5rem 0;
}

.site-footer .shop-info {
    align-items: center;
    display: flex;
    font-size: 1rem;
    justify-content: center;
    padding: 1rem;
}

.site-footer .shop-info .part {
    width: 150px;
}

.site-footer .shop-info .part .label {
    margin-bottom: 0.5rem;
}

.site-footer .shop-info .part .label i {
    font-size: 1.5rem;
}

.site-footer .shop-info .part .label small {
    opacity: 0.6;
}

.site-footer .shop-info .part .text {
    flex-grow: 1;
}

.site-footer .telegram {
    align-items: center;
    display: flex;
    font-size: 1rem;
    justify-content: center;
    padding: 1rem;
}

.site-footer .telegram a {
    border: 2px solid rgba(255, 255, 255, 0.2);
    border-radius: 4px;
    color: #fff;
    padding: 1rem;
    width: 150px;
}

.site-footer .telegram a:first-child {
    margin-left: 1rem;
}

.site-footer .telegram a i {
    font-size: 1.5rem;
    margin-bottom: 0.5rem;
}

.site-footer .menus {
    align-items: flex-start;
    display: flex;
    justify-content: center;
    padding: 1rem 0 0.5rem;
}

.site-footer .menus ul.menu {
    list-style: none;
    margin: 0;
    opacity: 0.8;
    padding: 0 1rem;
}

.site-footer .menus ul.menu li {
    margin: 0 0 0.5rem;
    padding: 0;
}

.site-footer .menus ul.menu li a {
    color: inherit;
    font-size: 0.875rem;
    line-height: 1.2;
}

.site-footer .logos {
    align-items: center;
    display: flex;
    justify-content: center;
    padding: 1rem;
}

.site-footer .logos img {
    background-color: rgba(255, 255, 255, 0.6);
    border-radius: 1rem;
    display: block;
    height: 9rem;
    margin: 0 0.5rem;
    padding: 0.75rem 0;
}

.site-footer .socials {
    display: flex;
    justify-content: center;
    padding: 0 1rem;
}

.site-footer .socials a {
    color: #fff;
    font-size: 1rem;
    padding: 1rem;
}

.site-footer p.copyright {
    margin: 0;
    opacity: 0.7;
    padding: 1rem;
}

@media (min-width: 992px) {
    .site-footer {
    }
}

/* STORE NOTICE */

p.woocommerce-store-notice {
    background-color: var(--info-light-color);
    bottom: 0;
    font-size: 0.75rem;
    margin: 0;
    padding: 1rem 1rem 1rem 2rem;
    position: sticky;
    z-index: 999;
}

a.woocommerce-store-notice__dismiss-link {
    display: block;
    font-size: 1rem;
    left: 0;
    padding: 0.5rem;
    position: absolute;
    top: 0;
}

/* FOOTER END */

ul.page-numbers {
    align-items: center;
    display: inline-flex;
    flex-wrap: wrap;
    justify-content: center;
    list-style: none;
    margin: 0;
    overflow: hidden;
    padding: 0;
}

ul.page-numbers li {
    margin: 0.25rem;
}

ul.page-numbers li .page-numbers {
    color: var(--text-color);
    display: block;
}

ul.page-numbers li a.page-numbers,
ul.page-numbers li .page-numbers.current {
    border: 1px solid #eee;
    border-radius: 0.25rem;
    font-size: 1rem;
    line-height: 2rem;
    min-width: 2.25rem;
    padding: 0.25rem 0.75rem 0;
}

ul.page-numbers li .page-numbers.current {
    background-color: var(--text-color);
    border-color: var(--text-color);
    color: #fff;
    font-weight: 500;
}

ul.page-numbers li .page-numbers.dots {
    color: #ccc;
}

div.variation {
    color: #999;
    font-size: 0.625rem;
}

div.variation p {
    margin: 0;
}

.woocommerce-message {
    background-color: var(--success-light-color);
    color: var(--success-color);
    margin: 0;
    padding: 1rem;
}

.woocommerce-info {
    background-color: var(--info-light-color);
    margin: 0;
    padding: 1rem;
}

.woocommerce-error {
    background-color: var(--danger-light-color);
    color: var(--danger-color);
    margin: 0;
    padding: 1rem;
}

ul.woocommerce-error {
    list-style: none;
}

/* COMMON STYLES; END */


/* CONTENT STYLES */

.content img {
    background: #eee;
    border-radius: 0.25rem;
    display: block;
    height: auto !important;
    margin: 1.25rem auto;
    max-width: 100%;
    width: auto !important;
}

.content .wp-caption {
    margin: 1em auto;
    max-width: 100% !important;
    padding: 0.5rem 0;
    text-align: center;
    width: auto !important;
}

.content .wp-caption a {
    display: inline-block;
}

.content .wp-caption img {
    display: block;
    height: auto !important;
    margin: 0 auto;
    max-width: 100% !important;
}

.content .wp-caption .wp-caption-text {
    font-size: 0.75rem;
    margin: 0;
}

.content table.simple {
    border: 1px solid #777;
    margin: 1.25rem 0;
}

.content table.simple tr td, .content table.simple tr th {
    border: 1px solid #777;
    direction: ltr;
    padding: 0.25rem;
    vertical-align: middle;
}

.content table.simple tr:hover td {
    background: #f5f5f5;
}

/* CONTENT STYLES; END */


/* COMMENT STYLES */

.commentlist {
    font-size: 12px;
}

.commentlist, .commentlist ol, .commentlist ul {
    list-style: none;
}

.commentlist, .commentlist li, .commentlist ol, .commentlist ol li, .commentlist ul, .commentlist ul li {
    margin: 0;
    padding: 0;
}

.commentlist li .comment_container {
    position: relative;
}

.commentlist > li {
    border-bottom: 1px solid #f5f5f5;
    margin-bottom: 12px;
    padding-bottom: 12px;
}

.commentlist > li:last-child {
    border-bottom: none;
    margin-bottom: 0;
    padding-bottom: 0;
}

.commentlist li li {
    margin-top: 12px;
}

.commentlist li .comment_container .avatar {
    display: none;
}

.commentlist li .comment_container img {
    vertical-align: middle;
}

.commentlist li .comment_container p {
    margin: 0;
}

.commentlist li .comment_container .comment-text {
    position: relative;
}

.commentlist li .comment_container .comment-text .star-rating {
    left: 4px;
    margin: 0;
    position: absolute;
    top: 4px;
}

.commentlist li .comment_container .comment-text .meta {
    color: #999;
    margin: 0 0 4px;
}

.commentlist li .comment_container .reply {
    margin-top: 12px;
}

.commentlist li .comment_container .reply a.comment-reply-link {
    background: #5bc0eb;
    border-radius: 4px;
    color: #fff;
    display: inline-block;
    font-size: 12px;
    line-height: 30px;
    padding: 0 4px;
}

.commentlist li .comment_container .reply a.comment-reply-link i {
    margin-left: 4px;
}

.commentlist li .children li .comment_container {
    padding-right: 32px;
}

.comment-form p {
    margin: 0 0 12px;
}

.comment-form p label {
    display: block;
    width: 100%;
}

.comment-form p.comment-form-cookies-consent label {
    display: inline;
    width: auto;
}

.comment-form p.form-submit {
    margin-bottom: 0;
}

.comment-form p.stars > span {
    align-items: center;
    border: 1px solid #eee;
    border-radius: 4px;
    display: inline-flex;
    overflow: hidden;
}

.comment-form p.stars > span a {
    border-left: 1px solid #f7f7f7;
    font-size: 18px;
    height: 48px;
    line-height: 48px;
    text-align: center;
    width: 48px;
}

.comment-form p.stars > span a:last-child {
    border-bottom: none;
}

.comment-form p.stars > span a.active {
    background-color: var(--primary-color);
    color: #fff;
}

/* COMMENT STYLES; END */


/* POST STYLES */

article.single-post {
    background-color: #fff;
}

article.single-post .single-post-title {
    font-size: 1.375rem;
    font-weight: 500;
    margin: 0;
    padding: 2rem 1rem 1rem;
}

article.single-post figure.single-post-cover {
    margin: 0;
}

article.single-post figure.single-post-cover + .single-post-title {
    padding-top: 1rem;
}

article.single-post figure.single-post-cover img {
    display: block;
    height: auto !important;
    width: 100% !important;
}

article.single-post .single-post-content {
    padding: 0 1rem 1rem;
}

article.single-post .single-post-content.large {
    font-size: 1rem;
}


/* POST STYLES; END */


/* BLOG STYLES */

.articles-archive-header {
    background-color: #fff;
    border-bottom: 1px solid #f5f5f5;
    padding: 1.5rem 1rem 1rem;
    text-align: center;
}

.articles-archive-header h1 {
    font-size: 22px;
    margin: 0;
}

.articles {
    background-color: #fff;
}

.articles article.post {
    border-bottom: 1px solid #f5f5f5;
    padding: 1rem;
}

.articles article.post a.article-link {
    color: inherit;
}

.articles article.post figure {
    margin: 0 0 1rem;
}

.articles article.post figure img {
    border-radius: 0.25rem;
    display: block;
    height: auto !important;
    width: 100% !important;
}

.articles article.post h2 {
    font-size: 1rem;
    margin: 0;
}

.articles .excerpt p {
    margin: 0.75rem 0 0;
}

.articles article.post .read-more {
    margin-top: 0.75rem;
    text-align: left;
}

.articles-pagination {
    padding: 2rem 1rem;
    text-align: center;
}


/* BLOG STYLES; END */


/* SHOP STYLES */

nav.woocommerce-breadcrumb {
    background-color: #fff;
    color: #ccc;
    font-size: 0.75rem;
    line-height: 1.5;
    overflow-x: auto;
    padding: 0.75rem 1rem 0.5rem;
    white-space: nowrap;
}

nav.woocommerce-breadcrumb a {
    color: var(--primary-color);
}

nav.woocommerce-pagination {
}

.star-rating {
    background: url(img/rating.png) repeat-x;
    border-radius: 5px;
    direction: ltr;
    display: inline-block;
    height: 10px;
    overflow: hidden;
    text-align: left;
    text-indent: -9999px;
    width: 50px
}

.star-rating span {
    background: url(img/rating.png) 0 -10px repeat-x;
    display: block;
    height: 100%
}

/* @TODO: Add styles for notices later */
.woocommerce-notices-wrapper {
    background-color: #fff;
}

.woocommerce-notices-wrapper > * {
    margin-bottom: 1rem;
}

/* SHOP: ORDER PAY */

.woocommerce-order-pay ul.order_details {
    background-color: #f7f7f7;
    font-size: 1rem;
    list-style: none;
    margin: 1rem 0;
    padding: 1rem;
}

/* SHOP: ORDER RECEIVED */

.woocommerce-order-received .woocommerce-order {
    margin: 1rem auto;
    max-width: 540px;
}

.woocommerce-order-received .woocommerce-order .woocommerce-thankyou-order-received {
    background-color: var(--success-light-color);
    color: var(--success-color);
    font-size: 1rem;
    padding: 1rem;
}

.woocommerce-order-received .woocommerce-order ul.order_details {
    background-color: #f7f7f7;
    font-size: 1rem;
    list-style: none;
    margin: 1rem 0;
    padding: 1rem;
}

.woocommerce-order-received .woocommerce-order .woocommerce-order-details,
.woocommerce-order-received .woocommerce-order .woocommerce-customer-details {
    border: 1px solid #eee;
    border-radius: 4px;
    margin-top: 1rem;
    padding: 1rem;
}

.woocommerce-order-received .woocommerce-order .woocommerce-order-details h2,
.woocommerce-order-received .woocommerce-order .woocommerce-customer-details h2 {
    font-size: 1rem;
    font-weight: 400;
    margin: 0 0 1rem;
}

.woocommerce-order-received .woocommerce-order table.order_details thead th,
.woocommerce-order-received .woocommerce-order table.order_details thead td,
.woocommerce-order-received .woocommerce-order table.order_details tbody th,
.woocommerce-order-received .woocommerce-order table.order_details tbody td {
    padding: 0.75rem 0;
}

.woocommerce-order-received .woocommerce-order table.order_details tbody th,
.woocommerce-order-received .woocommerce-order table.order_details tbody td {
    border-top: 1px solid #eee;
}

.woocommerce-order-received .woocommerce-order table.order_details tbody tr:last-child th,
.woocommerce-order-received .woocommerce-order table.order_details tbody tr:last-child td {
    padding-bottom: 1.5rem;
}

.woocommerce-order-received .woocommerce-order table.order_details tfoot th,
.woocommerce-order-received .woocommerce-order table.order_details tfoot td {

}

.woocommerce-order-received .woocommerce-order table.order_details tfoot tr:first-child th,
.woocommerce-order-received .woocommerce-order table.order_details tfoot tr:first-child td {
    border-top: 2px dashed #ccc;
    padding-top: 1.5rem;
}

.woocommerce-order-received .woocommerce-order table.order_details ul.wc-item-meta {
    color: var(--muted-text-color);
    list-style: none;
    margin: 0;
    padding: 0;
}

.woocommerce-order-received .woocommerce-order table.order_details ul.wc-item-meta li {
    display: flex;
    flex-wrap: wrap;
}

.woocommerce-order-received .woocommerce-order table.order_details ul.wc-item-meta li strong {
    font-weight: 400;
    margin-left: 0.5rem;
}

.woocommerce-order-received .woocommerce-order table.order_details ul.wc-item-meta li p {
    margin: 0;
}


/* SHOP STYLES; END */


/* PRODUCTS LIST STYLES */

ul.products {
    background-color: #fff;
    display: flex;
    flex-wrap: wrap;
    list-style: none;
    margin: 0;
    padding: 0;
}

ul.products li.product {
    background-color: #fff;
    position: relative;
    text-align: center;
    width: 50%;
}

ul.products li.product a {
    color: inherit;
    display: block;
    padding: 1rem;
    position: relative;
    text-decoration: none;
}

ul.products li.product.featured a:after {
    background-color: #e1b12c;
    border-radius: 0.25rem;
    color: #fff;
    content: 'پیشنهاد ویژه';
    display: block;
    font-size: 0.625rem;
    padding: 0 0.25rem;
    position: absolute;
    right: 1rem;
    top: 1rem;
}

ul.products li.product .star-rating {
    left: 1rem;
    position: absolute;
    top: 1rem;
}

ul.products li.product a.add_to_cart_button {
    display: none;
}

ul.products li.product img {
    display: block;
    height: auto !important;
    margin: 0 auto 1rem;
    width: 80%;
}

ul.products li.product span.onsale {
    background-color: var(--danger-color);
    border-radius: 0.25rem;
    color: #fff;
    font-size: 0.625rem;
    padding: 0 0.25rem;
    position: absolute;
    right: 1rem;
    top: 1rem;
}

ul.products li.product.featured span.onsale {
    display: none;
}

ul.products li.product h2 {
    font-size: 0.8125rem;
    font-weight: 300;
    line-height: 1.2;
    margin: 0;
}

ul.products li.product .price {
    color: var(--primary-color);
    display: block;
    font-size: 0.8125rem;
    line-height: 1.3;
    margin: 0.25rem 0 0;
    text-align: center;
}

ul.products li.product .price del {
    display: block;
}

ul.products li.product .out-of-stock {
    color: var(--danger-color);
    display: block;
    font-size: 0.75rem;
    margin: 0.25rem 0 0;
    text-align: center;
}

ul.products li.product .out-of-stock.soon {
    color: var(--muted-text-color);
}

ul.products.subcategories li.product h2 {
    text-align: center;
}

ul.products.subcategories li.product h2 mark.count {
    display: none;
}

@media (min-width: 540px) {
    ul.products li.product {
        max-width: 33.33333%;
        min-width: 33.33333%;
    }
}

@media (min-width: 992px) {
    ul.products li.product {
        max-width: 25%;
        min-width: 25%;
    }
}

/*
 * PRODUCT CAROUSEL
 **/

.products-carousel div.box-header a {
    background-color: #eee;
    border-radius: 2rem;
    color: #777;
    display: block;
    font-size: 0.75rem;
    padding: 0 0.5rem;
    position: relative;
    z-index: 1;
}

.products-carousel ul.products {
    flex-wrap: nowrap;
    overflow-x: auto;
}

.products-carousel ul.products li.product {
    min-width: 40vw;
}

.products-carousel ul.products li.product h2 {
    font-size: 0.75rem;
}

.products-carousel ul.products li.product h4 {
    color: #999;
}

.products-carousel ul.products li.product .price {
    font-size: 0.75rem;
    line-height: 1.2;
}

@media (min-width: 678px) {
    .products-carousel ul.products li.product {
        min-width: 28vw;
    }
}

@media (min-width: 992px) {
    .products-carousel ul.products {
        flex-wrap: wrap;
        overflow-x: visible;
    }

    .products-carousel ul.products li.product {
        min-width: auto;
        width: 25%;
    }
}

/*
 * PRODUCTS FILTERS
 **/

ul.sub-categories {
    list-style: none;
    margin: 0 0 2rem;
    padding: 0;
}

ul.sub-categories li {
    line-height: 1rem;
    margin: 0;
}

ul.sub-categories li a {
    display: block;
    font-size: 1rem;
    padding: 1rem;
}

ul.woocommerce-widget-layered-nav-list {
    list-style: none;
    margin: 0;
    padding: 0;
}

ul.woocommerce-widget-layered-nav-list li {
    border-bottom: 1px dashed #eee;
    line-height: 1rem;
    margin: 0;
    position: relative;
}

ul.woocommerce-widget-layered-nav-list li .filter {
    align-items: center;
    color: inherit;
    display: flex;
    font-size: 1rem;
    padding: 1rem;
}

ul.woocommerce-widget-layered-nav-list li.chosen .filter {
    color: var(--primary-color);
}

ul.woocommerce-widget-layered-nav-list li .filter i {
    margin-left: 0.25rem;
}

ul.woocommerce-widget-layered-nav-list li .filter i.i-checkbox-checked,
ul.woocommerce-widget-layered-nav-list li.chosen .filter i.i-checkbox-unchecked {
    display: none;
}

ul.woocommerce-widget-layered-nav-list li .filter i.i-checkbox-unchecked,
ul.woocommerce-widget-layered-nav-list li.chosen .filter i.i-checkbox-checked {
    display: block;
}

@media (min-width: 992px) {
    ul.woocommerce-widget-layered-nav-list li {
        border-bottom: none;
    }

    ul.sub-categories li a,
    ul.woocommerce-widget-layered-nav-list li .filter {
        font-size: inherit;
        padding: 0.25rem 0;
    }
}


/*
 * PRODUCTS ARCHIVE PAGE HEADER
 **/

header.woocommerce-products-header {
    background-color: #fff;
    padding: 0 1rem;
}

header.woocommerce-products-header h1 {
    font-size: 1rem;
    line-height: 1.4;
    margin: 0;
}

@media (min-width: 992px) {
    header.woocommerce-products-header {
        margin-bottom: 16px;
    }

    header.woocommerce-products-header h1 {
        font-size: 1.25rem;
    }
}

div.subcategories-wrapper {
    background-color: #fff;
    padding-bottom: 2rem;
    padding-top: 2rem;
}

div.products-list-header {
    background-color: #fff;
    align-items: center;
    display: flex;
    justify-content: space-between;
    padding: 0 1rem 1rem;
}

div.products-list-header p.result-count {
    margin: 0;
}

div.products-list-header form select.orderby {
    background-position: left 0.5rem center;
    border-color: #ccc;
    font-size: 0.75rem;
    font-weight: 300;
    height: 1.5rem;
    max-height: 1.5rem;
    min-height: 1.5rem;
    padding-left: 1.5rem;
    padding-right: 0.5rem;
}

nav.woocommerce-pagination {
    margin: 1.5rem 0;
    text-align: center;
}

/* PRODUCT ARCHIVE PAGES MAIN CONTENT */

@media (min-width: 992px) {
    body.product-archive #site-content {
        max-width: 992px;
    }
}

/* PRODUCTS LAYOUT */

@media (max-width: 991px) {
    .products-layout {
        position: relative;
    }

    .products-layout .filters-open {
        border-radius: 0;
        bottom: 0;
        display: block;
        margin-top: 1rem;
        padding-bottom: 1rem;
        padding-top: 1rem;
        position: sticky;
        width: 100%;
        z-index: 99;
    }

    .products-layout .products-filters {
        background-color: rgba(0, 0, 0, 0.7);
        bottom: 0;
        display: none;
        flex-direction: column;
        left: 0;
        padding: 2.5rem 1.5rem;
        position: fixed;
        right: 0;
        top: 0;
        transition: top 300ms ease;
        z-index: 9999;
    }

    .products-layout .products-filters.visible {
        display: flex;
    }

    .products-layout .products-filters .filters-close {
        border-radius: 0;
        display: block;
        padding-bottom: 1rem;
        padding-top: 1rem;
        position: relative;
        width: 100%;
        z-index: 2;
    }

    .products-layout .products-filters .filters-overlay {
        display: none;
        flex-grow: 1;
    }

    .products-layout .products-filters .filters-wrapper {
        background-color: #fff;
        border-top: 1px solid #ddd;
        box-shadow: 0 0 100px rgba(0, 0, 0, 0.2);
        flex-grow: 1;
        overflow-y: auto;
    }

    .products-layout .products-filters .filters-wrapper .widget-title {
        background-color: #f5f5f5;
        border-bottom: 1px solid #eee;
        font-size: 1rem;
        font-weight: 400;
        margin: 0;
        padding: 1.25rem 1rem;
        position: sticky;
        top: 0;
        z-index: 1;
    }
}

@media (min-width: 992px) {
    .products-layout {
        display: flex;
    }

    .products-layout .filters-open,
    .products-layout .filters-close {
        display: none;
    }

    .products-layout .products-list {
        flex-grow: 1;
    }

    .products-layout .products-filters {
        max-width: 10rem;
        margin-left: 2rem;
        min-height: calc(100vh - 2rem);
        min-width: 10rem;
        overflow-y: auto;
        padding-right: 1rem;
    }

    .products-layout .products-filters .widget-title {
        font-size: 0.8125rem;
        font-weight: 400;
        margin: 0 0 1rem;
    }
}


/* PRODUCTS LIST STYLES; END */
