@import url('https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:ital,wght@0,200..800;1,200..800&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Roboto:ital,wght@0,100..900;1,100..900&display=swap');

:root {
    --font_regular: "Plus Jakarta Sans", serif;
    --font_semibold: "Plus Jakarta Sans", serif;
    --font_medium: "Plus Jakarta Sans", serif;
    --font_light: "Plus Jakarta Sans", serif;
    --font_bold: "Plus Jakarta Sans", serif;
    --font_icons: 'bootstrap-icons';
    --font_checkout: "Roboto", serif;
    --primary_black: #000;
    --color-link: #1d1d1d;
    --color-link-hover: #00a19a;
    --border-radius: 50px;
    --sidebar_large_width: 38%;
    --sidebar_large_width_negative: -38%;
    --sidebar_medium_width: 30%;
    --sidebar_medium_width_negative: -30%;
    --input_text_radius: 7px;
    --checkout_offset: 10%;
    --color_beige: #f6f3e7b2;
    --color_deep_beige: #cfccc2;
    --greyscale-800: #242424;
    --greyscale-700: #5A5A5A;
    --greyscale-600: #949494;
    --greyscale-500: #BBBBBB;
    --greyscale-400: #DADADA;
    --greyscale-300: #E4E4E4;
    --greyscale-200: #F0F0F0;
    --greyscale-100: #F6F6F6;
}

html {
    height: 100%;
}

body {
    -webkit-font-smoothing: subpixel-antialiased;
    color: var(--primary_black);
    height: 100%;
    background-color: #fff;
    font-optical-sizing: auto;
    font-style: normal;
    font-weight: 400;
    font-family: var(--font_regular);
    overflow-x: hidden;
}

h1, h2, h3, h4, h5 {
    font-family: var(--font_semibold);
    color: var(--greyscale-800);
    text-transform: none !important;
    letter-spacing: -0.35px;
}

h1 {
    font-size: 33px;
    line-height: 37px;
    font-weight: 600;
}

h2 {
    font-size: 29px;
    line-height: 34px;
    font-weight: 600;
}

h3 {
    font-size: 25px;
    line-height: 30px;
    font-weight: 600;
}

h4 {
    font-size: 19px;
    line-height: 22px;
    font-weight: 600;
}

h5 {
    font-size: 16px;
    line-height: 20px;
    font-weight: 600;
}

h6 {
    font-size: 14px;
    line-height: 18px;
    font-weight: 600;
}

strong, b, .font-weight-bold {
    font-weight: 600;
}

p {
    margin: 0;
}

p,li,a,.tab-pane,.tab-pane p {
    font-size: 16px;
    line-height: 27px;
    color: #1d1d1d;
    font-weight: 400;
}

a.no-border,
a.no-border:hover,
a.no-border:focus,
a.no-border:hover h3
{
    border-bottom: none;
    margin: 0;
    padding: 0;
}

#freeShipMessage {
    line-height: 22px;
}

a {
    text-decoration: none;
    transition: all 0.3s ease;
    border-bottom: 1px solid transparent;
    color: var(--color-link);
}

a:hover,
a:hover h3
{
    color: var(--color-link-hover);
    border-bottom: 1px solid var(--color-link-hover);
    transition: all 0.3s ease;
}

a.showPassword, a.showPassword:hover {
    border-bottom: none;
}

ul.checklist {
    padding-left: 0;
}

ul.checklist li {
    display: block;
    list-style: none;
    margin-left: 0;
    display: inline-flex;
    justify-content: left;
    flex-direction: row;
    gap: 7px;
    margin: 13px 0;
    line-height: 25px;
}

ul.checklist li::before {
    content: '\F26D';
    font-family: var(--font_icons);
    font-size: 20px;
    line-height: 28px;
    margin-right: 5px;
}

ul.blocklist {
    display: block;
    padding: 0;
    margin: 0;
}

ul.blocklist li {
    display: block;
    list-style: none;
    margin: 7px 0;
}

ul.blocklist a {
    border-bottom-color: transparent;
    display: flex;
    justify-content: start;
    align-items: center;
    gap: 8px;
}

ul.blocklist a .bi {
    font-size: 20px;
}

.icon_inline {
    display: flex !important;
    flex-direction: row;
    gap: 5px;
    align-items: center;
    justify-content: start;
}

.icon_inline a, .icon_inline i {
    display: inline-block;
}

.main {
    padding: 5% 3%;
    background-color: #fff;
}

.prefooter {
    background-color: var(--greyscale-800);
    padding: 50px 0;
}

.prefooter p, .prefooter li, .prefooter a, .prefooter h1 {
    color: var(--greyscale-200);
    font-family: var(--font_regular);
    border-bottom-color: transparent;
}

.prefooter p, .prefooter li, .prefooter a {
    font-size: 13px;
    line-height: 30px;
}

.prefooter h1 {
    font-size: 18px;
    line-height: 24px;
}

.prefooter ul {
    padding: 0;
}

.prefooter li {
    display: block;
    list-style: none;
    border-bottom: none;
}

.prefoter a {
    color: var(--greyscale-200);
    text-decoration: none !important;
    border-bottom-color: transparent !important;
}

.prefooter a:hover {
    border-bottom-color: var(--color-link-hover);
    color: var(--color-link-hover);
}

.prefooter .brand {
    margin-bottom: 20px;
}

.prefooter .brand img {
    width: 85%;
    max-width: 210px;
    height: auto;
}

.footer {
    background-color: var(--greyscale-200);
    padding: 13px 0;
}

.footer ul {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: row;
    margin: 0;
    /* gap: 15px; */
}

.footer ul li {
    display: inline-block;
    list-style: none;
    border-right: 1px solid var(--greyscale-700);
    line-height: 14px;
    margin-right: 10px;
    padding-right: 10px;
    text-align: center;
}

.footer ul li.first {
    padding-left: 10px;
    border-left: 1px solid var(--greyscale-700);
}

.footer ul li, .footer ul li a {
    color: var(--greyscale-700);
    font-size: 10px;
    line-height: 14px;
    text-transform: uppercase;
    font-family: var(--font_regular);
    border-bottom: none !important;
}

.footer ul li a:hover {
    color: var(--color-link-hover);
}

#head {
    position: fixed;
    left: 0;
    top: 0;
    width: 100%;
    display: block;
    /* border-bottom: 1px solid var(--greyscale-300); */
    /* background-color: #fff; */
    z-index: 7;
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(10px);
}

#head .logo {
    width: 100%;
    height: auto;
    max-width: 160px;
}

#head .navbar {
    display: block;
    text-align: center;
    margin: 0;
    padding: 0;
}

#head .navbar li {
    display: inline;
    text-align: center;
    margin: 0 7px;
}

#head .navbar li a {
    color: var(--primary_black);
    text-transform: uppercase;
    font-size: 12.5px;
    font-family: var(--font_regular);
    letter-spacing: 0.5px;
    border-bottom: none;
    transition: color 0.3s ease;
    position: relative;
    font-weight: 700;
}

#head .navbar li a:hover {
    border-bottom: none;
    color: var(--color-link-hover);
    transition: color 0.3s ease;
    position: relative;
}

#head .navbar li a.active {
    border-bottom: none;
    color: var(--color-link-hover);
    position: relative;
}

#head .navbar li a.active::after, #head .navbar li a:hover::after  {
    content: '';
    border-radius: 100%;
    background-color: var(--color-link-hover);
    display: block;
    width: 8px;
    height: 8px;
    position: absolute;
    left: 50%;
    margin-left: -4px;
}

#head .mobile_toggler {
    display: none !important;
}

#head .icon_group {
    display: flex;
    flex-direction: row;
    gap: 13px;
    justify-content: end;
    align-items: center;
}

#head .icon_group img {
    height: 25px;
    width: auto;
}

#head .icon_group li {
    list-style: none;
    display: inline-block;
}

#head .icon_group li a {
    border-bottom: none;
    transition: filter 0.3s ease;
}

a:hover img:not(.hover_disabled) {
    filter: brightness(0) saturate(100%) invert(34%) sepia(88%) saturate(2811%) hue-rotate(321deg) brightness(101%) contrast(100%);
    transition: filter 0.4s ease;
}

#head .mini_banner {
    padding: 7px;
    background-color: var(--greyscale-800);
}

#head .mini_banner p, #head .mini_banner a, #head .mini_banner {
    color: #fff;
    font-size: 11px;
    text-align: center;
    line-height: 15px;
    text-transform: uppercase;
    font-weight: 600;
    letter-spacing: 0.5px;
}

#mobile_nav ul.navbar {
    flex-direction: column;
    list-style-type: none;
    list-style: none;
}

#mobile_nav ul.navbar li {
    list-style: none;
}

#mobile_nav .close_sidebar {
    margin: 30px 0 10px 17px;
}

.sidebar.lg {
    width: var(--sidebar_large_width);
    right: var(--sidebar_large_width_negative);
}

.sidebar.md {
    width: var(--sidebar_medium_width);
    right: var(--sidebar_medium_width_negative);
}

.hr_divider {
    display: block;
    height: 3px;
    background-color: #131313;
    border-radius: 50px;
    margin: 25px 0;
}

.sideOpacity {
    width: 100%;
    right: 0;
    height: 100%;
    display: none;
    top: 0;
    background-color: #00000050;
    position: fixed;
    z-index: 10;
    opacity: 0;
    transition: all 0.4s ease;
    z-index: 3;
}

.sideOpacity.open {
    opacity: 100%;
    display: block;
}

.sidebar {
    position: fixed;
    z-index: 11;
    background-color: #fff;
    width: 24%;
    height: 96%;
    top: 2%;
    right: -24%;
    display: block;
    transition: right 0.2s ease, filter 0.2s ease;
    border-radius: 8px;
}

.sidebar.open {
    right: 1.2% !important;
}

.sidebar h1 {
    font-size: 25px;
    line-height: 30px;
    font-weight: 500;
    margin-bottom: 0;
}

.sidebar p {
    line-height: 15px;
}

.sidebar_container {
    padding: 25px;
    height: 100%;
}

.sidebar.lg .sidebar_container {
    padding: 20px 30px;
}

.sidebar_container .header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 15px;
}

.close_sidebar {
    display: flex;
    flex-direction: row;
    justify-content: end;
    border: none;
    margin-bottom: 20px;
    background-color: transparent;
    border: 1px solid transparent;
    border-radius: 100%;
    transition: all 0.3s ease;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 45px;
    aspect-ratio: 1/1;
}

.close_sidebar:hover {
    border: 1px solid #000;
    transition: all 0.3s ease;
}

.close_sidebar img {
    width: 35px;
    height: auto;
    border: 2px solid transparent;
}

.close_sidebar:hover {
    border-color: #000;
    border-radius: 100%;
    transition: all 0.3s ease;
}

.rounded {
    border-radius: 50px !important;
}

.rounded.primary {
    background-color: var(--color-link-hover);
}

.badge.rounded {
    font-size: 12px;
    line-height: 12px;
    width: 20px;
    height: 20px;
    align-items: center;
    justify-content: center;
    padding: 5px;
    display: inline-flex;
    flex-direction: row;
}

.two_columns_row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-direction: row;
    width: 100%;
    margin: 8px 0;
}

#languageSwitcher .dropdown .dropdown-menu a, #languageSwitcher .dropdown .dropdown-item a, #languageSwitcher .dropdown .dropdown-item a:hover {
    border-bottom: none;
}

#languageSwitcher .dropdown .dropdown-item img {
    width: 20px;
    height: auto;
    border-radius: 2px;
}

#languageSwitcher .dropdown .dropdown-toggle,
#languageSwitcher .dropdown-menu {
    width: 100%;
}

.dropdown.select_mode button {
    background-color: #fff;
    border: 1px solid var(--greyscale-300);
    border-radius: 6px;
    color: var(--greyscale-800);
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    font-size: 14px;
    line-height: 0px;
    height: 37px;
    border-radius: var(--border-radius);
}

.dropdown.select_mode button .icon {
    width: 25px;
    height: auto;
    border-radius: 3px;
    margin: 0;
}

.dropdown.select_mode .dropdown-menu {
    /* border-radius: 25px; */
    /* border: 1px solid var(--greyscale-300); */
    border: none;
}

.dropdown.select_mode .dropdown-menu .dropdown-item {
    font-size: 13px;
    line-height: 15px;
    padding: 8px 15px;
    border-radius: var(--border-radius);
    border: 1px solid var(--greyscale-300) !important;
    margin: 5px 0;
    font-weight: 500;
}

.dropdown.select_mode .dropdown-item:focus, .dropdown.select_mode .dropdown-item:hover, .dropdown.select_mode .dropdown-iten.active {
    background-color: var(--greyscale-100);
}

#full_width {
    width: 100%;
    display: block;
    position: relative;
    padding: 0;
    margin: 0;
}

#full_width.hero .wrapper, #full_width.banner .wrapper {
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
}

#full_width .wrapper::before {
    content: '';
    position: absolute;
    width: 100%;
    height: 100%;
    background-color: #00000075;
    top: 0;
    left: 0;
    right: 0;
    z-index: 2;
    display: block;
}

#full_width .wrapper .content {
    z-index: 3;
}

#full_width .wrapper .content h1 {
    color: #fff;
    font-family: var(--font_regular);
    font-size: 65px;
    line-height: 65px;
    letter-spacing: -2px;
}

#full_width .wrapper .content p {
    color: #fff;
    font-size: 25px;
    line-height: 35px;
}

.form-control {
    border-radius: var(--input_text_radius);
    font-size: 14px;
    line-height: 17px;
    border-color: var(--greyscale-400);
}

.form-control:focus {
    color: var(--bs-body-color);
    background-color: var(--bs-body-bg);
    border: 2px solid var(--greyscale-700);
    outline: 0;
    box-shadow: none;
}

.myCheckbox .error_label {
    padding-left: 0;
}

.checkbox_group {
    display: flex;
    flex-direction: row;
    justify-content: start;
    align-items: center;
    gap: 7px;
}

.checkbox {
    width: 18px;
    height: 18px;
    display: inline-block;
    border: 1px solid var(--primary_black);
    cursor: pointer;
    transition: all 0.3s;
}

.checkbox.checked::after {
    font-family: var(--font_icons);
    content: "\F633";
    font-size: 38px;
    line-height: 0;
    height: 100%;
    width: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    color: #199044;
    padding-bottom: 4px;
    transition: all 0.3s;
}

.form-floating {
    position: relative;
    margin: 12px 0;
}

.form-floating label {
    background-color: transparent;
    font-size: 13px;
    font-weight: 400;
    letter-spacing: normal;
}

.error_label {
    color: #f00;
    font-size: 11px;
    line-height: 14px;
    display: block;
    width: 100%;
    margin-top: 3px;
    padding-left: 7px;
    font-weight: 600;
    letter-spacing: 0.5px;
}

.showPassword {
    position: absolute;
    right: 20px;
    cursor: pointer;
    top: 12px;
    font-size: 25px;
    transition: color 0.3s;
}

.showPassword:hover, .showPassword.active {
    color: var(--color-link-hover);
    transition: color 0.3s;
}

.btn {
    text-align: center;
    font-size: 13px;
    line-height: 0;
    border-radius: var(--border-radius);
    align-items: center;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    border: 2px solid;
    font-weight: 700;
    height: 40px;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 0 20px;
    width: fit-content;
}

.btn.classic {
    border-radius: var(--input_text_radius);
    height: 58px;
}

.btn-check:checked+.btn, .btn.active, .btn.show, .btn:first-child:active, :not(.btn-check)+.btn:active {
    color: var(--primary_black);
    background-color: transparent;
    border-color: var(--primary_black);
}

.btn.disabled, .btn:disabled, fieldset:disabled .btn {
    background-color: var(--greyscale-500) !important;
    border-color: var(--greyscale-500);
    color: var(--greyscale-700);
}

.btn-primary {
    background-color: var(--primary_black);
    color: #fff;
    border-color: #1a202c;
}

.btn-primary:hover {
    border-color: var(--primary_black);
    color: var(--primary_black);
    background-color: transparent;
    border-width: 2px;
}

.btn-primary:focus {
    color: #fff;
    background-color: #1c1f23;
    border-color: #1a1e21;
    box-shadow: 0 0 0 .25rem rgba(66, 70, 73, .5);
}

.btn-outline-primary {
    background-color: #fff !important;
    color: #000
}

.btn-outline-primary:hover {
    background-color: #000 !important;
    color: #fff;
    border-color: #000;
}

.icons_group {
    display: flex;
    flex-direction: row;
    gap: 5px;
    justify-content: center;
    align-items: center;
    margin-top: 20px;
    flex-wrap: wrap;
}

.icons_group img {
    border-radius: 4px;
    width: auto;
    height: 30px;
    border: 1px solid var(--greyscale-300);
    background-color: #fff;
}
.icons_group label {
    height: 30px;
    border-radius: 4px;
    background-color: var(--greyscale-200);
    border: 1px solid var(--greyscale-300);
    text-align: center;
    display: flex;
    justify-content: center;
    align-items: center;
    text-transform: uppercase;
    font-size: 9px;
    line-height: 12px;
    font-weight: 900;
    padding: 0 10px;
    color: var(--greyscale-800);
}

.hero .btn-primary:hover {
    color: #fff;
    border-color: #fff !important;
    background-color: #ffffff15;
}

.carousel-item {
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
    position: relative;
}

.carousel-item::before {
    content: '';
    position: absolute;
    width: 100%;
    height: 100%;
    background-color: #00000035;
    left: 0;
    top: 0;
}

.carousel-indicators {
    position: absolute;
    z-index: 2;
    display: flex;
    justify-content: center;
    padding: 0;
    margin-right: 0;
    margin-left: 0;
    flex-direction: column;
    align-items: start;
    width: fit-content;
    top: 50%;
    transform: translate(-50%, -50%);
    right: 40px;
    left: auto;
    gap: 15px;
}

/* .carousel-indicators [data-bs-target] {
    margin-right: 7px;
    margin-left: 7px;
    border-top: 0;
    border-bottom: 0;
    border-radius: 30px;
    height: 8px;
    width: 1.5%;
    transition: width 0.75s;
} */

.carousel-indicators [data-bs-target] {
    /* margin-right: 7px;
    margin-left: 7px; */
    border-top: 0;
    border-bottom: 0;
    border-radius: 30px;
    height: 7px;
    width: 7px;
    transition: height 0.75s;
}

.carousel-indicators .active {
    height: 150px;
    transition: height 0.75s;
}

/* .carousel-indicators .active {
    width: 8%;
    transition: width 0.75s;
} */

.carousel-control-next-icon, .carousel-control-prev-icon {
    width: 5rem;
    height: 5rem;
}

.carousel-inner {
    display: flex;
    align-items: center;
}

.carousel-caption {
    margin-bottom: 30px;
    left: 30px;
    width: 40%;
    text-align: left;
}

.carousel-caption .btn {
    margin-top: 20px;
    padding: 12px 25px;
    font-size: 12px;
    line-height: 15px;
    letter-spacing: normal;
    letter-spacing: 0.5px;
    width: fit-content;
}

.carousel-caption h2 {
    font-size: 18px;
    line-height: 20px;
    color: #fff;
    font-family: var(--font_regular);
    text-align: left;
}

.carousel-caption h1 {
    color: #fff;
    font-family: var(--font_semibold);
    font-size: 58px;
    line-height: 58px;
    text-transform: uppercase;
    letter-spacing: -1px;
    text-align: left;
}

.product_card {
    transition: all 0.3s;
    cursor: pointer;
    background-color: #fff;
    position: relative;
    display: flex;
    border: 1px solid transparent;
    margin: 10px 0;
    border-radius: 7px;
    border: 1px solid var(--greyscale-300);
    flex-direction: column;
    align-items: center;
    justify-content: space-between;
}

.product_card:hover {
    border: 1px solid var(--greyscale-800);
}

.product_card button.heart {
    position: absolute;
    right: 20px;
    top: 15px;
    font-size: 20px;
    line-height: normal;
    border-bottom: none;
    transition: all 0.2s;
    z-index: 2;
    border: 0;
    padding: 0;
    background-color: transparent;
}

.product_card .heart:hover {
    border-bottom: none;
    color: #f00;
}

.product_card .bi-suit-heart-fill {
    color: #f00;
    transition: color 0.2s
}

.product_card .bi-suit-heart-fill:hover {
    color: #000;
}

.product_card .image {
    width: 100%;
    aspect-ratio: 1/1;
    padding: 10px;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
    border: none;
    position: relative;
    display: block;
    border-radius: 7px 7px 0 0;
}

.product_card .pricing {
    display: flex;
    left: 10px;
    bottom: 0;
    flex-direction: column;
    gap: 7px;
    transition: all 0.3s;
    position: absolute;
}

.product_card:hover .pricing {
    bottom: 10px;
}

.product_card .pricing .label {
    background-color: #fff;
    width: fit-content;
    padding: 5px;
    font-size: 13px;
    line-height: 13px;
    font-family: var(--font_regular);
    display: inline;
    font-weight: 700;
    transition: all 0.2s ease;
}

.product_card .pricing .label .listino {
    text-decoration: line-through !important;
    color: var(--greyscale-600) !important;
    margin-right: 10px;
    font-weight: 600;
}

.product_card .pricing .label .scontato {
    font-size: 15px !important;
    font-family: var(--font_medium) !important;
    color: var(--color-link-hover) !important;
    font-weight: 900;
}

.product_card:hover .pricing .label {
    border-radius: 50px;
}

.product_card .body {
    padding: 15px;
}

.product_card .body h1 {
    font-family: var(--font_medium) !important;
    font-size: 15px;
    line-height: 20px;
}

.product_card .body p {
    font-size: 14px;
    line-height: 18px;
    font-weight: 500;
}

h1.divider {
    text-align: center;
    margin-bottom: 70px;
    font-family: var(--font_medium);
    text-transform: uppercase;
    font-size: 30px;
    line-height: 35px;
    letter-spacing: -0.5px;
    position: relative;
}

h1.divider::after {
    content: '';
    width: 100px;
    height: 3px;
    background-color: #000;
    position: absolute;
    display: block;
    left: 50%;
    margin-left: -50px;
    margin-top: 27px;
    border-radius: 50px;
}

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

h1.divider.left::after {
    margin-left: 0;
    left: 0
}

.modal .modal-content {
    border-radius: 20px;
    border: none;
}

.modal .modal-body {
    padding: 30px !important;
}

.modal .modal-body h4 {
    font-size: 20px;
    line-height: 25px;
    font-family: var(--font_medium);
    margin-bottom: 18px;
}

.modal .modal-body p {
    font-size: 16px;
    line-height: 22px;
    padding-bottom: 15px;
}

.modal .btn-close {
    position: absolute;
    top: -15px;
    right: -15px;
    width: 30px;
    height: 30px;
    background-color: #fff;
    border-radius: 50px;
    opacity: 1;
    border: 2px solid transparent;
    z-index: 2;
    transition: all 0.3s ease;
}

.modal .btn-close:hover {
    border-width: 2px;
    border-color: #000;
}

.modal .btn-close:focus {
    box-shadow: 0 0 0 0.25rem #00000070;
}

.modal .icon-title {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    text-align: center;
    gap: 10px;
}

.modal .icon-title img {
    width: 70px;
    height: auto;
}

.toast {
    box-shadow: none;
    border-radius: 0;
    border-color: #000;
    background-color: #fff;
    position: fixed;
    bottom: 20px;
    right: auto;
    left: 20px;
    top: auto;
    max-width: 65%;
    z-index: 100;
}

.toast .close_toast_btn {
    color: #000;
    font-size: 20px;
    line-height: 0;
    border-bottom: none;
    transition: opacity 0.2s;
}

.toast .close_toast_btn:hover {
    opacity: 0.3;
}

.toast .toast-body p {
    font-size: 13px;
    line-height: 16px;
}

.toast.success {
    background-color: rgb(1, 158, 37);
    border-color: rgb(1, 158, 37);
}

.toast.error {
    background-color: #f00;
    border-color: #f00;
}

.toast.success .toast-body, .toast.error .toast-body {
    color: #fff !important;
}

.toast.success .close_toast_btn, .toast.error .close_toast_btn {
    color: #fff !important;
}

.h-200 {
    height: 200px !important;
}

.icon {
    display: flex;
    justify-content: center;
    align-items: center;
    margin-bottom: 30px;
}

.icon img {
    width: 100px;
    height: auto;
}

.iconGroup {
    margin-top: 50px;
    width: 80%;
    margin-left: 10%;
}

.iconGroup .item {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    gap: 10px;
}

.iconGroup .item .icon {
    height: 50px;
    width: auto;
}

.iconGroup .item p {
    text-transform: uppercase;
    font-family: var(--font_semibold);
    color: #000;
    text-align: center;
    line-height: 16px;
    font-size: 12px;
}

#whatsapp {
    position: fixed;
    bottom: 20px;
    left: 20px;
    z-index: 2;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 7px;
}

#whatsapp span {
    display: block;
    text-align: center;
    font-size: 12px;
    text-transform: uppercase;
    color: #25D366;
    font-family: var(--font_medium)
}

#whatsapp a {
    font-size: 25px;
    line-height: 0;
    color: #fff !important;
    border-radius: 100%;
    padding: 20px;
    background-color: #25D366;
    width: 50px;
    height: 50px;
    display: flex;
    justify-content: center;
    align-items: center;
    border: 2px solid #25D366;
    cursor: pointer;
}

#whatsapp a:hover {
    background-color: #fff !important;
    color: #25D366 !important;
}

.breadcrumb {
    padding: 10px 13px;
    margin: 0;
    border-bottom: 1px solid var(--greyscale-300);
    border-top: 1px solid var(--greyscale-300);
    background-color: #fff;
}

.breadcrumb-item, .breadcrumb-item a {
    font-family: var(--font_regular);
    font-size: 12px;
    line-height: 14px;
    color: var(--greyscale-800);
    border-bottom: none;
    font-weight: 500;
}

.breadcrumb-item a:hover {
    color: var(--color-link-hover);
    border-bottom: none;
}

.breadcrumb-item.active {
    font-family: var(--font_semibold);
    color: var(--greyscale-900);
    text-transform: uppercase;
    font-weight: 900;
}

.relative {
    position: relative;
}

.label_red {
    background-color: #f00;
    border-radius: 100%;
    padding: 0;
    width: 15px;
    height: 15px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    font-size: 10px;
    line-height: 0;
    font-family: var(--font_medium);
    position: absolute;
    top: -7px;
    right: -7px;
}

u, .underline {
    text-decoration: none;
    border-bottom: 1px solid;
}

#prodSearchFrm .row {
    /* --bs-gutter-x: 0 */
}

.hidden_desk {
    display: none;
}

#product_gallery {
    display: block;
    width: 100%;
}

#product_gallery a {
    transition: all 0.3s ease;
}

.variants a img,
.variants a
{
    border-bottom: none;
}

#product_gallery a:hover img,
.variants a:hover img,
.variants a:hover {
    filter: grayscale(100%);
    border-bottom: none !important;
    text-decoration: none !important;
}

#product_gallery img.cover {
    width: 100%;
    height: auto;
    border-right: 2px solid #fff;
    border-bottom: 2px solid #fff;
    border-radius: 10px;
}

#product_gallery a {
    border-bottom: none;
    transition: all 0.3s;
}

#product_gallery a:hover .thumb {
    filter: grayscale(100%);
}

#product_gallery .thumbs {
    display: flex;
    flex-direction: row;
    overflow-x: auto;
    overflow-y: hidden;
    width: 100%;
    justify-content: start;
    transition: all 0.3s ease;
    scroll-behavior: smooth;
    gap: 10px;
    padding: 0 10px 0 0;
}

#product_gallery .thumbs .thumb {
    height: 80px;
    width: auto;
    border: 1px solid #eaeaea;
    margin: 7px 0;
}

#product_gallery .thumb.active {
    padding: 3px;
    border: 1px solid #000;
}

.variants {
    margin-top: 20px;
    margin-bottom: 20px;
    border: 1px solid var(--greyscale-300);
    border-radius: 0;
    padding: 15px;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: row;
}

.variants img.cover {
    width: 100%;
    max-width: 200px;
    height: auto;
}

.variants .qty_container {
    justify-content: end;
    display: flex;
    align-items: center;
    flex-direction: row;
    gap: 13px
}

.flex_row_view {
    display: flex;
    justify-content: start;
    align-items: center;
    gap: 40px;
    flex-direction: row;
    flex-wrap: wrap;
}

.flex_row_view .item {
    padding: 10px;
    background-color: var(--greyscale-100);
    border-radius: 5px;
    border: none;
    transition: all 0.3s;
    width: fit-content;
    text-align: center;
    width: fit-content;
    /* flex-wrap: wrap; */
    /* flex-basis: 70px; */
    min-width: 70px;
    padding-left: 15px !important;
    padding-right: 15px !important;
}

.flex_row_view button.item {
    text-transform: uppercase;
    background-color: #fff;
    border: 1px solid var(--greyscale-600);
    color: var(--greyscale-800);
    padding: 6px;
    border-radius: var(--border-radius);
    font-size: 12px !important;
    font-weight: 700;
    letter-spacing: 0.5px;
    height: 30px;
    line-height: 12px;
}

.flex_row_view button.item:hover, .flex_row_view button.item.active {
    color: #fff;
}

.flex_row_view button.item:hover {
    background-color: #000;
}
.flex_row_view button.item.active {
    background-color: var(--color-link-hover);
    color: #fff;
    border-color: var(--color-link-hover);
}

.txt-mini {
    font-size: 13px;
    line-height: 15px;
}

.variants h5 {
    font-family: var(--font_regular);
    font-size: 16px;
}

.variants h5.price {
    font-family: var(--font_semibold)
}

.variants .btn.add_to_cart_variant {
    height: 38px;
    padding: 0;
    font-size: 18px;
    line-height: 0px;
    line-height: 0;
    border-radius: 50px;
    font-weight: 700;
    aspect-ratio: 1/1;
}

.variants .btn.add_to_cart_variant span {
    display: none;
}

.accordion-button:not(.collapsed) {
    background-color: #eaeaea60 !important;
}

.pagination {
    padding-top: 30px;
    gap: 7px;
    justify-content: center;
}

.pagination .page-item.active .page-link {
    color: #fff;
    background-color: #000;
}

.pagination .page-link:focus {
    box-shadow: 0 0 0 0.25rem #00000030;
}

.pagination .page-link {
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    border-radius: 100%;
    width: 40px;
    aspect-ratio: 1/1;
    border-color: #b5b5b5;
    color: #666;
    cursor: pointer;
}

.pagination .page-link:hover {
    background-color: transparent;
    color: #000;
    border-color: #000;
}

.def_price {
    color: var(--greyscale-600);
    text-decoration: line-through;
    color: var(--color-link-hover);
    font-family: var(--font_semibold);
    font-size: 12px;
    line-height: 12px;
}

.plus_minus {
    border: 1px solid #e4e4e4;
    border-radius: 50px;
    height: fit-content;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: row;
    padding: 0 10px;
    width: 120px;
}

.plus_minus input {
    border: none;
    height: 38px !important;
    width: 30px !important;
    font-size: 14px;
    line-height: 0;
    font-weight: 700;
}

.plus_minus .btn {
    /* aspect-ratio: 1/1; */
    padding: 0;
    line-height: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    border: none;
    font-family: var(--font_regular);
    font-size: 20px;
    font-weight: 500;
}

.plus_minus .btn:hover {
    color: var(--color-link-hover)
}

.plus_minus .form-control {
    height: 45px;
    text-align: center;
}

.plus_minus .input-group {
    width: 100px !important;
}

.tab_container {
    padding: 30px 0;
}

.tab-pane {
    padding: 20px 8px;
}

.nav-tabs .nav-link {
    font-size: 15px;
    line-height: 20px;
    font-weight: 600;
    color: var(--greyscale-900);
    letter-spacing: 0.5px;
}

.nav-tabs .nav-link.active {
    color: var(--color-link-hover);
}

.shopping_bag {
    position: relative;
}

.shopping_bag img {
    height: 30px !important;
    width: auto;
}

.shopping_bag #item_number {
    position: absolute;
    color: var(--color-link-hover);
    font-weight: 900;
    font-size: 11px;
    line-height: 0;
    text-align: center;
    /* border: 1px solid #000; */
    height: 30px;
    bottom: 0;
    left: 0;
    width: 30px;
    display:flex;
    justify-content: center;
    align-items: end;
    padding-bottom: 10px;
    background-color: transparent;
}

.space {
    display: block;
    height: 40px;
}

#pricing {
    padding-bottom: 20px;
    display: flex;
    justify-content: start;
    flex-direction: row;
    align-items: center;
    gap: 10px;
}

#pricing .prezzo {
    font-family: var(--font_semibold);
    font-size: 16px;
    line-height: 20px;
    text-align: center;
    font-weight: 700;
}

#pricing .listino, .listino {
    color: var(--greyscale-600);
    text-decoration: line-through;
    font-size: 16px;
    line-height: 20px;
    text-align: center;
    font-weight: 600;
}

#pricing label {
    background-color: var(--color-link-hover);
    padding: 0 15px;
    color: #FFF;
    margin-right: 10px;
    font-size: 13px;
    line-height: 0;
    font-weight: 900;
    height: 28px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: fit-content;
    flex-direction: row;
    border-radius: 50px;
}

#add_to_cart {
    width: 100%;
    height: 40px;
    justify-content: center;
    align-items: center;
    display: flex;
    /* padding: 0 10px; */
    font-size: 12px !important;
    font-weight: 700;
    letter-spacing: 0.5px;
}

.owl-nav {
    display: flex;
    justify-content: center;
    flex-direction: row;
    align-items: center;
    gap: 8px;
    margin-top: 20px;
}

.owl-nav [class*='owl-'] {
    border-radius: 100%;
    height: 50px;
    width: 50px;
    background-color: transparent;
    border: 1px solid var(--greyscale-500);
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: row;
    transition: all 0.3s ease;
    color: var(--greyscale-500);
    font-size: 20px;
    background-color: #fff;
}

.owl-nav [class*='owl-']:hover {
    border-color: #000;
    transition: all 0.3s ease;
    color: #000;
}

#cartList {
    max-height: 70%;
    height: fit-content;
    overflow-y: auto;
    overflow-x: hidden;
    padding-top: 5px;
}

#cartList .cart_item .thumbnail {
    width: 100%;
    height: auto;
}

#cartList .cart_item {
    margin-bottom: 30px;
}

#cartList .cart_item h1 {
    font-size: 17px;
    line-height: 18px;
    margin-bottom: 10px;
    font-weight: 600;
}

#cartList .cart_item p {
    font-size: 15px;
    line-height: 22px;
    font-weight: 500;
}

#cartList .cart_item .listino {
    font-size: 14px !important;
    text-decoration: line-through;
    color: var(--greyscale-700);
    font-weight: 400;
}

#cartList .cart_item .prezzo {
    font-size: 15px;
    font-weight: 700;
}

#cartList .cart_item .remove {
    font-weight: 600;
    font-size: 11px;
    letter-spacing: 0.5px;
}

#quickCart .btn-lg, .btn-lg {
    height: 55px;
}

#quickCart .footer {
    max-height: 25%;
    height: fit-content;
    width: 100%;
    bottom: 30px;
    left: 0;
    position: absolute;
    background-color: #fff;
    padding: 0 35px;
    border-radius: 8px;
    z-index: 5;
}

#quickCartTotal {
    font-weight: 500;
}

#quickCart .hr_divider {
    height: 2px;
    margin: 15px 0;
}

a.text-danger:hover,
a.text-danger:focus {
    color: #000 !important;
    border-color: #000 !important;
}

.cart_detail {
    margin-top: 50px;
}

.cart_detail .head {
    margin-bottom: 32px;
    padding-bottom: 32px;
    border-bottom: 1px solid var(--greyscale-400);
}

.cart_detail .head h1 {
    font-size: 20px;
    line-height: 25px;
    font-weight: 600;
    margin-bottom: 0;
}

.cart_item_detail {
    margin: 0 0 50px 0;
}

.cart_item_detail h1 {
    font-size: 18px;
    line-height: 23px;
}

.cart_item_detail p {
    font-size: 13px;
    line-height: 13px;
}

.cart_detail .thumbnail {
    width: 100px !important;
    aspect-ratio: 1/1 !important;
}

.card {
    border-radius: 7px;
}

.card.default {
    border: none;
    background-color: var(--greyscale-100)
}

.card.default .card-body {
    padding: 30px;
}

.card.beige {
    background-color: var(--color_beige);
    border-color: var(--color_deep_beige);
}

#totalCartCard {
    position: sticky;
    top: 150px;
    padding-left: 50px;
}

.cart_item_detail .qty_group {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    gap: 10px;
}

#checkout {
    background-color: var(--greyscale-200);
    padding: 0 0 0 0;
    margin: 0;
    font-family: var(--font_checkout);
}

#checkout p,
#checkout h1,
#checkout h2,
#checkout h3,
#checkout h4,
#checkout h5,
#checkout h6,
#checkout a,
#checkout li {
    font-family: var(--font_checkout);
    letter-spacing: normal;
}

#checkout .space {
    height: 20px;
}

#checkout h4 :not('.modal-dialog h4') {
    margin-bottom: 0;
}

#checkout .main_row {
    background-color: var(--greyscale-200);
    background-color: var(--greyscale-100);
}

#checkout .main {
    padding: 0;
    margin: 0;
}

#checkout .head {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-direction: row;
    height: 130px;
    padding: 0 50px;
    border-bottom: 1px solid var(--greyscale-300);
    z-index: 5;
    background-color: #fff;
}

#checkout .head .logo {
    width: 200px;
    height: auto;
}

#checkout .head a.icon {
    border-bottom: none;
    text-decoration: none;
    margin-bottom: 0;
}

#checkout .head a.icon:hover {
    border-bottom: none;
    text-decoration: none;
}

#checkout .head a.icon img {
    height: 30px !important;
    width: auto !important;
    filter: opacity(30%);
}

#checkout .head a.icon:hover img {
    filter: opacity(100%);
    filter: brightness(none);
}

#checkout .left {
    min-height: calc(100vh - 140px);
    background-color: #fff;
    border-right: 1px solid var(--greyscale-300);
}

#checkout .right {
    position: relative;
}

#checkout .wrapper {
    width: 630px !important;
    padding: 20px !important;
    transition: all 0.3s ease !important;
    max-width: 100%;
}

#checkout .left .wrapper {
    float: right;
}

#checkout .right .wrapper {
    float: left;
    position: sticky;
    top: 0;
    margin: 0;
}

#checkout p :not('.modal-dialog p') {
    font-size: 14px;
    line-height: 20px;
    color: var(--greyscale-700);
}

#checkout h5 {
    line-height: 20px;
}

#checkout .summary {
    transition: all 0.3s ease !important;
    height: auto;
}

#checkout .summary .checkoutItem {
    margin: 20px 0;
    display: flex;
    justify-content: space-between;
    flex-direction: row;
    gap: 10px;
    align-items: start;
}

#checkout .summary .checkoutItem.listRow {
    display: flex;
    justify-content: space-between;
    flex-direction: row;
    padding: 0;
    margin: 0 0 8px 0;
}

#checkout .summary .checkoutItem .caption {
    display: flex;
    align-items: center;
    gap: 24px;
}

#checkout .summary .checkoutItem .thumb {
    position: relative;
    /* width: 100%; */
    width: 15%;
}

#checkout .summary .checkoutItem .thumb .bedge {
    position: absolute;
    width: 25px;
    height: 25px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    background-color: var(--greyscale-700);
    color: #fff;
    right: -10px;
    top: -10px;
    border-radius: 50px;
    font-size: 13px;
    font-weight: 800;
    line-height: 0;
}

#checkout .summary .checkoutItem .thumb img {
    width: 100%;
    height: auto;
    border: 1px solid var(--greyscale-400);
    border-radius: 7px;
}

#checkout .summary .checkoutItem p {
    font-size: 15px !important;
    line-height: 22px !important;
    font-weight: 400 !important;
    color: #000;
}

#checkout .summary .checkoutItem.listRow h4.totalContainer {
    text-align: right;
}

.shippingCostPrice {
    text-align: right !important;
}

#checkout .summary_head {
    display: none;
}

#checkout .form-floating>label {
    font-size: 15px;
    font-weight: 400 !important;
}

#checkout .form-control:focus,
#checkout .form-control,
#checkout .form-select,
#checkout .form-select:focus {
    font-size: 17px;
}

#checkout .form-control:focus,
#checkout .form-select:focus {
    border-color: var(--greyscale-800);
    border-width: 1px;
    outline: 0;
    box-shadow: 0 0 0 .25rem #0000002e;
}

#checkout .btn {
    font-size: 15px;
    letter-spacing: 1px;
}

#menuBackofficeAccordion .accordion-body {
    padding: 0;
}

#menuBackofficeAccordion li {
    padding: 0;
    margin: 0;
}

#backoffice_navbar .blocklist li {
    border-bottom: 1px solid #eaeaea;
}

#backoffice_navbar .blocklist li.last {
    border-bottom: none;
    padding-bottom: 0;
}

#backoffice_navbar .blocklist li a {
    display: block;
    padding: 5px 15px;
}

#backoffice_navbar .blocklist li a:hover {
    background-color: #eaeaea40;
}

.accordion-button:not(.collapsed) {
    color: var(--greyscale-800);
    /*background-color: var(--color_beige);*/
    box-shadow: inset 0 calc(-1* var(--bs-accordion-border-width)) 0 var(--bs-accordion-border-color);
}

.accordion-body {
    border-top:  1px solid #dee2e6;
}

.accordion-button:focus {
    box-shadow: none;
}

#paymentsMethod .accordion-button,
#billingDataAccordion .accordion-button {
    padding: 10px 15px;
}

.span_divider {
    display: block;
    width: 100%;
    position: relative;
    height: 1px;
    background-color: var(--greyscale-300);
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: row;
    margin: 40px 0;
}

.span_divider span {
    background-color: #fff;
    font-size: 13px;
    text-align: center;
    color: var(--greyscale-800);
    display: inline-block;
    width: fit-content;
    padding: 5px 20px;
    line-height: 20px;
    text-transform: uppercase;
}

.flex_row {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: row;
    gap: 10px;
    width: 100%;
}

.megamenu {
    position: fixed;
    width: 100%;
    left: 0;
    right: 0;
    background-color: #fff;
    padding: 50px;
    max-height: 70%;
    height: fit-content;
    z-index: 7;
    border-top: 1px solid #eaeaea;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    box-shadow: 0px 10px 30px rgb(107 107 107 / 10%);
    transition: opacity 0.2s ease, visibility 0.2s ease;
    display: flex;
    justify-content: space-around;
    flex-direction: row;
    gap: 30px;
    flex-wrap: wrap;
    overflow: auto;
}

.megamenu > * {
    flex: 1 1 calc(15% - 30px); /* 👈 Ogni elemento occuperà circa 1/3 della larghezza, meno il gap */
    min-width: 200px; /* 👈 Evita che gli elementi diventino troppo piccoli */
}

.megamenu.show {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
}

.megamenu .nav-item {
    margin-bottom: 20px;
}

.megamenu .nav-item h1 {
    font-size: 22px;
    line-height: 23px;
    position: relative;
    display: block;
    width: 100%;
    text-align: left;
}

.megamenu .nav-item h1::after {
    content: '';
    height: 2px;
    background-color: var(--greyscale-800);
    left: 0;
    width: 25%;
    display: block;
    margin-top: 15px;
    margin-bottom: 15px;
}

.megamenu .nav-item ul {
    padding: 0;
    margin: 0;
}

.megamenu .nav-item ul li {
    display: block;
    list-style: none;
    line-height: 23px;
}

.megamenu .nav-item ul li a {
    border: none;
    font-size: 16px;
    line-height: 18px;
    color: var(--greyscale-700);
}

.megamenu .nav-item ul li a:hover {
    border: none;
    margin-left: 7px;
}

.scrolling-text {
    white-space: nowrap;
    overflow: hidden;
    display: block;
    animation: scroll 10s linear infinite;
}

.opacity {
    position: absolute;
    width: 100%;
    height: 100%;
    background-color: #00000030;
    left: 0;
    top: 0;
    z-index: 1;
}

.video-wrapper {
    width: 100%;
    aspect-ratio: 16/9;
    position: relative;
    z-index: 0;
}

.video-wrapper iframe {
    width: 100%;
    height: 100%;
}

.play-button {
    width: 80px;
    aspect-ratio: 1/1;
    position: absolute;
    z-index: 2;
    left: 50%;
    top: 50%;
    margin-left: -40px !important;
    margin-top: -40px !important;
    padding: 0;
    margin: 0;
    background-color: transparent;
    border: none;
    transition: all 0.3s ease;
}

.play-button:hover,
.play-button:focus {
    width: 90px;
    margin-left: -45px !important;
    margin-top: -45px !important;
    transition: all 0.3s ease;
}

.play-button img {
    width: 100%;
    height: 100%;
    z-index: 3;
}

.video-poster {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    margin: 0;
}

.video-thumb {
    border: none;
    padding: 0;
    margin: 0;
    background-color: transparent;
    width: 100%;
    aspect-ratio: 2/1.2;
    display: flex;
    align-items: center;
    justify-content: center;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    transition: all 0.3s ease;
    position: relative;
}

.video-thumb:hover,
.video-thumb:focus
{
    filter: grayscale(100%);
}

#video_thumb_carousel .video-thumb {
    width: 300px;
    height: 180px;
}

#video_thumb_carousel .video-thumb img {
    width: 70px;
}

@keyframes scroll {
    from {
        transform: translateX(100%);
    }
    to {
        transform: translateX(-100%);
    }
}

.flash-effect {
    animation: flash 3s infinite;
}

.hero {
    background-position: center center;
    background-size: cover;
    background-repeat: no-repeat;
    width: 100%;
    height: 50%;
    position: relative;
    z-index: 1;
}

.hero .caption  {
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    background-color: #00000040;
    z-index: 2;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
}

.hero .caption h1 {
    color: #fff;
    font-size: 45px;
    font-weight: 400;
}

.hero .caption h1::after {
    background-color: #fff;
}

@keyframes flash {
    0% { opacity: 1; }
    10% { opacity: 0; } /* Breve flash */
    20% { opacity: 1; } /* Torna visibile */
    100% { opacity: 1; } /* Attende 2 secondi prima di ripetersi */
}

.focus {
    background-color: var(--greyscale-100);
}

.sticky-top-50 {
    position: sticky;
    top: 0;
    z-index: 3;
    background-color: #fff;
}

@media(max-width: 425px) {  
    .accordion-button {
        font-size: 14px;
        line-height: 20px;
        font-weight: 500;
    }

    #menuBackofficeAccordion {
        margin-bottom: 30px;
    }

    .hero {
        height: 300px;
    }

    #cartList .cart_item .plus_minus {
        height: fit-content;
    }

    #cartList .cart_item .plus_minus .btn {
        height: 35px;
    }

    #cartList .cart_item .plus_minus input.form-control {
        height: 35px !important;
    }

    #cartList .cart_item h1 {
        font-size: 17px;
        line-height: 20px;
        margin-bottom: 10px;
        font-weight: 600;
    }

    #totalCartCard {
        padding-left: 0;
    }

    .main {
        padding-top: 50px;
        padding-bottom: 50px;
    }

    .carousel-caption .btn {
        font-family: var(--font_medium);
        font-size: 13px;
    }

    .carousel-caption h1 {
        font-size: 45px !important;
        line-height: 45px !important;
    }

    .carousel-caption h2 {
        font-size: 17px;
    }

    .iconGroup {
        width: 90%;
        margin-left: 5%;
    }

    .iconGroup .item {
        margin: 15px 0;
    }

    .modal .modal-content {
        left: 8%;
        width: 84%;
    }

    .btn {
        padding: 15px 30px;
    }

    .icon {
        margin-bottom: 25px;
    }

    .icon img {
        width: 80px;
    }

    .prefooter .brand img {
        width: 45% !important;
    }

    .breadcrumb-item, .breadcrumb-item a {
        font-size: 11.5px;
        line-height: 12px;
    }

    .lang_switcher {
        display: none !important;
    }

    .sidebar.fullwidth {
        border-top: 1px solid  #dee2e6;
    }

    .hr_divider {
        height: 3px !important;
    }

    #checkout .right .wrapper {
        padding-top: 30px !important;
        padding-bottom: 30px !important;
        top: unset;
        bottom: unset;
    }

    #checkout .checkoutItem {
        padding: 0 5px !important;
    }

    p {
        font-size: 13px;
        line-height: 22px;
    }
}

@media(max-width: 768px) {
    #cartList .cart_item .listino {
        font-size: 13px !important;
    }

    #cartList .cart_item .prezzo {
        font-size: 15px
    }

    #cartList .cart_item .remove {
        font-weight: 600;
        font-size: 11px;
        text-transform: uppercase;
        letter-spacing: 0.5px;
    }

    .prefooter .item {
        padding-bottom: 7px;
        margin-bottom: 15px;
        border-bottom: 1px solid var(--greyscale-300);
    }

    #head .logo {
        max-width: 100%;
    }

    .sidebar {
        width: 100% !important;
        right: -100% !important;
    }

    .sidebar.open {
        right: 0 !important;
    }

    .sidebar::after {
        width: 0;
        display: none;
    }

    .sidebar.lg .sidebar_container {
        padding: 25px;
    }

    .carousel-indicators {
        right: 15px;
        gap: 20px;
    }

    .carousel-indicators .active {
        height: 85px;
    }

    .carousel-caption {
        margin-bottom: 10px;
        bottom: 0;
        width: 75% !important;
    }

    p, li, a {
        font-size: 16px;
        line-height: 25px;
    }

    h1.divider {
        margin-bottom: 40px;
        font-size: 22px;
        line-height: 25px;
    }

    h1.divider::after {
        margin-top: 18px;
    }

    .form-floating>label {
        font-size: 13px;
        font-weight: 400 !important;
    }

    #btnSave {
        width: 100%;
    }

    .prefooter .brand img {
        width: 25% !important;
    }

    .owl-nav {
        margin-top: 15px;
    }

    .owl-nav [class*='owl-'] {
        height: 40px;
        width: 40px;
        font-size: 17px;
    }

    .cart_item_detail .qty_group {
        margin-top: 20px;
    }

    .cart_item_detail .qty_group {
        flex-direction: row;
    }

    #checkout .wrapper {
        width: 100% !important;
        padding: 10px !important;
        float: none !important;
    }

    #checkout .summary .checkoutItem {
        margin: 25px 0;
    }

    #checkout .summary .checkoutItem .thumb .bedge {
        height: 18px;
        width: 18px;
        font-size: 12px;
        top: -10px;
        right: -10px;
    }

    #checkout .summary .checkoutItem h3 {
        font-size: 17px;
        line-height: 19px;
        margin-bottom: 5px;
    }

    #checkout .summary .checkoutItem p {
        font-size: 15px !important;
        line-height: 15px;
        font-weight: 400 !important;
    }

    #checkout .summary .checkoutItem.listRow {
        padding: 0 10px !important;
    }
}

@media(max-width: 1024px) {
    #video_thumb_carousel .video-thumb {
        width: 200px;
        height: 110px;
    }
    
    #video_thumb_carousel .video-thumb img {
        width: 50px;
    }

    h1 {
        font-size: 21px;
        line-height: 25px;
    }

    p {
        font-size: 15px;
        line-height: 22px;
        font-weight: 400;
    }

    h5 {
        font-size: 14px;
        line-height: 20px;
    }
    
    .text-center-mobile {
        text-align: center;
    }

    #productAccordion {
        border-radius: 0;
        border: none;
    }

    #productAccordion .accordion-item {
        border: none;
    }

    #productAccordion .accordion-header {
        margin-bottom: 0;
        border-radius: 0
    }

    #productAccordion .accordion-button {
        background-color: #fff;
        font-size: 18px;
        line-height: 22px;
        border-bottom: none;
        font-weight: 600;
        border-radius: 0;
        padding: 7px 20px;
        border-color: var(--greyscale-400);
    }

    #productAccordion .accordion-body {
        padding: 0;
    }

    #productAccordion .accordion-body ul {
        padding: 0;
        margin: 0;
        display: block;
    }

    #productAccordion .accordion-body ul li {
        display: block;
        list-style: none;
        padding: 3px 30px;
        border-bottom: 1px solid var(--greyscale-400);
    }

    #productAccordion .accordion-body ul li a {
        font-size: 16px;
        line-height: 35px;
        border-bottom: none;
        font-weight: 500;
    }

    #checkout {
        padding: 200px 0 0 0;
    }

    #head .mobile_toggler {
        display: block !important;
        border: none;
        background-color: transparent;
        float: right;
    }

    #head .icon_group {
        gap: 8px;
    }

    #mobile_nav {
        z-index: 8;
        width: 96%;
        right: -104%;
        transition: all 0.3s ease;
    }

    .sidebar.open {
        width: 96% !important;
        right: 2% !important;
        /* left: 2% !important; */
    }

    #mobile_nav ul.navbar {
        flex-direction: column;
        list-style-type: none;
        list-style: none;
    }

    #mobile_nav ul.navbar li {
        display: block;
        width: 100%;
        border-bottom: 1px solid var(--greyscale-400);
        padding: 7px 20px;
        list-style: none;
    }

    #mobile_nav ul.navbar li.first {
        border-top: 1px solid var(--greyscale-400);
    }

    #mobile_nav ul.navbar li a {
        font-size: 18px;
        line-height: 22px;
        border-bottom: none;
        font-weight: 600;
    }

    #mobile_nav::after {
        content: '';
        display: none;
    }

    .modal .modal-body {
        padding: 18px !important;
    }

    .display_desk {
        display: none !important;
    }

    .hidden_desk {
        display: block;
    }

    /* #product_gallery .thumbs {
        flex-direction: row;
        overflow-x: auto;
        white-space: nowrap;
        box-sizing: border-box;
        width: 100%;
        justify-content: center !important;
        margin: 15px 0;
        gap: 10px !important;
    }

    #product_gallery .thumbs .thumb {
        width: 100% !important;
        height: auto;
        border: 1px solid #eaeaea;
    } */

    .btn {
        font-size: 11px;
        line-height: 15px;
        letter-spacing: 0.5px;
        padding-right: 30px;
        padding-left: 30px;
        height: 40px;
        display: flex;
        justify-content: center;
        align-items: center;
    }

    .variants {
        flex-direction: row;
    }

    .variants img.cover {
        margin-bottom: 20px;
    }

    /*.variants .cover {*/
    /*    width: 40% !important;*/
    /*    margin-left: 30%;*/
    /*}*/

    .variants .flex_row_view {
        justify-content: center;
        margin-bottom: 15px;
        gap: 20px;
    }

    .variants .qty_container {
        justify-content: center;
    }

    #checkout .wrapper {
        width: 100% !important;
    }

    #checkout .checkoutItem {
        padding: 0 10px !important;
        margin: 15px 0 !important;

    }

    #checkout .left,
    #checkout .right {
        float: none !important;
    }

    #checkout .right {
        padding-left: 0 !important;
        padding-right: 0 !important;
    }

    #checkout .right .wrapper {
        padding: 10px !important;
        display: none;
        height: 0 !important;
        position: relative !important;
        transition: all 0.3s ease !important;
    }

    #checkout .right .wrapper.visible {
        display: block;
        height: auto !important;
        max-height: 500px;
        overflow-y: auto;
        transition: all 0.3s ease !important;
    }

    #checkout .left {
        padding-top: 30px;
    }

    #checkout .summary_head {
        border-bottom: 1px solid var(--greyscale-300);
        display: flex;
        justify-content: space-between;
        align-items: center;
        flex-direction: row;
        padding: 20px;
        background-color: var(--greyscale-200);
        position: fixed;
        top: 130px;
        width: 100%;
        left: 0;
        right: 0;
        z-index: 5;
    }

    #checkout .summary_head h3 {
        margin-bottom: 0;
        font-size: 24px;
    }

    #checkout .summary_head a {
        border-bottom: none;
        margin-bottom: 0;
        font-weight: 600;
    }

    #checkout .summary_head a:hover {
        color: var(--color-link-hover) !important;
    }

    #checkout .head {
        position: fixed;
        z-index: 5;
        width: 100%;
        left: 0;
        right: 0;
        top: 0;
    }
}
