/*
Theme Name: VibGroup Theme
Theme URI: https://und3fined.it/
Template: generatepress
Author: Gabriele Visconti
Author URL: https://und3fined.it/
Description: Questo tema è stato realizzato dal developer team di Vib. G.V
Tags: two-columns,three-columns,one-column,right-sidebar,left-sidebar,footer-widgets,blog,e-commerce,flexible-header,full-width-template,buddypress,custom-header,custom-background,custom-menu,custom-colors,sticky-post,threaded-comments,translation-ready,rtl-language-support,featured-images,theme-options
Version: 1.52
Updated: 2025-04-30 16:41:41
*/


/* --------------------------------------------
    Typografy
-------------------------------------------- */
body{
      font-size: clamp(14px, 0.83vw, 16px);
      line-height: clamp(24px,1.35vw, 26px);
      font-family: "figtree";
      position: relative;
      background: #fff;
    }
.no-scroll{
   overflow: hidden;
}

.figtree{
   font-family: "Figtree", sans-serif;
}
.block--title__80 {
    font-size: clamp(34px, 4.16vw, 80px);
    line-height: clamp(44px, 4.68vw, 90px);
}
.block--title__90 {
    font-size: clamp(34px, 4.68vw, 90px);
    line-height: clamp(44px, 5.72vw, 110px);
}
.block--title__40 {
    font-size: clamp(18px, 2.07vw, 40px);
}
.block--title__50 {
    font-size: clamp(34px, 2.59vw , 50px);
}

/* --------------------------------------------
    Global
-------------------------------------------- */
.site {
    /*transition: padding-top 1s ease;*/
}

html{
   scroll-behavior: smooth;
}

#to-the-top {
    display: flex;
    background-color: #11111173;
    width: 50px;
    height: 50px;
    border-radius: 25px 0 0 25px;
    position: fixed;
    bottom: 10%;
    right: 0;
    transition: background-color .3s, opacity .5s, visibility .5s;
    opacity: 0;
    visibility: hidden;
    z-index: 1000;
    justify-content: center;
    align-items: center;
}
a#to-the-top svg {
    width: 20px;
    height: 20px;
    fill: #fff;
    transition: 300ms;
}

#to-the-top:hover {
	cursor: pointer;
	background-color: #333;
}

#to-the-top:active {
	background-color: #555;
}

#to-the-top.show {
	opacity: 1;
	visibility: visible;
}

/* --------------------------------------------
    Header
-------------------------------------------- */
.small-header-wrapper {
    background: #DFDED2;
    color: #151515;
    padding: 10px 0;
}
.marquee-wrapper {
  width: 100%;
  overflow: hidden;
  position: relative;
  white-space: nowrap;
  display: flex;
  align-items: center;
}
.marquee-track {
    height: max-content;
    line-height: 1;
}
.marquee-text {
  display: inline-block;
  padding-left: 15%;
  animation: scroll-left 15s linear infinite;
  font-size: clamp(13px,0.82vw, 16px);
  line-height: 1;
}
@media(min-width: 1025px){
    .marquee-text {
        padding-left: 25%;
    }
}

@keyframes scroll-left {
  0% {
    transform: translateX(0%);
  }
  100% {
    transform: translateX(-100%);
  }
}

.header-content-wrapper {
    padding: 20px 0;
}
.header-logo-wrapper a {
    display: flex;
    transition: 300ms;
}
.header-logo-wrapper svg {
    transition: 300ms;
    max-width: 130px;
    height: auto;
}
.header-search-icon, .header-profile-icon, .header-cart-icon,.header-profile-icon a {
    display: flex;
}
.header-actions-wrapper svg,.header-search-icon.mobile svg{
   cursor: pointer;
   fill: #151515;
   transition: 300ms;
   height: 18px;
   width: 18px;
}
.header-actions-wrapper svg:hover,.header-search-icon.mobile svg:hover{
   transition: 300ms;
   opacity: 0.50;
}
.header-burger-wrapper {
    width: 25px;
    height: 15px;
    display: flex;
    gap: 6px;
    flex-direction: column;
    position: relative;
    transition: 300ms;
    cursor: pointer;
}
.header-burger-wrapper span {
    height: 1px;
    width: 100%;
    display: flex;
    background: #151515;
    transition: 300ms;
}
.header-content-wrapper {
    display: flex;
    justify-content: space-between;
    max-width: 90%;
    margin: 0 auto;
    align-items: center;
    transition: 300ms;
    top: 20px;
}
.header-actions-wrapper {
    display: flex;
    gap: 15px;
    justify-content: flex-end;
    align-items: center;
    flex: 0 1 25%;
}
.header-menu-wrapper {
    display: flex;
    flex: 0 1 25%;
    gap: 15px;
    align-items: center;
}
.header-logo-wrapper {
    display: flex;
    flex: 0 1 50%;
    justify-content: center;
}
.header-logo-wrapper path {
    fill: #151515;
    transition: 300ms;
}

.header-actions-wrapper .header-lang-selector,.header-actions-wrapper .header-search-icon{
   display: none;
}
.header-menu-wrapper .header-search-icon.mobile{
   display: flex;
}

.header-sidemenu-wrapper.active {
    left: 0px;
    transition: 500ms;
}
.header-sidemenu-head {
    display: flex;
    gap: 20px;
    padding: 25px 5%;
    align-items: center;
    border-bottom: 1px solid #DFDED2;
    width: 100%;
    justify-content: space-between;
    z-index: 20;
}
.header-sidemenu-head .sidemenu-logo a {
    display: flex;
}
.header-sidemenu-head .sidemenu-logo svg {
    max-width: 200px;
    height: auto;
    fill: #151515;
}
.header-sidemenu-head .sidemenu-logo path {
    fill: #151515;
}
.sidemenu-close-button {
    width: 25px;
    height: 15px;
    display: flex;
    flex-direction: column;
    gap: 6px;
    position: relative;
    transition: 300ms;
    cursor: pointer;
}
.sidemenu-close-button span{
   background: #151515;
   height: 1px;
   width: 100%;
   display:flex;
}
.sidemenu-close-button span:first-child{
   position: absolute;
   top: 50%;
   transform:rotate(-45deg);
}
.sidemenu-close-button span:last-child{
   position: absolute;
   top: 50%;
   transform:rotate(45deg);
}
.header-sidemenu-body {
    padding: 40px 5%;
    height: 100%;
}
.header-sidemenu-footer {
    padding: 40px 5% 120px;
    background: #151515;
}
.glass-overlay:after {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    display: flex;
    background: #000;
    display: flex;
    content: '';
    z-index: 15;
    opacity: 0.4;
    transition: 300ms;
}
.glass-overlay .header-content-wrapper, .glass-overlay .small-header-wrapper, .glass-overlay .site,.glass-overlay .site-footer,.glass-overlay .header-main-wrapper {
    transition: 300ms;
    filter: blur(15px);
}
.header-special-menu ul {
    margin: 0px;
    display: flex;
    align-items: center;
    list-style: none;
    gap: 20px;
}
.header-special-menu{
   display: none;
}
.header-special-menu a {
    display: flex;
    line-height: 1em;
    text-decoration: none;
    color: #151515;
    transition: 300ms;
}
.header-special-menu a:hover {
    opacity: 0.60;
    transition: 300ms;
}
.header-sidemenu-body .menu {
    margin: 0;
    list-style: none;
    display: flex;
    flex-direction: column;
    gap: 10px;
}
.header-sidemenu-body .menu a{
   transition: 300ms;
   text-decoration: none;
}
.header-sidemenu-body .menu > li > a {
    padding-bottom: 14px;
    border-bottom: 1px solid #DFDED2;
    display: flex;
    align-items: center;
    position: relative;
}
.header-sidemenu-body .menu-item-has-children > a{
   transition: 300ms;
   justify-content: space-between;
   gap: 20px;
}
.menu-item-has-children.open > a {
    transition: 300ms;
    padding-bottom: 0px !important;
    border-bottom: 0px !important;
}
.header-sidemenu-body .menu-item-has-children.open > a {
    transition: 300ms;
    padding-bottom: 0px !important;
    border-bottom: 0px !important;
}
.header-sidemenu-body .menu-item-has-children.open > a:before{
   transform: rotate(0deg);
   transition: 300ms;
}

.header-sidemenu-body .menu-item-has-children > a:after {
    content: '';
    cursor: pointer;
    background: #151515;
    width: 15px;
    height: 1px;
    display: flex;
    transition: 300ms;
    position: absolute;
    right: 0;
}
.header-sidemenu-body .menu-item-has-children > a:before {
    content: '';
    cursor: pointer;
    background: #151515;
    width: 15px;
    height: 1px;
    transform: rotate(90deg);
    display: flex;
    transition: 300ms;
    position: absolute;
    right: 0;
}
.header-sidemenu-body ul.sub-menu {
    padding: 20px 0;
    margin: 0;
    list-style: none;
    display: none;
}
.header-sidemenu-body a {
    color: #151515;
}
.header-sidemenu-body a:hover {
    transition: 300ms;
    opacity: 0.5;
}
.header-sidemenu-body ul.sub-menu li{
   margin-bottom: 14px;
   display: flex;
}
.header-sidemenu-body ul.sub-menu li:last-child{
   margin-bottom: 0px;
}
.header-sidemenu-footer {
    display: flex;
    flex-direction: column;
    gap: 15px;
}
.header-sidemenu-footer ul {
    margin: 0px;
    display: flex;
    gap: 15px;
    flex-direction: column;
    list-style: none;
}
.header-sidemenu-footer a {
    transition: 300ms;
    text-decoration: none;
    color: #fff;
}
.header-sidemenu-footer a:hover {
    transition: 300ms;
    opacity: 0.6;
}
.header-sidemenu-footer .header-lang-selector {
    color: #fff;
}
.header-sidemenu-wrapper {
    background: #fff;
    height: 100vh;
    position: fixed;
    top: 0;
    left: -1000px;
    width: 100%;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    transition: 500ms;
    z-index: 200;
}
.header-content-main.not_home {
    background: #fff;
    border-bottom: 1px solid #DFDED2;
    transition: 400ms;
    z-index: 20;
    top: 0px;
}
@media(min-width: 376px){
   .header-logo-wrapper svg {
      max-width: 160px;
   }
   .header-actions-wrapper svg{
      height: 22px;
      width: 22px;
   }
}
@media(min-width: 601px){
   .header-sidemenu-wrapper {
    max-width: 550px;
}
}
@media(min-width: 1025px){
    .header-sidemenu-footer {
        padding: 40px 5%;
        background: #151515;
    }
   .header-content-main.sticky.is-fixed-done .header-content-wrapper{
      transition: 500ms;
      padding: 20px 0;
   }

   .header-special-menu{
      display: flex;
   }
   .header-content-wrapper {
      padding: 30px 0;
   }
   .header-logo-wrapper svg {
      max-width: 200px;
   }
   .header-menu-wrapper,.header-actions-wrapper {
      gap: 25px;
   }
   
   .header-actions-wrapper .header-lang-selector,.header-actions-wrapper .header-search-icon{
      display: flex;
   }
   .header-menu-wrapper .header-search-icon.mobile{
      display: none;
   }
}
@media(min-width: 1921px){
    .header-content-wrapper {
        max-width: 1720px;
        transition: 300ms;
    }
}
@media(max-width: 1024px){
   .header-sidemenu-wrapper.active {
      overflow-y: auto;
   }
}
/* Header home */
.header-special-menu .strong {
    font-weight: bold;
}
.header-sidemenu-body .strong > a {
    font-weight: bold;
}
.header-main-wrapper.is_home .header-content-wrapper {
    background: transparent;
}
.header-main-wrapper.is_home {
    position: fixed;
    width: 100%;
    color: #fff;
}
.header-main-wrapper.is_home {
    position: absolute;
    width: 100%;
    color: #fff;
    z-index: 100;
}
.header-main-wrapper.is_home .header-special-menu a{
   color: #fff;
}
.header-main-wrapper.is_home .header-burger-wrapper span{
   background: #fff;
}
.header-main-wrapper.is_home .header-actions-wrapper svg,
.header-main-wrapper.is_home .header-actions-wrapper path,
.header-main-wrapper.is_home .header-search-icon.mobile svg,
.header-main-wrapper.is_home .header-search-icon.mobile path{
   fill: #fff;
}
.header-main-wrapper.is_home .header-logo-wrapper svg,.header-main-wrapper.is_home .header-logo-wrapper path{
   fill: #fff;
}
.header-main-wrapper.is_home .header-logo-wrapper svg {
  max-width: 90vw;
  transition: width 3.01s ease-out;
}
.header-main-wrapper.is_home.stop-animation .header-logo-wrapper svg {
  transition: none;
}
.header-main-wrapper.is_home .header-logo-wrapper {
    position: relative;
}
.header-main-wrapper.is_home .header-logo-wrapper a {
    position: absolute;
    transition: width 0.05s ease-out, top 0.01s ease-out;
    transform: translate(-50%,-50%);
    left: 50%;
}

.header-main-wrapper.is_home.stop-animation .header-logo-wrapper a {
  transition: none;
}
.header-main-wrapper.is_home.stop-animation .header-logo-wrapper a {
  transition: none;
}

.header-main-wrapper.is_home .header-logo-wrapper.is-fixed-done a {
  position: static;
  transform: none;
  top: auto;
  left: auto;
}
.search-box-wrapper.active input.search-field {
    color: #fff;
}
@media(min-width: 1025px){
    .search-bar-wrapper {
        margin: 0 0 auto;
    }
  .header-main-wrapper.is_home .header-logo-wrapper svg {
   max-width: 50vw;
   transition: width 0.01s ease-out;
   } 
}

/* sticky */
.header-content-main.sticky {
    position: fixed;
    transition: 500ms;
    width: 100%;
    top: 0;
    z-index: 99;
}
.header-main-wrapper.is_home .header-content-main.sticky.is-fixed-done{
   background: #fff;
   transition: 300ms;
}
.header-main-wrapper.is_home .header-content-main.sticky.is-fixed-done .header-special-menu a,
.header-main-wrapper.is_home .header-content-main.sticky.is-fixed-done .header-lang-selector{
   color: #151515;
}
.header-main-wrapper.is_home .header-content-main.sticky.is-fixed-done .header-burger-wrapper span{
   background: #151515;
}
.header-main-wrapper.is_home .header-content-main.sticky.is-fixed-done .header-actions-wrapper svg,
.header-main-wrapper.is_home .header-content-main.sticky.is-fixed-done path,
.header-main-wrapper.is_home .header-content-main.sticky.is-fixed-done .header-search-icon.mobile svg,
.header-main-wrapper.is_home .header-content-main.sticky.is-fixed-done .header-search-icon.mobile path
{
   fill: #151515;
}
.header-main-wrapper.is_home .header-content-main.sticky.is-fixed-done .header-logo-wrapper svg,
.header-main-wrapper.is_home .header-content-main.sticky.is-fixed-done .header-logo-wrapper path{
   fill: #151515;
}

.search-box-wrapper.active {
    width: 100vw;
    height: 100vh;
    background: #00000061;
    z-index: 150;
    position: fixed;
    display: flex;
    justify-content: center;
    align-items: center;
    transition: 300ms;
    opacity: 1;
}
.search-box-wrapper {
    position: fixed;
    z-index: -1000;
    width: 100vw;
    height: 100vh;
    top: 0;
    opacity: 0;
    transition: 500ms;
    left: 0;
    display: flex;
    padding: 5%;
}
.search-close-button {
    width: 35px;
    height: 15px;
    position: relative;
    display: flex;
    cursor: pointer;
}
.search-close-button span{
   width: 100%;
   height: 1px;
   background: #fff;
   transition: 300ms;
   display: flex;
   position: absolute;
   top: 50%;
}
.search-close-button span:first-child{
   transform: rotate(45deg);
}
.search-close-button span:last-child{
   transform: rotate(-45deg);
}
.saerchbar-content {
    display: flex;
    align-items: center;
    gap: 20px;
}
.searchbar-label {
    color: #fff;
    margin-bottom: 8px;
}
.saerchbar-content form.search-form, .saerchbar-content label {
    width: 100%;
}
.saerchbar-content label {
    position: relative;
}
.search-bar-wrapper {
    width: 100%;
    max-width: 560px;
}
.saerchbar-content input {
    width: 100%;
    padding-left:60px;
    border-radius: 40px;
}
.saerchbar-content button.search-submit {
    position: absolute;
    left: 0;
    background: unset;
    width: 50px;
}
.search-header-wrapper .saerchbar-content button.search-submit svg {
    fill: #151515;
    font-size: 20px;
}
/* --------------------------------------------
   Footer
-------------------------------------------- */
.footer-main-wrapper {
    background: #151515;
    color: #fff;
}
.footer-main-wrapper {
    padding-bottom: 40px;
}
.footer-socials {
    display: flex;
    gap: 15px;
    align-items: center;
    justify-content: center;
    transition: 300ms;
}
.footer-socials a{
    display: flex;
}
.footer-socials svg{
    fill: #FFFFFF;
    transition: 300ms;
    width: 22px;
    height: 22px;
}
.footer-label h5 {
    text-transform: uppercase;
    font-size: clamp(18px, 1.03vw, 20px);
}
.footer-label {
    margin-bottom: 20px;
}
.footer-description {
    margin-bottom: 20px;
}
.footer-menus-wrapper {
    display: flex;
    justify-content: space-between;
    flex-direction: column;
    max-width: 100%;
    gap: 60px;
}
.footer-menu-content ul {
    margin: 0px;
    list-style: none;
    display: flex;
    flex-direction: column;
    gap: 13px;
}
.footer-menu-content a,.footer-legal-information a {
    color: #fff;
    text-decoration: none;
    transition: 300ms;
    line-height: 1;
}
.footer-menu-content li {
    line-height: 1;
}
.footer-menu-content a:hover,.footer-legal-information a:hover {
    color: #DFDED2;
    transition: 300ms;
    text-decoration: underline;
}
.footer-row-with-separator {
    padding-bottom: 19px;
    border-bottom: 1px solid #ffffff3b;
    margin-top: clamp(60px, 7.8vw, 150px);
}
.footer-legal-information {
    font-size: 14px;
    text-wrap: balance;
}
.payments-icons {
    display: flex;
    justify-content: center;
}
.footer-logo-wrapper svg, .footer-logo-wrapper a {
    width: 100%;
    height: 100%;
}
.footer-socials a:hover svg{
    fill: #DFDED2;
    transition: 500ms;
}
.footer-logo-wrapper a {
    display: flex;
}
.footer-logo-wrapper {
    padding-top: 60px;
    opacity: 0.6;
}
.footer-label h5,.footer-menus-wrapper,.footer-row-with-separator,.footer-row-with-separator img,.footer-description{
    text-align: center;
}
.footer-menus-wrapper {
    margin-top: 20px;
    margin-bottom: 20px;
}
@media(min-width: 768px) and (max-width: 1024px){
    .payments-icons {
        display: flex;
        justify-content: flex-start;
    }
    .footer-label h5,.footer-menus-wrapper,.footer-row-with-separator,.footer-row-with-separator img,.footer-description{
        text-align: left;
    }
    .footer-menus-wrapper {
        display: grid;
        grid-template-columns: 1fr 1fr;
        max-width: unset;
        gap: 60px;
    }
    .footer-socials {
        justify-content: flex-start;
        transition: 300ms;
    }
}
@media(min-width: 1025px){
    .footer-menus-wrapper {
        margin-top: 0px;
        margin-bottom: 0px;
    }
    .footer-label h5,.footer-menus-wrapper,.footer-row-with-separator,.footer-row-with-separator img,.footer-description{
        text-align: left;
    }
    .footer-socials {
        justify-content: flex-start;
        transition: 300ms;
    }
    .footer-description.figtree {
        /* text-wrap: balance; */
        max-width: 425px;
    }
    .payments-icons {
        display: flex;
        justify-content: flex-end;
    }
}
@media(min-width: 1025px) and (max-width: 1333px){
    .footer-menus-wrapper {
        display: grid;
        grid-template-columns: 1fr 1fr;
        max-width: max-content;
        margin: 0 0 0 auto;
        gap: 60px;
    }
}

@media(min-width: 1334px){
    .footer-menus-wrapper {
        display: flex;
        justify-content: space-between;
        flex-direction: row;
        max-width: 93%;
        margin: 0 0 0 auto;
    }
}

/* --------------------------------------------
   About
-------------------------------------------- */

.fluid-section-text {
    transition: 300ms;
    margin: 0 5%;
    padding: 80px 0;
}
.fluid-section-text .block--paragraph {
    margin-top: 20px;
}
.fluid-section-text .block--subtitle{
    color: #DFDED2;
    font-weight: 300;
}
.fluid-section-text,.fluid-section-text h1, .fluid-section-text h2,.fluid-section-text h3{
    text-align: center;
}
.section-fluid-with-text.row--reverse .row--fluid{
    direction: rtl;
}
.section-fluid-with-text.row--reverse .column{
    direction: ltr;
}
.section-fluid-with-text.row--reverse-onlymobile .row--fluid{
  display: flex;
  flex-direction: column-reverse;
}
.block--button .block--button__full{
    padding: 18px 20px;
    text-decoration: none;
    text-align: center;
    color: #fff;
    transition: 300ms;
    background: #151515;
    line-height: 1em;
    text-transform: uppercase;
    font-size: 14px;
    min-width: 150px;   
}
.block--button .block--button__full:hover{
    color: #fff;
    transition: 300ms;
    background: #666;
}

.block--button .block--button__outline {
    padding: 18px 20px;
    text-decoration: none;
    text-align: center;
    color: #151515;
    transition: 300ms;
    border: 1px solid #151515;
    line-height: 1em;
    text-transform: uppercase;
    font-size: 14px;
    min-width: 150px;
}
.block--button .block--button__outline:hover {
    color: #fff;
    transition: 300ms;
    border: 1px solid #151515;
    background: #151515;
}
.fluid-section-text .block--button{
    margin-top: clamp(40px, 3.12vw, 60px);
    margin-left: auto;
    margin-right: auto;
}
.section-mission {
    background: #DFDED2;
    z-index: 5;
}
.mission-text-wrapper {
    display: flex;
    align-items: center;
    flex-direction: column;
    gap: 30px;
    text-align: center;
    transition: 300ms;
}
.row-mission-margin {
    margin-top: clamp(60px, 15.63vw, 300px);
}
.section-mission .block--title h3{
    text-align: centeR;
    text-wrap: balance;
}
.row-absolute-image {
    margin-top: 60px;
    text-align: center;;
}
.hide-image-on-mobile .row--fluid .column:last-child {
    display: none;
}
.column.column-flex {
    display: flex;
}
.column.column-image img{
    object-fit: cover;
    width: 100%;
}
.section-background .section-background-text {
    color: #fff;
    margin: 0 5%;
}
.section-background .section-background-text {
    color: #151515;
}
.section-background .section-background-text .block--paragraph {
    margin-top: 20px;
}
.column-image {
    display: flex;
}

.border-radius-variation .block--image {
    border-radius: 50%;
    max-width: 90%;
    margin: 0 auto;
    overflow: hidden;
}
.border-radius-variation .block--image img {
    object-fit: contain !important;
}
.border-radius-variation .block--title {
    text-wrap: balance;
}
@media(min-width: 1025px){
    .section-fluid-with-text .block--image img {
        object-fit: cover;
    }
    .border-radius-variation .block--image {
        max-width: 75%;
    }
    .column-image {
        display: none;
    }
    .section-background .section-background-text {
        color: #fff;
    }
    .hide-image-on-mobile .row--fluid .column:last-child {
        display: flex;
    }
    .section-mission .block--title {
        text-wrap: balance;
        max-width: 750px;
    }
    .row-absolute-image {
        position: absolute;
        left: 5%;
        bottom: clamp(60px, 7.80vw, 150px);
        max-width: max-content;
        width: max-content;
    }
    .section-mission .block--title h3{
        text-align: left;
    }
    .fluid-section-text .block--button{
        margin-left: 0;
        margin-right: 0;
    }
    .section-fluid-with-text.row--reverse-onlymobile .row--fluid{
        display: grid;
        flex-direction: unset;
    }
    .fluid-section-text,.fluid-section-text h1, .fluid-section-text h2,.fluid-section-text h3{
        text-align: left;
    }
}
@media(min-width: 1025px) and (max-width: 1333px){
    .section-background .section-background-text {
        color: #fff;
        max-width: 50%;
        margin: 0 10% 0 auto;
    }
    .mission-text-wrapper {
        display: flex;
        align-items: center;
        flex-direction: row;
        gap: 30px;
        max-width: 70%;
        margin: 0 0 0 auto;
        text-align: left;
    }
    .fluid-section-text {
        max-width: 80%;
        margin: auto;
    }  
}
@media(min-width: 1334px){
    .border-radius-variation .fluid-section-text {
        max-width: 62%;
    }
    .section-background .section-background-text {
        max-width: clamp(300px, 32vw, 630px);
        margin: 0 10% 0 auto;
    }
    .fluid-section-text {
        max-width: 60%;
        margin: auto;
    }
    .mission-text-wrapper {
        flex-direction: row;
        max-width: clamp(400px, 38vw, 730px);
        transition: 300ms;
        margin: 0 0 0 auto;
        text-align: left;
    }
}

@media(min-width: 1921px){
    .fluid-section-text {
        max-width: 58%;
        margin: auto;       
    }
    .section-background .section-background-text {
        color: #fff;
        max-width: clamp(300px, 32vw, 630px);
        margin: 0 5% 0 auto;
    }
    .row-absolute-image {
        position: absolute;
        left: 50%;
        bottom: clamp(60px, 7.80vw, 150px);
        max-width: 1720px;
        width: 90%;
        text-align: left;
        transform: translateX(-50%);
    }
}
@media(max-width: 1024px){
    .section-background{
        background-image: unset !important;
        background-color: #fff!important;
        color: #151515;
    }
    .section-background {
        padding: 0;
    }
    .section-background .section-background-text {
        margin-bottom: 80px;
        margin-top: 80px;
        text-align: center;
    }
    .section-background .section-background-text h3{
        text-align: center;
    }
    .border-radius-variation{
        padding: 0;
    }
}
/* --------------------------------------------
   Newsletter
-------------------------------------------- */

.newsletter_custom_fs .block--title h1 {
    font-size: clamp(34px, 3.64vw, 70px);
}

.contact_form_input input, .contact_form_input select, .contact_form_message textarea {
    background: transparent;
    border-radius: 30px;
    border: 1px solid #15151530;
    padding: 12px 25px;
    color: #151515;
    width: 100%;
}
.contact_form_input input::placeholder,
.contact_form_input select,
.contact_form_input.contact_form_upload input{
    color: #858584;
}
.contact_form_input select{
     appearance: none;         /* Standard */
  -webkit-appearance: none; /* Safari/Chrome */
  -moz-appearance: none;
  position: relative;
}

.contact_form_input.contact_form_select span:after {
    content: '';
    display: flex;
    background-image: url(/wp-content/uploads/2025/07/arrow-down-select.svg);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
    width: 15px;
    height: 15px;
    position: absolute;
    right: 20px;
    top: 50%;
    transform: translate(0%,-50%);
}

.contact_form_optin {
    margin: 20px;
    text-align: left;
    font-size: 12px;
}

.contact_form_optin span.wpcf7-list-item {
    margin: 0 0 4px;
}
.contact_form_optin a{
    transition: 300ms;
    color: unset;
}
.contact_form_optin a:hover{
    transition: 300ms;
    text-decoration: underline;
}
span.required_span {
    font-weight: bold;
}

.contact_form_fields {
    display: flex;
    flex-direction: column;
    gap: 20px;
    overflow: hidden;
}
.newsletter_custom_fs .column.column-flex {
    display: block;
}

.contact_form_action input {
    background: #151515;
    text-align: center;
    max-width: 180px;
    font-size: 14px;
    text-transform: uppercase;
    line-height: 1;
    padding: 16px 22px;
    width: 100%;
    transition: 300ms;
}
.contact_form_action p {
    display: flex;
    justify-content: center;
    overflow: hidden;
    flex-direction: column-reverse;
    align-items: center;
}
@media(min-width: 1025px){
    .contact_form_optin {
        margin: 20px 0;
    }
    .contact_form_action p {
        display: flex;
        justify-content: flex-start;
        overflow: hidden;
        flex-direction: column-reverse;
        align-items: flex-start;
    }
    .contact_form_action input {
        background: #151515;
        text-align: center;
        max-width: 180px;
        font-size: unset;
        text-transform: uppercase;
        line-height: 1;
        padding: 16px 22px;
        width: 100%;
        transition: 300ms;
    }
}

/* --------------------------------------------
   Contact
-------------------------------------------- */
.contact-information-wrapper {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    text-align: center;
    text-wrap: balance;
}
.contact-information-wrapper .block--icon img {
    height: 60px;
    width: 60px;
}
.contact-information-wrapper .block--title{
    margin: 15px 0 20px;
    line-height: 1;
}
.block--contacts-information a {
    color: #151515;
    text-decoration: none;
    transition: 300ms;
    display: block;
}
.block--contacts-information a:hover {
    text-decoration: underline;
    transition: 300ms;
}
.block--contacts-information {
    font-size: clamp(18px, 1.14vw, 22px);
    text-wrap: balance;
    max-width: 80%;
    margin: 0 auto;
}
.block--contacts-information span{
    display:block;
}
.contact-information-wrapper .block--title h4 {
    font-size: clamp(24px, 1.55vw, 30px);
}
.row-contacts,.row-map {
    margin-top: clamp(60px, 7.80vw, 150px);
}
.row-map {
    filter: grayscale(1);
}
.map-iframe-wrapper {
    display: flex;
}
@media(max-width: 1024px){
    .row-contacts{
        gap: 80px;
    }
    .row-map{
        width: 100%!important;
        max-width: 100%!important;
    }
    .section-contact-information {
        padding-bottom: 0px;
    }
}

.block--title__70 {
    font-size: clamp(34px, 3.64vw, 70px);
}

.contact_form_grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 20px;
    margin-bottom: 30px;
}
.contact_form_message textarea {
    max-height: 120px;
    overflow-y: auto;
}
.contact_form_wrapper {
    margin-top: 40px;
}
.newsletter_custom_fs .contact_form_wrapper {
    margin-top: 40px;
}
.centered-form-text {
    text-wrap: balance;
}
.centered-form-text .block--paragraph {
    margin: 20px auto 0;
    text-wrap: unset;
}
.section-centered-form .block--paragraph {
    max-width: 800px!important;
}
@media(min-width: 1025px){
    .contact_form_wrapper {
        margin-top: 80px;
    }
    .newsletter_custom_fs .contact_form_wrapper {
        margin-top: 20px;
    }
    .reseller-section .contact_form_grid.grid-tre {
        grid-template-columns: 1fr 1fr 1fr;
    }
    .centered-form-text .block--paragraph {
        margin: 20px auto;
        max-width: 500px;
        text-wrap: unset;
    }
        .contact_form_grid {
        grid-template-columns: 1fr 1fr;
    }
    .contact_form_wrapper, .map-iframe-wrapper {
        max-width: 90%;
        margin-left: auto;
        margin-right: auto;
    }
    .section-centered-form{
        padding-top: 0px!important;
        padding-bottom: clamp(60px, 7.80vw, 150px)!important;
    }
    .reseller-section{
        padding-top: clamp(60px, 7.80vw, 150px) !important;
    }
}

.footer-trust-badge{
    background: #F3F3F3;
    padding: 40px 0;
}
.trust-badge-icon img {
    width: clamp(40px, 4.16vw, 80px);
    height: clamp(40px, 4.16vw, 80px);
}
.trust-badge-icon {
    margin-bottom: 10px;
}
.trust-badge {
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    align-items: center;
    max-width: 150px;
    text-align: center;
    text-wrap: balance;
    margin: 0 auto;
    line-height: 1.4;
}
.footer-trust-wrapper.desktop {
    display: none;
}

.cms-template .block--title {
    margin-bottom: 60px;
}
@media(min-width: 769px) and (max-width: 1024px){
    .footer-trust-wrapper.desktop {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 60px;
        align-items: center;    
    }
}
.footer-trust-wrapper{
    display: none;
}
@media(max-width: 768px){
    .footer-trust-wrapper{
    display: block;
}
}
@media(min-width: 1025px){
    .footer-trust-wrapper{
        display: none;
    }
    .footer-trust-wrapper.desktop {
        display: flex;
        justify-content: space-between;
        align-items: center;    
    }
    .footer-trust-badge{
        padding: 60px 0;
    }
}
@media(max-width: 1024px){
    .trust-badge-icon img {
        width: 60px;
        height: 60px;
    }
    .footer-trust-badge .column {
        overflow: hidden;
    }
    .footer-trust-wrapper ul.splide__pagination.splide__pagination--ltr {
        position: unset;
        padding-top: 30px;
    }
    .footer-trust-wrapper button{
        width: 15px;
        height: 15px;
    }
}

/* --------------------------------------------
   Blog
-------------------------------------------- */
.blog-thumbnail-wrapper{
    overflow: hidden;
    border-radius: 30px;
}

.blog-thumbnail-wrapper a {
    display: flex;
    transition: 300ms;
    height: 100%;
    width: 100%;
    overflow: hidden;
}
.blog-thumbnail-wrapper a:hover img{
    transition: 300ms;
    transform: scale(1.05);
}
.blog-thumbnail-wrapper img {
    transition: 500ms;
    height: 100%;
    width: 100%;
}
.blog-post-body .block-title {
    margin-top: 30px;
}
.blog-post-body .block-title a {
    font-size: clamp(24px, 1.45vw, 28px);
    line-height: 1.4em;
    font-family: 'Playfair Display';
    text-decoration: none;
    color: #151515;
    transition: 300ms;
    padding-right: 20px;
    text-wrap: balance;
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
}
.blog-post-body .block-title a:hover {
    transition: 300ms;
}
.blog-post-body .block--paragraph {
    max-width: unset !important;
    text-align: left!important;
    margin: 20px auto 0;
}

.index-loop-wrapper {
    display: grid;
    grid-template-columns: 1fr;
    gap: 60px;
    row-gap: 80px;
    margin-top: clamp(60px, 5.20vw, 100px);
}
.blog-button a {
    font-style: italic;
    text-transform: uppercase;
    transition: 300ms;
    color: unset;
    text-decoration: none;
}
.blog-button a:hover {
    transition: 300ms;
    text-decoration: underline;
}
.blog-button {
    margin-top: 20px;
}
.section-index .blog-post-pagination {
    display: none;
}
.infinite-scroll-request.loader {
    max-width: 100px;
    margin: 30px auto 0;
    display: none;
    justify-content: center;
    align-items: center;
    text-align: center;
    animation: pulseLoader 1.2s ease-in-out infinite;
}
.infinite-scroll-request.loader span {
    font-size: 12px;
    letter-spacing: 1px;
    opacity: 0.5;
}
.infinite-scroll-last,.infinite-scroll-error {
    text-align: center;
    margin-top: 60px;
}
@keyframes pulseLoader {
    0% {
        transform: scale(1);
        opacity: 1;
    }
    50% {
        transform: scale(1.1);
        opacity: 0.6;
    }
    100% {
        transform: scale(1);
        opacity: 1;
    }
}


.infinite-scroll-request.loader img{
    max-width: 60px;
    margin: 0 auto;
}
@media(min-width: 769px) and (max-width: 1333px){
    .index-loop-wrapper {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 30px;
        row-gap: 60px;
        margin-top: clamp(60px, 5.20vw, 100px);
    } 
}
@media(min-width: 1334px){
    .index-loop-wrapper {
        display: grid;
        grid-template-columns: 1fr 1fr 1fr;
        gap: 60px;
        row-gap: 80px;
        margin-top: clamp(60px, 5.20vw, 100px);
    }   
}

/* --------------------------------------------
   Single post
-------------------------------------------- */
.single-post-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.single-post-image {
    overflow: hidden;
    width: 100%;
    display: flex;
}

.single-post-content-text .single-post-content {
    background: #F3F3F3;
    padding: 20px 5%;
}

.post-sharing-links svg {
    height: 15px;
    width: 15px;
    transition: 300ms;
}

.post-sharing-links a {
    display: flex;
}
.post-sharing-links{
    display: flex;
    align-items: center;
    gap: 5px;
}

.single-post-sharing {
    display: flex;
    gap: 5px;
    align-items: center;
    line-height: 1;
}
.single-bottom-content {
    display: flex;
    padding-top: 29px;
    border-top: 1px solid #151515;
    margin-top: 60px;
    justify-content: space-between;
    gap: 10px;
    font-size: 13px;
    text-transform: uppercase;
    font-weight: bold;
}
.single-author {
    display: flex;
    align-items: center;
    gap: 5px;
    line-height: 1;
}

.block--title.gloock.block--title--center {
    margin-bottom: 50px;
    line-height: 1.2em;
}


.single-post-content.with-title h1.block--title__80.block--title--center {
    text-wrap: balance;
}
.single-post-content-text .single-post-content p,
.single-post-content-text .single-post-content h1,.single-post-content-text .single-post-content h2,
.single-post-content-text .single-post-content h3,.single-post-content-text .single-post-content h4,.single-post-content-text .single-post-content h5,.single-post-content-text .single-post-content h6 {
    margin-bottom: 25px !important;
    display: block;
}

.single-post-content figure.wp-block-image.size-full{
    margin: 10px;
}
.single-post-content figure.wp-block-image.size-full img {
    width: 100%;
    height: 100%;
}
.post-meta {
    display: flex;
    gap: 20px;
    justify-content: center;
    margin: 15px 0 80px;
}
.user, .single-post-date {
    display: flex;
    align-items: center;
    gap: 6px;
}
.single-post-content-text .single-post-content h1,
.single-post-content-text .single-post-content h2,
.single-post-content-text .single-post-content h3,
.single-post-content-text .single-post-content h4,
.single-post-content-text .single-post-content h5,
.single-post-content-text .single-post-content h6{
    font-size: clamp(30px, 1.87vw, 36px);
}
.related-post-grid.desktop{
    display: none;
}
.section.section--padding-sm.form-section-wrapper.title-color__gold.faraglioni-bg.section-single-related .column {
    overflow: hidden;
}
.my-slider-progress {
    background: #ccc;
    height: 3px;
    margin-top: 10px;
    max-width: 80%;
    margin: 40px auto 0;
}
.my-slider-progress-bar {
  background: #151515;
  height: 3px;
  width: 0;
  transition: width 400ms ease;
}
.section.section--padding-sm.form-section-wrapper.title-color__gold.faraglioni-bg.section-single-related {
    padding-top: 0;
}
@media(min-width: 1025px){
    .my-slider-progress {
        background: #ccc;
        height: 3px;
        margin-top: 10px;
        max-width: 100%;
        margin: 60px auto 0;
    }
    .single-post-image {
        overflow: hidden;
        width: 100%;
        display: flex;
        height: clamp(500px, 38vw, 730px);
    }
    .related-post-grid-.mobile{
        display: none;
    }
    .related-post-grid.desktop {
        display: grid;
        grid-template-columns: 1fr 1fr 1fr;
        gap: 25px;
    }
    .post-sharing-links svg {
        height: 20px;
        width: 20px;
        transition: 300ms;
    }
    .single-post-content.with-title,.related-post-grid {
        max-width: 90%;
        margin: 0 auto;
    }
    .single-post-content-text .single-post-content {
        padding: 80px 60px;
    }
}

/* --------------------------------------------
   Home
-------------------------------------------- */
.home-hero-wrapper {
    height: 100vh;
    position: relative;
}
.home-hero-wrapper:before {
    content: '';
    background: #00000040;
    position: absolute;
    width: 100vw;
    height: 100vh;
    display: flex;
    top: 0;
    z-index: 1;
    top:0;
    left: 0;
}
.section-category-selection {
    background: #DFDED2;
}

.home-category-image img {
    width: 100%;
    height: 100%;
    transition: 500ms;
    object-fit: cover;
}
.section-category-selection .block--subtitle {
    font-weight: 300;
}
.home-category-image {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 3;
    width: 100%;
    height: 100%;
    overflow: hidden;
}
.home-category-image:before {
    content: '';
    width: 100%;
    height: 100%;
    display: flex;
    background: #00000045;
    z-index: 4;
    position: absolute;
    top: 0;
    left: 0;
}
.home-category-elements:hover .home-category-image img {
    transform: scale(1.15);
    transition: 500ms;
}
.home-category-elements .home-category-term-name,.home-category-elements .block--button{
    position: relative;
    z-index: 5;
    line-height: 1;
    margin-bottom: 15px;
}
.home-category-term-name {
    color: #fff;
}
.home-category-elements {
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    align-items: center;
    padding: 40px 5% 60px;
    height: clamp(550px,41.66vw, 800px);
}
a.block--button__outline.white {
    border: 1px solid #fff;
    color: #fff;
}
a.block--button__outline.white:hover {
    border: 1px solid #151515;
    background: #151515;
    transition: 300ms;
    color: #fff;
}
.section-selected-category-loop.desktop{
    display: none;
}
.section-selected-category-loop.mobile{
    display: block;
}
.section-category-selection{
    text-wrap: balance;
}
.section-selected-category-loop.mobile ul.splide__pagination.splide__pagination--ltr {
    margin: 0px;
    padding: 20px 0 20px;
}
.section-selected-category-loop.mobile ul.splide__pagination.splide__pagination--ltr button{
    width: 15px;
    height: 15px;
}

@media(min-width:1025px){
    .home-category-elements .home-category-term-name,.home-category-elements .block--button{
        margin-bottom: 30px;
    }
    .home-category-elements {
        display: flex;
        flex-direction: column;
        justify-content: flex-end;
        align-items: center;
        padding: 40px 5%;
        height: clamp(600px,41.66vw, 800px);
    }
    .section-selected-category-loop.desktop{
        display: block;
    }
    .section-selected-category-loop.mobile{
        display: none;
    }
}
@media(max-width: 1024px){
    .home-category-term-name .block--title__40 {
        font-size: 30px;
    }
    .section-category-selection {
        padding: 30px 0;
    }
}
.red{
    background: red;
    height: 100vh;
    color: #fff;
    font-size: 32px;
}

.centered-text-main {
    background: #DFDED2;
}

.centered-text-wrapper .block--button {
    margin: 0 auto;
    margin-top: clamp(40px, 3.12vw, 60px);
}

.centered-text-wrapper .block--paragraph {
    max-width: 600px;
    margin: 40px auto 0;
    text-align: center;
}
.centered-text-wrapper .block--title {
    text-wrap: balance;
    max-width: 1000px;
    margin: 0 auto;
}
.centered-text-wrapper .block--subtitle {
    font-weight: 300;
}



.home-newsletter .contact_form_fields {
    position: relative;
}

.home-newsletter .contact_form_action {
    position: absolute;
    top: 0;
    right: 0;
    display: flex;
    flex-direction: column;
}

.home-newsletter .contact-form-button-effect{
    display: none;
}
.home-newsletter .contact_form_action p {
    display: flex;
    justify-content: flex-start;
    overflow: hidden;
    flex-direction: column;
    align-items: flex-start;
}
.home-newsletter .contact_form_action input {
    border-radius: 0 30px 30px 0;
    color: #fff;
    padding: 15px 22px;
    border: 1px solid #151515;
}
.home-newsletter .contact_form_optin {
    display: flex;
    justify-content: center;
    margin: 0!important;
}
.home-newsletter .contact_form_wrapper,
.home-nesletter .block--paragraph{
    margin-top: 0px !important;
}
.home-newsletter .block--paragraph {
    margin-top: 0;
}
.home-newsletter .block--title h3, .home-newsletter .block--paragraph {
    text-align: center;
}
.home-newsletter .block--title h3{
    font-size: clamp(30px, 2.59vw, 50px);
}
.fluid-section-text {
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
}
.home-newsletter .contact_form_input {
    overflow: hidden;
}
@media(max-width: 1024px){
    .home-newsletter .row--fluid .column:nth-child(2){
        display: none;
    }
}



/**/


/* --------------------------------------------
   Archive products
-------------------------------------------- */
span.filter-label, .wpf_item_name {
    font-family: 'Playfair Display';
}
.wpf_slider.ui-slider .ui-widget-header {
    background: #ccc !important;
    border: none;
}
.products-list {
    width: 100%;
    display: grid;
    grid-template-columns: 1fr;
    gap: 30px;
}

.archive-products-order form.woocommerce-ordering {
    margin: 0 !important;
}
.archive-products-order {
    display: flex;
    align-items: center;
    gap: 20px;
    justify-content: flex-start;
}
.archive-filter-head {
    font-size: clamp(20px, 1.24vw, 24px);
    text-transform: uppercase;
    font-weight: bold;
    padding-bottom: 14px;
    border-bottom: 1px solid #ccc;
    display: flex;
    justify-content: space-between;
    gap: 20px;
    align-items: center;
}
span.filter-icon svg {
    width: 14px;
    height: 15px;
    transition: 300ms;
}
span.filter-icon{
    display: flex;
    transition: 300ms;
}
.archive-filter-content {
    display: none;
}
.archive-filter-head.active span.filter-icon {
    transition: 500ms;
    transform: rotate(180deg);
}
.archive-filter-content form.wpf_form.wpf_submit_on_change.wpf_form_ajax {
    width: 100%;
    margin-top: 40px;
}
.wpf_reset_btn {
    margin-top: 20px;
}
.wpf_reset_btn input{
    color: #BFBFBF !important;
    font-weight: bold!important;
    font-size: 18px !important;
}
.archive-filter-content .wpf_item_name {
    font-size: clamp(20px, 1.24vw, 24px)!important;
}
.archive-products-order form.woocommerce-ordering, .archive-products-order select.orderby {
    width: 100%;
}
.archive-products-order span.shop-order-label {
    display: flex;
    min-width: 80px;
}
.archive-products-list ul.page-numbers {
    display: flex;
    border: none !important;
    margin: 60px 0 0!important;
}
.archive-products-list ul.page-numbers li {
    border: none!important;
}
.archive-products-list ul.page-numbers a {
    color: unset;
    transition: 300ms;
}
.section-archive-products.white span.page-numbers.current{
    color: #fff !important;
}
.section-archive-products.black span.page-numbers.current{
    color: #333 !important;
}
.archive-filter-content .wpf_item .wpf_item_name {
    border-bottom: 0;
    padding-bottom: 0;
}
.wpf_reset_btn {
    font-size: 18px;
    line-height: 1;
    font-weight: bold;
}
.archive-filter-content .wpf_layout_vertical .wpf_item+.wpf_item .wpf_item_name{
    margin-top: 40px;
    margin-bottom: 30px;
}
.archive-filter-content .wpf_item {
    padding: 0 0 39px;
    border-bottom: 1px solid #ccc;
}
.archive-filter-content .wpf_item.wpf_item_onsale {
    padding: 0 0 39px;
}
.archive-filter-content .wpf_item.wpf_item_price {
    border-bottom: 0px;
    padding: 0 0 10px;
}
/*.archive-filter-content .wpf_item.wpf_item_wpf_cat{
    padding:0px;
    border: none;
}*/
.section.section-archive-page-header {
    background: #F9F9F9;
    padding-top: 40px;
    padding-bottom: 40px;
}
.section.section-archive-page-header h1{
    font-weight: bold;
}
.block-breadcrumbs {
    text-decoration: none;
    text-transform: uppercase;
    margin-top: 8px;
}
nav.breadcrumbs a {
    text-decoration: none;
    transition: 400ms;
}
nav.breadcrumbs a:hover {
    text-decoration: underline;
    transition: 400ms;
}
nav.breadcrumbs {
    font-size: 11px;
}
@media(min-width: 1025px){
    nav.breadcrumbs {
        font-size: unset;
    }
}
.woo-user-message-wrapper svg {
    width: 25px;
    height: 25px;
}
.woo-user-message-wrapper {
    display: flex;
    padding: 20px;
    border-radius: 20px;
    gap: 20px;
    align-items: center;
    text-wrap: balance;
    justify-content: center;
    background: #DFDED2;
}
.section-woo-user-message.white .woo-user-message-wrapper svg, .section-woo-user-message.white .woo-user-message-wrapper {
    color: #fff;
    fill: #fff;
}
.section-woo-user-message.black .woo-user-message-wrapper svg, .section-woo-user-message.black .woo-user-message-wrapper {
    color: #333;
    fill: #333;
}
.section-woo-user-message {
    padding-bottom: 40px;
}
.woocommerce.archive .loader::before{
    display: none;
}
@media(min-width: 1025px){
    .woo-user-message-wrapper {
        border-radius: 50px;
    }
    .section-woo-user-message {
        padding-bottom: 60px;
    }
    .section.section-archive-page-header {
        background: #F9F9F9;
        padding-top: clamp(60px,4vw, 80px);
        padding-bottom: clamp(60px,4vw, 80px);
    }
    .archive-products-order form.woocommerce-ordering, .archive-products-order select.orderby {
        width: unset;
    }
    .archive-products-filters {
        margin-top: 45px;
    }
    .archive-filter-content {
        display: flex;
        width: 100%;
    }
        span.filter-icon{
        display: none;
    }
   .archive-products-order {
      display: flex;
      align-items: center;
      gap: 20px;
      justify-content: flex-end;
   }
}
nav.woocommerce-pagination{
    display: none;
}
.woocommerce-pagination- {
    display: none;
}
@media(min-width: 1025px) and (max-width: 1440px){
   .products-list {
      grid-template-columns: 1fr 1fr;
   }
}

@media(min-width: 1441px){
   .products-list {
      grid-template-columns: 1fr 1fr 1fr;
      row-gap: 60px;
   }
}

.jello-horizontal {
	-webkit-animation: jello-horizontal 0.9s infinite both;
	        animation: jello-horizontal 0.9s infinite both;
}

@-webkit-keyframes jello-horizontal {
  0% {
    -webkit-transform: scale3d(1, 1, 1);
            transform: scale3d(1, 1, 1);
  }
  30% {
    -webkit-transform: scale3d(1.25, 0.75, 1);
            transform: scale3d(1.25, 0.75, 1);
  }
  40% {
    -webkit-transform: scale3d(0.75, 1.25, 1);
            transform: scale3d(0.75, 1.25, 1);
  }
  50% {
    -webkit-transform: scale3d(1.15, 0.85, 1);
            transform: scale3d(1.15, 0.85, 1);
  }
  65% {
    -webkit-transform: scale3d(0.95, 1.05, 1);
            transform: scale3d(0.95, 1.05, 1);
  }
  75% {
    -webkit-transform: scale3d(1.05, 0.95, 1);
            transform: scale3d(1.05, 0.95, 1);
  }
  100% {
    -webkit-transform: scale3d(1, 1, 1);
            transform: scale3d(1, 1, 1);
  }
}
@keyframes jello-horizontal {
  0% {
    -webkit-transform: scale3d(1, 1, 1);
            transform: scale3d(1, 1, 1);
  }
  30% {
    -webkit-transform: scale3d(1.25, 0.75, 1);
            transform: scale3d(1.25, 0.75, 1);
  }
  40% {
    -webkit-transform: scale3d(0.75, 1.25, 1);
            transform: scale3d(0.75, 1.25, 1);
  }
  50% {
    -webkit-transform: scale3d(1.15, 0.85, 1);
            transform: scale3d(1.15, 0.85, 1);
  }
  65% {
    -webkit-transform: scale3d(0.95, 1.05, 1);
            transform: scale3d(0.95, 1.05, 1);
  }
  75% {
    -webkit-transform: scale3d(1.05, 0.95, 1);
            transform: scale3d(1.05, 0.95, 1);
  }
  100% {
    -webkit-transform: scale3d(1, 1, 1);
            transform: scale3d(1, 1, 1);
  }
}
/* Product card */
.product--card {
    padding: clamp(25px, 2.07vw, 40px);
    transition: 500ms;
    border-radius: 30px;
    overflow: hidden;
    width: 100%;
}

.new-product-badge {
    position: absolute;
    top: 10px;
    text-transform: uppercase;
    left: 10px;
    background: #DFDED2;
    padding: 5px 14px;
    border-radius: 10px;
    line-height: 1;
    font-size: 14px;
    color: #fff;
}
.product--card-head{
    position: relative;
}

.product-thumbnail {
    position: relative;
    overflow: hidden;
    width: 100%;
    height: 100%;
    display: flex;
}
.product-thumbnail a {
    display: flex;
    width: 100%;
    height: 100%;
    overflow: hidden;
}
.product-thumbnail img{
    transition: 300ms;
    width: 100%;
    height: 100%;
    padding: 20px;
}

.product--card-body {
    text-align: center;
}
.product--card-terms {
    color: #DFDED0;
    text-transform: uppercase;
    font-size: 14px;
    margin-bottom: 5px;
    line-height: 1;
}
.product--card-title a {
    text-decoration: none;
    color: #151515;
    font-size: clamp(18px, 1.03vw, 20px);
}
.product--card-price {
    margin-top: 5px;
}
.product--card .product--card-title a {
    display: flex;
    justify-content: center;
    width: 100%;
}
.selected-product-wrapper button.splide__arrow.splide__arrow--prev {
    opacity: 0.3;
    background: unset;
    padding: 0px!important;
    left: -2%;
    background: #fff;
}
.selected-product-wrapper button.splide__arrow.splide__arrow--next {
    opacity: 0.3;
    background: unset;
    padding: 0px!important;
    right: -2%;
    background: #fff;
}
    .header-sidemenu-body .only_mobile{
        display: block;
    }
@media(min-width: 1025px){
    .header-sidemenu-body .only_mobile{
        display: none !important;
    }

    .product--card.course:hover img{
        transition: 3s;
        transform: scale(1.10);
    }
    .product--card:hover {
        box-shadow: 0px 10px 20px #00000031;
        transition: 500ms;
        transform: translateY(-20px);
    }
    .product.product--card.course:hover{
        transform: unset;
    }
    
    .product--card-title a {
        text-decoration: none;
        color: #151515;
        font-size: clamp(14px, 1.03vw, 20px);
    } 
}

.product--card.course {
    position: relative;
    padding: 0;
    transition: 1s;
    border-radius: 15px;
    width: 100%;
}
.product--card.course > a {
    position: relative;
    display: flex;
    flex-direction: column;
    height: 100%;
    padding: clamp(25px, 2.07vw, 40px);
    text-decoration: none;
}
.product-card-course-thumbnail {
    position: absolute;
    top: 0;
    left: 0;
    transition: 300ms;
    overflow: hidden;
    width: 100%;
    height: 100%;
    z-index: 3;
}
.product-card-course-thumbnail img{
    object-fit: cover;
    transition: 1s;
    width: 100%;
    height: 100%;
}
.product--card-course--body, .product--card-course--head {
    position: relative;
    z-index: 5;
    color: #fff;
    text-align: center;
}
.product--card-course--body {
    margin-top: auto;
    display: flex;
    flex-direction: column;
    gap: 5px;
}
.product-card-course-location,.product-card-course-professor {
    font-size: 14px;
    line-height: 1;
    margin-bottom: 2px;
}
.product-card-course-professor p, .product-card-course-date {
    font-size: 18px;
}
.product-card-course-title h4 {
    font-size: clamp(22px, 1.56vw, 30px);
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    line-height: 1.2;
    text-wrap: balance;
}

.product--card.course {
    min-height: clamp(450px, 58.58vw, 600px);
}
.product--card.course > a:before {
    content: '';
    display: flex;
    position: absolute;
    width: 100%;
    height: 30%;
    top: 0;
    left: 0;
    z-index: 4;
    background: #000;
    background: linear-gradient(180deg,rgba(0, 0, 0, 0.63) 0%, rgba(0, 0, 0, 0.13) 70%, rgba(0, 0, 0, 0) 90%);
    transition: 800ms;
}
.product--card.course > a:after {
    content: '';
    display: flex;
    position: absolute;
    width: 100%;
    height: 30%;
    bottom: 0;
    left: 0;
    z-index: 4;
    background: #000;
    background: linear-gradient(0deg,rgba(0, 0, 0, 0.63) 0%, rgba(0, 0, 0, 0.13) 70%, rgba(0, 0, 0, 0) 90%);
    transition: 800ms;
}
.selected-product-wrapper .splide__track {
    overflow: visible;
}
.selected-product-wrapper .splide__slide{
    display: flex;
}
.selected-product-wrapper{
    margin-top: 40px;
}
.selected-product-button {
    margin-right: auto;
    margin-left: auto;
    margin-top: clamp(60px, 4.16vw, 80px);
}
@media(min-width: 1025px){
    .centered-text-main .centered-text-wrapper .block--subtitle.figtree.block--title__40.block--title--center {
        margin-bottom: 30px;
    }
    .section-category-selection .block--subtitle.block--title__40.figtree.block--title--center {
        margin-bottom: 30px;
    }
    .product--card.course {
        min-height: clamp(400px, 28.64vw, 500px);
        width: 100%;
    }
    .selected-product-wrapper {
        max-width: 90%;
        margin: 50px auto 0;
    }
}

@media(max-width: 1024px){
    .section-selected-products .column {
        overflow: hidden;
    }
}

.block--collections {
    justify-content: center;
    display: flex;
    align-items: center;
    flex-direction: column;
    gap: 35px;
    font-family: 'Playfair Display';
}

.block--collections a {
    display: flex;
    align-items: center;
    transition: 400ms;
    font-size: clamp(34px, 3.85vw, 74px);
    text-decoration: none;
    color: #151515;
    text-transform: uppercase;
    line-height: 1;
    transition: 300ms;
    position: relative;
}
.block-collection-image {
    transition: 100ms;
    border-radius: 50%;
    opacity: 0;
    width: 60px;
    height: 60px;
    padding-left: 0px;
    position: absolute;
    right: -70px;
    overflow: hidden;
}

.splide-no-arrow .splide__arrows.splide__arrows--ltr {
    display: none;
}
.block--collections {
    margin-top: 30px;
}
@media(min-width: 1025px){
    .block--collections a:hover{
        gap: 20px;
        transition: 300ms;
        margin-right: 20px;
    }
    .block--collections a:hover .block-collection-image{
        opacity: 1;
        transition: 500ms;
        position: absolute;
        right: -105px;
    }
    .block--collections {
        margin-top: 40px;
    }
    .block-collection-image {
        transition: 100ms;
        border-radius: 50%;
        opacity: 0;
        width: 85px;
        height: 85px;
        padding-left: 0px;
        position: absolute;
        right: -70px;
    }
}

.variation-container-color {
    width: 14px;
    height: 14px;
    display: flex;
    border-radius: 50%;
}
.product-card-variation-wrapper {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 5px;
    margin: 8px 0 8px;
    font-size: 12px;
    line-height: 1;
}













/* Single product */
.single-product-gallery-wrapper img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
div#splide-thumbs {
    margin-top: 35px;
}
.single-product-secure {
    margin-top: 35px;
    display: flex;
    flex-direction: column;
    font-size: 14px;
    font-weight: bold;
    color: #BFBFBF;
}
.single-product-secure img {
    max-width: 200px;
}

.single-product-badge svg {
    height: 20px;
    width: auto;
}
.single-product-badge {
    display: flex;
    gap: 10px;
    align-items: center;
    text-wrap: balance;
    justify-content: flex-start;
}
.single-product-badges {
    display: grid;
    margin-top: 30px;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
    font-size: 12px;
    line-height: 12px;
    max-width: 400px;
}
.single-product-badge div:last-child {
    max-width: 125px;
}
@media(min-width: 1025px){
    /*.single-product-badge div:last-child {
        max-width: 85px;
    }*/
    .single-product-badges {
        display: grid;
        margin-top: 30px;
        grid-template-columns: 1fr 1fr;
        gap: 20px;
        font-size: 8px;
        line-height: 12px;
        max-width: max-content;
    }
    .single-product-badge {
        display: flex;
        gap: 10px;
        align-items: center;
        text-wrap: balance;
        /*justify-content: flex-end;*/
    }
    .single-product-gallery-wrapper {
        max-width: 90%;
    }
}
.product_title.entry-title.block-title__40 {
    font-weight: bold;
    font-size: clamp(32px, 2.07vw, 40px);
}


.single-product-quantity {
    display: flex;
    align-items: center;
    gap: 8px;
}

.stock-dot {
    width: 12px;
    height: 12px;
    border-radius: 50%;
    display: inline-block;
}

.stock-dot.available {
    background-color: green;
}

.stock-dot.ending {
    background-color: orange;
}

.stock-dot.not-available {
    background-color: red;
}
.single-product-category {
    text-transform: uppercase;
}
.single-product-quantity {
    margin: 5px 0 20px;
}
.woocommerce-product-details__short-description {
    text-wrap: balance;
    margin-top: clamp(30px, 2.05vw,  40px);
    margin-bottom: clamp(30px, 2.05vw,  40px);
    color: #111;
}
.single-product-content p.price {
    font-size: clamp(22px, 1.50vw, 30px);
    font-weight: 300;
    line-height: 1em;
}
.single-product-actions {
    display: flex;
    gap: 10px;
    margin-top: 30px;
}
@media(min-width: 1334px){
    .single-product-badges {
        display: flex;
        margin-top: 35px;
        justify-content: space-between;
        gap: 20px;
        font-size: 8px;
        line-height: 12px;
        max-width: 500px;
    }
}

.single-product-wishlist-button {
    display: flex;
    align-items: center;
    padding: 6px 20px;
    gap: 10px;
    transition: 300ms;
    cursor: pointer;
    transition: 300ms;
}
.single-product-wishlist-button .tinv-wraper.woocommerce.tinv-wishlist.tinvwl-shortcode-add-to-cart {
    display: flex;
    gap: 5px;
    align-items: center;
}


.single-product-actions button.single_add_to_cart_button {
    border-radius: 0px !important;
    transition: 300ms;
    display: flex;
    gap: 12px;
    align-items: center;
}
.single-product-actions button.single_add_to_cart_button {
    background: #151515!important;
    width: 100%;
    text-align: center;
    justify-content: center;
    text-transform: uppercase;
    font-weight: 300!important;
}
.single-product-actions button.single_add_to_cart_button:hover {
    background: #DFDED2 !important;
    transition: 300ms !important;
    color: #333 !important;
}
.variations.multiple-variations {
    display: grid;
    grid-template-columns: 1fr;
    gap: 30px;
}
.variations select {
    width: 100%;
    background: transparent;
    border-radius: 0px;
}
.variations label {
    font-weight: bold;
    margin-bottom: 5px;
    display: flex;
    text-transform: uppercase;
}
a.reset_variations{
    color: unset;
}

.single-product-actions button.single_add_to_cart_button.button:after {
    content: '';
    background-image: url(/wp-content/uploads/2025/06/Cart-icon-white.svg);
    width: 20px;
    height: 20px;
    display: flex;
    background-size: contain;
    background-repeat: no-repeat;
    transition: 300ms;
}
.single-product-actions:hover button.single_add_to_cart_button.button:after {
    content: '';
    background-image: url(/wp-content/uploads/2025/07/Cart-icon-white.svg);
    width: 20px;
    height: 20px;
    display: flex;
    background-size: contain;
    background-repeat: no-repeat;
    transition: 300ms;
}
.single-product-actions button.single_add_to_cart_button.button:after {
    content: '';
    background-image: url(/wp-content/uploads/2025/07/Cart-icon-white.svg);
    width: 20px;
    height: 20px;
    display: flex;
    background-size: contain;
    background-repeat: no-repeat;
    transition: 300ms;
}
.single-product-actions:hover button.single_add_to_cart_button.button:after {
    content: '';
    background-image: url(/wp-content/uploads/2025/07/Cart-icon-black.svg);
    width: 20px;
    height: 20px;
    display: flex;
    background-size: contain;
    background-repeat: no-repeat;
    transition: 300ms;
}
@media(min-width: 1025px){
    .variations.multiple-variations {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 30px;
        max-width: 500px;
    }
    .single-product-wishlist-button .tinvwl-tooltip {
        display: flex;
    }
}
.woocommerce-variation-price {
    display: none;
}
.single-product-external-resource a {
    color: #333;
    text-decoration: none;
    padding-bottom: 3px;
    border-bottom: 1px solid #333;
    transition: 300ms;
    display: flex;
    width: max-content;
    margin-bottom: clamp(30px, 2.05vw,  40px);
    font-weight: bold;
}

.single-product-description {
    background: #F5F5F5;
    padding: 30px 20px;
}
.single-product-description  .block-title h5 {
    font-size: 22px;
    text-transform: uppercase;
    line-height: 1em;
    font-weight: bold;
}
.single-product-description  .block-title {
    margin-bottom: 20px;
    display: flex;
}
.single-product-description .block-paragraph {
    text-wrap: balance;
}
p.stock.in-stock {
    display: none;
}
.single-product-gallery-wrapper .splide__slide,.single-product-image {
    border-radius: 30px;
    overflow: hidden;
}
div#splide-thumbs div#splide-thumbs-track {
    display: flex;
    justify-content: center;
}
div#splide-thumbs ul#splide-thumbs-list{
    width: 100%;

}
div#splide-thumbs .splide__arrow--prev {
    left: -25px;
}
div#splide-thumbs .splide__arrow--next {
    right: -25px;
}
div#splide-thumbs .splide__arrow--prev svg,div#splide-thumbs .splide__arrow--next svg{
    fill: #ccc;
}
.section-single-product .column.column-relative{
    overflow: hidden;
}
div#splide-thumbs .splide__track--nav>.splide__list>.splide__slide.is-active {
    border: 3px solid #ccc;
}
@media(min-width: 1025px){
    .single-product-descriptions {
        max-width: 90%;
        margin: 0 auto;
    }
    .single-product-description  .block-title h5 {
        font-size: 30px;
    }
    .single-product-description {
        background: #F5F5F5;
        padding-top: clamp(60px, 4.15vw, 80px);
        padding-bottom: clamp(60px, 4.15vw, 80px);
        padding-left: clamp(60px, 4.15vw, 80px);
        padding-right: clamp(60px, 4.15vw, 80px);
    }
}

.single-product-trust-wrapper {
    display: flex;
    gap: 10px;
    font-size: 10px;
    margin-top: 40px;
}
.single-product-trust-wrapper .trust-badge {
    margin-left: 0;
}
.single-product-trust-wrapper .trust-badge-icon img{
    /*width: clamp(30px, 59vw, 50px);*/
    height: clamp(30px, 2.59vw, 50px);
}
.single-product-trust-wrapper .trust-badge-label {
    word-break: break-word;
    overflow: hidden;
    max-width: 80%;
    text-wrap: balance;
}
@media(min-width: 1025px) and (max-width: 1333px){
    .single-product-content {
        max-width: 100%;
        transition: 300ms;
    }
}
@media(min-width: 1334px){
    .single-product-content {
        max-width: clamp(550px, 33.06vw, 635px);
        transition: 300ms;
    }
}

.attribute-name {
    font-size: 16px;
    color: #111111;
    line-height: 1;
}
.attribute-values {
    font-size: 14px;
    line-height: 1;
    color: #11111199;
}
.attribute-wrapper {
    display: grid;
    grid-template-columns: 2fr 2fr;
    padding: 4px 0 14px;
    border-bottom: 1px solid #ccc;
    gap: 20px;
}
.single-product-attribute-list {
    display: flex;
    flex-direction: column;
    gap: 10px;
    margin-bottom: clamp(40px, 2.59vw,  50px);
}

.custom-quantity-wrapper {
    display: flex;
    border: 1px solid #AEAEAE;
}

.custom-quantity-wrapper button.qty-button {
    background: transparent;
    color: #000;
    transition: 300ms;
    padding:0px 10px;
    transform: translateY(-2px);
}
.custom-quantity-wrapper button.qty-button:hover {
    color: #666;
    transition: 300ms;
    opacity: 0.5;
}
.custom-quantity-wrapper input {
    background: unset;
    border: none;
}

.custom-quantity-wrapper {
    display: flex;
    border: 1px solid #AEAEAE;
    max-width: 150px;
    align-items: center;
    height: 60px;
}
.course-price-label {
    font-style: italic;
    margin-top: 5px;
    opacity: 0.7;
}
@media(max-width: 1024px){
    .section-single-product-description.no-padding-bottom{
        padding: 0px;
    }

    .single-product-content h1 {
        font-size: 34px;
        /*text-wrap: balance;*/
    }
    .single-product-actions{
        max-width: 60%;
    }
    .single-product-trust-wrapper {
        max-width: 80%;
    }
}
@media(max-width: 768px){
    .single-product-trust-wrapper .trust-badge-label {
        word-break: break-word;
        overflow: hidden;
        text-align: left;
        text-wrap: balance;
    }
    .single-product-trust-wrapper .trust-badge {
        max-width: unset!important;
        font-size: 9px;
        display: flex;
        flex-direction: row;
        align-items: center;
        gap: 10px;
    }
    .trust-badge-icon {
        margin-bottom: 0px;
        overflow: hidden;
        max-width: 40px;
        display: flex;
    }
    .single-product-trust-wrapper {
        max-width: 100% !important;
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 30px;
    }
    .single-product-trust-wrapper .trust-badge{
        max-width: unset!important;
        font-size: 12px;
        display: flex;
        flex-direction: row;
        align-items: center;
    }
    
    .single-product-trust-wrapper {
        max-width: 100% !important;
    }
     .single-product-actions{
        max-width: 100% !important;
    } 
    .custom-quantity-wrapper {
        display: flex;
        border: 1px solid #AEAEAE;
        max-width: 130px;
        align-items: center;
        height: 60px;
        font-size: 12px;
    }
    .single-product-actions button.single_add_to_cart_button{
        font-size: 14px;
    } 
}


.tab-title {
    cursor: pointer;
    display: inline-block;
    opacity: 0.6;
    transition: 300ms;
}

.tab-title.active {
    opacity: 1;
    transition: 300ms;
    font-weight: bold;
}

.tab-content {
    display: none;
    text-align: center;
}

.tab-content.active {
    display: block;
}
.single-product-descriptions {
    border: 1px solid #DFDED2;
    padding: 30px 20px;
}
.tab-titles {
    display: flex;
    justify-content: center;
    gap: 20px;
    align-items: center;
    margin-bottom: 30px;
}
.tab-title h5 {
    text-transform: uppercase;
    font-size: 18px;
}
.no-padding-bottom{
    padding-bottom: 0px;
}

@media(min-width: 1025px){
    .attribute-wrapper {
        display: grid;
        grid-template-columns: 2fr 3fr;
        padding: 4px 0 14px;
        border-bottom: 1px solid #ccc;
        gap: 20px;
    }
    .section-single-product-description.no-padding-bottom{
        padding-top: clamp(20px, 2.07vw, 40px);
    }
    .tab-title h5 {
        font-size: 20px;
    }
    .tab-content {
        text-align: left;
    }
    .tab-titles {
        display: flex;
        justify-content: center;
        gap: 50px;
        align-items: center;
        margin-bottom: 30px;
    } 
    .tab-contents, .tab-titles {
        max-width: 95%;
        margin: 0 auto 40px;
    }
    .single-product-descriptions {
        border: 1px solid #DFDED2;
        padding: 40px 40px 80px;
    } 
}




.single-product-gallery-wrapper .splide--thumbs .splide__slide {
    border-radius: 5px;
    border: 1px solid #ccc;
    overflow: hidden;
}
.single-product-gallery-wrapper .my-slider-progress {
    max-width: 100%;
}
.single-product-gallery-wrapper .splide__arrows.splide__arrows--ltr button {
    background: unset;
    padding: 0!important;
    width: unset;
}
.section-products-choises .column {
    overflow: hidden;
}
.section-professor-for-product .block--button a:hover {
    transition: 300ms;
    color: #151515;
    background: #fff;
}
@media(min-width: 1025px){
    .section-products-choises .column {
        overflow: unset;
    }
    .single-product-gallery-wrapper .my-slider-progress{
        display: none;
    }
    div#splide-thumbs-track {
        margin-left: 17px;
        margin-right: 17px;
    }
}
@media(min-width: 1025px) and (max-width: 1333px){
    .single-product-gallery-wrapper {
        max-width: 80%;
        margin: 0 auto;
    }   
}
@media(min-width: 1334px){
    .single-product-gallery-wrapper {
        max-width: 78%;
        margin: 0 8% 0 auto;
    }
}

.section-professor-for-product {
    background: #151515;
    color: #fff;
}

.section-professor-for-product .block--paragraph {
    margin: 30px 0 50px;
}
.section-professor-for-product,.section-professor-for-product h3 {
    text-align: center;
}
.section-professor-for-product .block--button {
    margin: 0 auto;
}
.section-course-kit{
    background: #DFDED2;
}
.single-product-kit .block--button {
    margin: 0 auto;
}
.section-course-kit .block--paragraph {
    margin: 20px auto 50px;
    gap: 5px;
    text-wrap: balance;
}
@media(min-width: 1025px){
    .course-program-details {
        max-width: 90%;
    }
    .section-course-kit .block--paragraph {
        text-wrap: unset;
    }
    .section-professor-for-product .block--paragraph {
        margin: 30px 0 50px;
        max-width: 575px;
    }
    .section-professor-for-product,.section-professor-for-product h3 {
        text-align: left;
    }
    .section-professor-for-product .block--button {
        margin: 0;
    }
}
@media(min-width: 1025px) and (max-width: 1333px){
    .section-professor-for-product .block--image {
        max-width: 80%;
        margin: 0 auto;
    }
}
@media(min-width: 1334px){
    .section-professor-for-product .block--image {
        max-width: 70%;
        margin: 0 auto;
    }
}

.course-program-details {
    display: flex;
    flex-direction: column;
    gap: 10px;
    margin-top: 40px;
}

.course-calendar-details div {
    border: 1px solid #DFDED2;
    padding: 20px;
    text-align: center;
}
.header-table {
    background: #DFDED2;
    font-family: 'playfair';
    font-size: 18px;
    line-height: 1;
}
.course-calendar-details {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    margin-top: 40px;
}
.course-additional-details {
    display: flex;
    flex-direction: column;
    margin-top: 60px;
}
.course-document-custom a {
    width: 100%;
    display: flex;
    align-items: center;
    gap: 12px;
    transition: 300ms;
    justify-content: center;
}
.course-additional-details .course-calendar-details{
    display: flex;
    flex-direction: column;
    gap: 15px;
}

.course-document-custom .block--button__outline:after {
    content: '';
    background-image: url(/wp-content/uploads/2025/07/download-icon-black.svg);
    background-size: contain;
    background-repeat: no-repeat;
    width: 20px;
    height: 20px;
    display: flex;
    transition: 300ms;
}
.course-document-custom .block--button__outline:hover:after {
    content: '';
    background-image: url(/wp-content/uploads/2025/07/download-icon-white.svg);
    background-size: contain;
    background-repeat: no-repeat;
    width: 20px;
    height: 20px;
    display: flex;
    transition: 300ms;
}
.course-button-wrapper {
    display: flex;
    gap: 10px;
    align-items: center;
}

.course-button-wrapper .single-product-actions {
    margin: 0;
}
.course-button-wrapper {
    display: flex;
    gap: 12px;
    align-items: center;
    flex-direction: column-reverse;
}
.block--button.course-document-custom a {
    height: 60px;
}
@media(min-width: 1780px){
   .course-button-wrapper {
        display: flex;
        gap: 10px;
        align-items: center;
        flex-direction: row;
    } 
}
@media(max-width: 1779px){
    .course-button-wrapper .single-product-actions,.course-button-wrapper .single-product-actions button.single_add_to_cart_button.button.alt,.course-button-wrapper .block--button.course-document-custom {
        width: 100% !important;
    }
}

@media(max-width: 1024px){
    .course-button-wrapper{
        align-items: flex-start; 
    }
    .block--button.course-document-custom{
        max-width: 60% !important;
    }
}
@media(max-width: 768px){
    .block--button.course-document-custom{
        max-width: 100% !important;
    }
}
.section-add-to-cart-bottom-page-for-course .single-product-bottom-add-cart .course-button-wrapper .block--button.course-document-custom {
    display: none;
}
.single-product-bottom-add-cart p.stock.in-stock {
    display: none;
}
.single-product-bottom-add-cart {
    display: flex;
    align-items: center;
    gap: 20px;
    justify-content: center;
}
.single-product-bottom-add-cart .single-product-secure {
    margin: 0;
}

    .single-product-bottom-add-cart {
        display: flex;
        align-items: center;
        gap: 20px;
        justify-content: center;
        flex-direction: column;
        align-items: flex-start;
    }
    .section-professor-for-product .block--image img{
        width: 100%;
        height: 100%;
    }
@media(min-width: 1025px){
    .section-course-details {
        max-width: 90%;
        margin: 0 auto;
    }
    .single-product-bottom-add-cart {
        display: flex;
        align-items: center;
        gap: 20px;
        flex-direction: row;
        justify-content: center;
    }
}

@media(max-width: 1024px){
    .section.section-add-to-cart-bottom-page-for-course .course-button-wrapper .single-product-actions {
        width: 100%;
        max-width: 100%;
    }
}

@media(max-width: 768px){
    .section-add-to-cart-bottom-page-for-course form.cart {
        width: 100%;
    }
}

.attribute-name.Docente:before,
.attribute-name.Località:before,
.attribute-name.course-duration:before,
.attribute-name.course-start:before,
.attribute-name.quantity:before
 {
    content: '';
    width: 15px;
    height: 15px;
    display: flex;
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
}
.attribute-name.Docente,
.attribute-name.Località,
.attribute-name.course-duration,
.attribute-name.course-start,
.attribute-name.quantity
 {
    display: flex;
    align-items: center;
    gap: 9px;
}
.attribute-name.Località:before{
    background-image: url(/wp-content/uploads/2025/07/marker-icon.svg);
}
.attribute-name.course-start:before{
    background-image: url(/wp-content/uploads/2025/07/calendar.svg);
}
.attribute-name.course-duration:before{
    background-image: url(/wp-content/uploads/2025/07/time-icon.svg);
}
.attribute-name.quantity:before{
    background-image: url(/wp-content/uploads/2025/07/Add.svg);
}
.newsletter_custom_fs .contact_form_wrapper {
    max-width: 100%;
}

.professor-card-actions {
    display: flex;
    gap: 20px;
    justify-content: center;
    margin-top: 20px;
}

.teacher-loop-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 25px;
    row-gap: 60px;
}
.product--card.course.professor {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: clamp(25px, 2.07vw, 40px);
}

.product--card.course.professor:after {
    content: '';
    display: flex;
    position: absolute;
    width: 100%;
    height: 30%;
    bottom: 0;
    left: 0;
    z-index: 4;
    background: #000;
    background: linear-gradient(0deg, rgb(0 0 0 / 81%) 0%, rgb(0 0 0 / 18%) 80%, rgb(0 0 0 / 0%) 98%);
    transition: 800ms;
}
.product--card.course.professor .product-card-course-title h4{
    font-size: clamp(34px, 1.87vw, 36px);
}
.teacher-loop-grid {
    margin: 40px auto 0;
}
.product--card.course.professor a:hover {
    background: #fff;
    color: #151515;
    transition: 400ms;
    border: 1px solid #fff;
}
@media(min-width: 1025px){
    .teacher-loop-grid {
        max-width: 90%;
        margin: 80px auto 0;
    }
}
@media(min-width: 1025px) and (max-width: 1333px){
    .teacher-loop-grid {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 25px;
        row-gap: 60px;
    }
}
@media(min-width: 1334px){
    .teacher-loop-grid {
        display: grid;
        grid-template-columns: 1fr 1fr 1fr;
        gap: 25px;
        row-gap: 80px;
    }
}
@media(max-width: 375px){
    .professor-card-actions{
        flex-direction: column;
    }
    .professor-card-actions a,.professor-card-actions .block--button{
        width: 100%;
    }
}

.woocommerce:where(body:not(.woocommerce-uses-block-theme)) div.product p.price, .woocommerce:where(body:not(.woocommerce-uses-block-theme)) div.product span.price {
    color: unset;
    font-size: unset;
}
.archive-products-order {
    margin-bottom: 40px;
}

.section-teacher-related-products {
    background: #DFDED2;
}

.section-teacher-related-products .block--title {
    margin-bottom: 40px;
}

.teacher-related-loop.desktop{
    display: none;
}
.teacher-related-loop.mobile{
    display: block;
}
.section-teacher-related-products .column{
    overflow: hidden;
}
.section-teacher-related-products .product.product--card.course {
    height: 100%;
}
.section-teacher-related-products .block--button {
    margin: 60px auto 0;
}
@media(min-width: 1025px){
    .section-teacher-related-products .block--button {
        margin: 80px auto 0;
    }
    .teacher-related-loop.desktop {
        display: grid;
        grid-template-columns: 1fr 1fr 1fr;
        gap: 25px;
        max-width: 90%;
        margin: 0 auto;
    }
    .teacher-related-loop.mobile{
        display: none;
    }
}

.kit-label {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    background: #DFDED2;
    color: #fff;
    padding: 15px 20px;
}
.kit-tab-product {
    display: flex;
    gap: 20px;
    justify-content: space-between;
    padding: 30px 10px;
    border-bottom: 1px solid #ccc;
    align-items: center;
    flex-direction: column;
}


.logged-in .not_logged {
    display: none;
}
.not_logged{

}
.is_logged{
   display: none; 
}
.logged-in .is_logged {
    display: block;
}
.kit-product-title {
    font-family: 'Playfair Display';
    font-size: clamp(22px, 1.55vw, 30px);
    line-height: 1.2em;
    flex: 0 1 70%;
    text-transform: uppercase;
}
.kit-product-thumbnail {
    max-width: 120px;
    max-height: 120px;
    overflow: hidden;
}
.kit-product-thumbnail img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}
.kit-product-price {
    flex: 0 1 20%;
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    padding: 0 20px;
    text-align: center;
}
.kit-label {
    font-size: 20px;
    line-height: 1.2;
    font-weight: bold;
}
.kit-main-title.block--title--center .block--paragraph {
    gap: 10px;
    margin-bottom: clamp(60px, 6.24vw, 120px);
    margin-top: 30px;
}
.kit-content-label {
    text-align: center;
    font-family: 'Playfair Display';
    margin-bottom: 40px;
    font-size: clamp(22px, 1.55vw, 30px);
}
.kit-product-price > div > div {
    font-size: 40px;
    font-weight: bold;
    margin-top: 5px;
}
.kit-label.final {
    background: #151515;
}
.section-kit-bottom .block--button.figtree.row--align-center {
    margin: 40px auto 0;
}
@media(min-width: 1025px){
    .kit-content-wrapper {
        max-width: 90%;
        margin: 0 auto;
    }
    .kit-label {
        font-size: 22px;
        line-height: 1.2;
        font-weight: bold;
    }
    .kit-tab-product {
        display: flex;
        gap: 20px;
        justify-content: space-between;
        padding: 20px 10px;
        border-bottom: 1px solid #ccc;
        align-items: center;
        flex-direction: row;
    }
}
@media(max-width: 1024px){
    .kit-main-title,.kit-content-label{
        text-wrap: balance;
    }
}

.block--image.block-hero-image-mobile{
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    display: flex;
}
.block--image.block-hero-image-mobile img{
    width: 100%;
    height: 100%;
    object-fit: cover;
}
@media(max-width: 1024px){
    .home-hero-wrapper{
        background-image: unset!important;
    }
}
@media(min-width: 1025px){
    .block--image.block-hero-image-mobile{
        display: none;
    }
}


/* Side cart */
.xoo-wsc-icon-cross:before {
    content: '';
    background-image: url(/wp-content/uploads/2025/07/cross.svg);
    background-size: contain;
    background-repeat: no-repeat;
    width: 20px;
    height: 20px;
    display: flex;
    margin-right: 5px;
}
@media(max-width: 768px){
    .xoo-wsc-container{
        width: 100% !important;
        max-width: 100% !important;
        right: -1000px!important;
    }
    .xoo-wsc-cart-active .xoo-wsc-container{
        right: 0!important;
    }
}
a.xoo-wsc-ft-btn.xoo-wsc-btn.xoo-wsc-ft-btn-checkout {
    border: none;
    background: #DFDED2;
    color: #151515;
}
a.xoo-wsc-ft-btn.xoo-wsc-btn.xoo-wsc-ft-btn-checkout span {
    color: #151515;
}

a.xoo-wsc-ft-btn.xoo-wsc-btn.xoo-wsc-ft-btn-checkout:hover {
    border: none;
    background: #fff;
    color: #151515;
    transition: 300ms;
}
a.xoo-wsc-ft-btn.xoo-wsc-btn.xoo-wsc-ft-btn-checkout:hover span {
    color: #151515;
    transition: 300ms;
}
.xoo-wsc-ft-buttons-cont {
    font-family: 'Figtree';
}
.xoo-wsc-ft-buttons-cont a {
    font-size: 16px;
}
span.xoo-wsc-pname,span.xoo-wsch-text,span.xoo-wsc-ft-amt-label {
    font-family: 'Playfair Display';
}

.seach-results-wrapper .search-bar-wrapper {
    max-width: 100%;
}

.search-bar-wrapper input.search-field {
    background: transparent;
}
.search-bar-wrapper .saerchbar-content {
    max-width: 600px;
    margin: 0 auto;
}
.seach-results-wrapper {
    padding: 30px 0 59px;
    border-bottom: 1px solid #ccc;
    margin-bottom: 60px;
}
.seach-results-wrapper .searchbar-label{
    display: none;
}
.pagination span, .pagination > a {
    display: none;
}
.seach-results-wrapper .search-close-button {
    display: none;
}

/* Cart */
.woocommerce-cart h1.block--title__80 {
    text-align: center;
}

.woocommerce-cart .wc-block-components-sidebar.wc-block-cart__sidebar.wp-block-woocommerce-cart-totals-block {
    font-family: 'figtree';
    background: #DFDED2;
    padding: 20px;
    height: 100%;
}
.woocommerce-cart h2.wp-block-woocommerce-cart-order-summary-heading-block.wc-block-cart__totals-title {
    text-align: center;
    font-size: 18px;
    line-height: 1;
    padding-bottom: 20px;
    color: #32303B;
}
.woocommerce-cart .wc-block-cart__submit-container a {
    background: #151515;
    text-transform: uppercase;
    text-decoration: none;
    transition: 300ms;
    color: #fff;
    padding: 12px 20px;
}
.woocommerce-cart .wc-block-cart__submit-container a:hover {
    background: #666;
    transition: 300ms;
    color: #fff;
}

form#wc-block-components-totals-coupon__form input#wc-block-components-totals-coupon__input-coupon {
    background: transparent;
    border-radius: 0px;
}
button.wc-block-components-button.wp-element-button.wc-block-components-totals-coupon__button.contained{
    background: #151515;
}
.woocommerce-cart th.wc-block-cart-items__header-image,.woocommerce-cart a.wc-block-components-product-name {
    font-family: 'Playfair Display';
}
 .woocommerce-cart a.wc-block-components-product-name {
    text-decoration: none;
    margin-bottom: 5px !important;
    color: #151515;
 }
  .woocommerce-cart .wc-block-components-product-metadata__description {
    display: none;
}

/* Checkout */
.woocommerce-checkout h1.block--title__80 {
    text-align: center;
}

.woocommerce-checkout .wc-block-components-sidebar.wc-block-checkout__sidebar.wp-block-woocommerce-checkout-totals-block.is-sticky.is-large{
    font-family: 'figtree';
    background: #DFDED2;
    padding: 20px;
    height: 100%;
}
.woocommerce-checkout .wp-block-woocommerce-checkout-order-summary-block {
    border: none;
}
.woocommerce-checkout p.wc-block-components-checkout-order-summary__title-text {
    text-transform: uppercase;
    text-align: left;
}
.woocommerce-checkout .wc-block-components-product-metadata__description{
    display: none;
}
.woocommerce-checkout p.wc-block-components-checkout-step__description {
    margin-bottom: 15px!important;
}
.woocommerce-checkout .edit-post-visual-editor .wc-block-checkout__shipping-method-option.wc-block-checkout__shipping-method-option--selected, 
.woocommerce-checkout .wc-block-checkout__shipping-method-option.wc-block-checkout__shipping-method-option--selected {
    background: #DFDED2;
    border: unset;
}

.woocommerce-checkout .wc-block-components-form .wc-block-components-text-input input[type=email], 
.woocommerce-checkout .wc-block-components-form .wc-block-components-text-input input[type=number],
.woocommerce-checkout .wc-block-components-form .wc-block-components-text-input input[type=password],
.woocommerce-checkout .wc-block-components-form .wc-block-components-text-input input[type=tel],
.woocommerce-checkout .wc-block-components-form .wc-block-components-text-input input[type=text],
.woocommerce-checkout .wc-block-components-form .wc-block-components-text-input input[type=url],
.woocommerce-checkout .wc-block-components-text-input input[type=email],
.woocommerce-checkout .wc-block-components-text-input input[type=number],
.woocommerce-checkout .wc-block-components-text-input input[type=password],
.woocommerce-checkout .wc-block-components-text-input input[type=tel],
.woocommerce-checkout .wc-block-components-text-input input[type=text],
.woocommerce-checkout .wc-block-components-text-input input[type=url] {
    background-color: #fff;
    border: 1px solid #ccc;
    border-radius: 30px;
    box-sizing: border-box;
    color: #2b2d2f;
    font-family: inherit;
    font-size: 1em;
    height: 3.125em;
    line-height: 1em;
    margin: 0;
    min-height: 0;
    padding: 1em 30px 0!important;
    width: 100%;
}
.woocommerce-checkout .wc-block-components-form .wc-block-components-text-input label, .wc-block-components-text-input label {
    left: 30px;
}

.woocommerce-checkout .wc-blocks-components-select .wc-blocks-components-select__select {
    appearance: none;
    background: none;
    border: 1px solid #ccc;
    border-radius: 30px;
    color: #2b2d2f;
    font-family: inherit;
    font-size: inherit;
    font-size: 1em;
    font-style: inherit;
    font-weight: inherit;
    height: 100%;
    letter-spacing: inherit;
    line-height: inherit;
    padding: 1em 30px 0;
    text-decoration: inherit;
    text-transform: inherit;
    width: 100%;
}
.woocommerce-checkout .wc-blocks-components-select .wc-blocks-components-select__label {
    color: #2b2d2f;
    font-family: inherit;
    font-size: inherit;
    font-size: 1em;
    font-style: inherit;
    font-weight: inherit;
    left: 30px;
    letter-spacing: inherit;
    line-height: inherit;
    line-height: 1.25;
    margin: 0;
    max-width: calc(100% - 32px);
    overflow: hidden;
    position: absolute;
    text-decoration: inherit;
    text-overflow: ellipsis;
    text-transform: inherit;
    top: 2px;
    transform: translateY(15%) scale(.75);
    transform-origin: top left;
    transition: all .2s ease;
    white-space: nowrap;
    z-index: 1;
}

.woocommerce-checkout label.wc-block-components-radio-control__option.wc-block-components-radio-control__option-checked.wc-block-components-radio-control__option--checked-option-highlighted {
    box-shadow: unset;
    border: none;
    border-radius: 0px;
}
.woocommerce-checkout .wc-block-components-radio-control--highlight-checked.wc-block-components-radio-control--highlight-checked--last-selected:after{
    display: none;
}
.wc-block-components-radio-control--highlight-checked .wc-block-components-radio-control-accordion-option--checked-option-highlighted,
.wc-block-components-radio-control--highlight-checked label.wc-block-components-radio-control__option--checked-option-highlighted{
    background: #DFDED2;
    border: none;
    box-shadow: none !important;
}
.woocommerce-checkout .wc-block-components-radio-control--highlight-checked:after{
    border: none;
}
.woocommerce-checkout span.wc-block-components-radio-control__description{
    color: #151515;
}
.woocommerce-checkout span.wc-block-components-checkbox__label a {
    color: #151515;
}
.woocommerce-checkout button.wc-block-components-button.wp-element-button.wc-block-components-checkout-place-order-button.contained{
    background: #151515;
    text-transform: uppercase;
}

@media(max-width: 768px){
    .professor-card-actions a{
        font-size: 12px !important;
    }
}

/* Registration forms */
#registration-form-main{
    display: none;
}
.section-with-forms.active {
    display: block !important;
}
.form-error-icon svg {
    fill: #ffa000;
    height: 20px;
    width: 20px;
}
.form-error-icon {
    display: flex;
}
.form-errors {
    display: flex;
    align-items: flex-start;
    gap: 20px;
    border: 1px solid #ffa000;
    border-radius: 50px;
    justify-content: center;
    padding: 20px;
    background: #ffa0007a;
    color: #151515;
    margin-bottom: 30px;
}
.form-errors-list {
    display: flex;
    flex-direction: column;
    gap: 10px;
}
.registration-form .block--title {
    margin-bottom: 40px;
}
.registration-form-grid {
    display: grid;
    grid-template-columns: 1fr ;
    gap: 20px;
    margin-bottom: 20px;
}
.form-group input {
    width: 100%;
    border-radius: 50px;
    padding: 10px 30px;
    color: #151515;
    background: transparent;
    border: 1px solid #ccc;
}
.form-group input::placeholder {
    color: #1515155e;
}
.form-group-upload label {
    font-weight: bold;
    display: flex;
    margin-bottom: 10px;
    font-size: 18px;
}
.form-group-upload span {
    display: flex;
    margin-top: 5px;
}
.registration-form-optin {
    margin: 20px 0;
    display: flex;
    flex-direction: column;
    gap: 5px;
}
.optin-commercial, .optin-privacy {
    display: flex;
    gap: 10px;
    align-items: center;
    font-size: 12px;
    line-height: 1.2;
    color: #151515ba;
}
.optin-commercial a, .optin-privacy a{
    color: #151515;
}
.form-group-button button {
    background: #151515;
    min-width: 150px;
    text-align: center;
    padding: 12px 20px;
    text-transform: uppercase;
    transition: 300ms;
}
.form-group-button button:hover {
    background: #666;
    transition: 300ms;
}
.form-group-button {
    display: flex;
    justify-content: center;
    margin-top: 60px;
}
.section-registration-text .block--paragraph {
    max-width: 910px;
    margin: 40px auto 0;
}
.registration-card-buttons {
    text-align: center;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    transition: 300ms;
    border: 1px solid #fff;
    border-radius: 20px;
    max-width: 80%;
    margin: 0 auto;
}
.registration-card-buttons.active {
    transition: 300ms;
    border: 1px solid #ccc;
    padding: 40px;
}
.registration-card-buttons > span {
    font-size: clamp(20px, 1.24vw, 24px);
    color: #DFDED2;
    margin-bottom: 10px;
}
.registration-card-buttons h4 {
    font-size: clamp(32px, 2.07vw, 40px);
    line-height: 1;
    display: flex;
    margin-bottom: 30px !important;
    text-transform: uppercase;
}
.section-registration-text-buttons .block--title {
    margin-bottom: clamp(60px, 4.16vw, 80px);
}
.section-with-forms:before {
    content: '';
    background: #ccc;
    width: 90%;
    height: 1px;
    position: absolute;
    top: 0;
    left: 50%;
    transform: translate(-50%, 50%);
}
@media(min-width: 1025px){
    .woocommerce-checkout p.wc-block-components-checkout-order-summary__title-text {
        text-transform: uppercase;
        text-align: center;
        padding-bottom: 15px;
    }
    .section-with-forms:before {
        content: '';
        background: #ccc;
        width: 85%;
        height: 1px;
        position: absolute;
        top: 0;
        left: 50%;
        transform: translate(-50%, 50%);
    }
    .registration-form-grid.tree_columns {
        grid-template-columns: 1fr 1fr 1fr;
    }
    .registration-form{
        max-width: 90%;
        margin: 0 auto;
    }

    .form-group-button {
        display: flex;
        justify-content: flex-start;
        margin-top: 30px;
    }
    .registration-form .block--title {
        margin-bottom: 60px;
    }
    .registration-form-grid {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 30px;
        margin-bottom: 30px;
    }
}

/* User */
.woocommerce-account nav.woocommerce-MyAccount-navigation {
    background: #DFDED2;
    padding: clamp(30px, 2.07vw, 40px);
    text-align: center;
}
.login-form-wrapper {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    max-width: 600px;
    margin: 0 auto;
}
.login-form-input-wrapper {
    display: flex;
    flex-direction: column;
    gap: 20px;
    width: 100%;
}
.login-form-input-wrapper input {
    border-radius: 30px;
    padding: 12px 30px;
    border: 1px solid #ccc;
    background: transparent;
    color: #151515;
}
.login-form-input-wrapper input::placeholder {
    font-size: 15px;
    color: #15151575;
}
.login-form-lost-password {
    margin: 20px 0 50px;
    text-align: left;
    width: 100%;
    padding: 0 30px;
    font-size: 14px;
}
.login-form-lost-password a{
    transition: 300ms;
    color: #151515;
}
.login-form-lost-password a:hover{
    transition: 300ms;
    opacity: 0.70;
}
.login-buttons {
    display: flex;
    gap: 20px;
    align-items: center;
    flex-direction: column;
}
.block--button button.block--button__outline {
    transition: 300ms;
    background: transparent;
}
.login-buttons > span {
    color: #15151587;
    font-size: 16px;
}
.lost-password-label {
    text-align: center;
    text-wrap: balance;
    margin-bottom: 20px;
}
.login-form-wrapper.lost-password-form .login-form-input-wrapper {
    margin-bottom: 20px;
}
@media(min-width: 1025px){
    .login-form-wrapper {
        padding: 20px;
    }
}
@media(max-width: 560px){
    .login-buttons .block--button, .login-buttons .block--button a,.login-buttons,.login-buttons .block--button button {
        width: 100%!important;
        max-width: 100%!important;
        gap: 15px;
    }
    .login-form-button {
        width: 100%;
    }
}
@media(min-width: 561px){
    .login-buttons {
        display: flex;
        gap: 20px;
        align-items: center;
        flex-direction: row;
    }
}


/* Profile logged */
.woocommerce-MyAccount-content {
    text-wrap: balance;
}
.woocommerce-MyAccount-content a{
    color: #151515;
}
nav.woocommerce-MyAccount-navigation ul {
    margin: 0;
    list-style: none;
    display: flex;
    flex-direction: column;
    gap: 20px;
}
nav.woocommerce-MyAccount-navigation ul li:last-child a{
    background: none!important;
}

nav.woocommerce-MyAccount-navigation li a{
    text-transform: uppercase;
    text-decoration: none;
    width: 100%;
    display: flex;
    padding: 12px 20px;
    transition: 300ms;
    text-align: center;
    color: #151515;
    justify-content: center;
    background: #fff;
}
nav.woocommerce-MyAccount-navigation li.is-active a,nav.woocommerce-MyAccount-navigation li a:hover{
    background: #151515;
    color: #fff;
    transition: 300ms;
}

form.woocommerce-EditAccountForm.edit-account .block--button {
    margin-top: 30px;
}
.form-edit-info-main .login-form-input-wrapper input {
    width: 100%;
}
p.edit-account-name-account input {
    cursor: not-allowed;
    opacity: 0.5;
}
p.password-change-legend {
    font-weight: bold;
    margin-top: 30px !important;
    display: flex;
}
p.edit-account-name-account span {
    margin-top: 5px;
    display: flex;
}
form.woocommerce-EditAccountForm.edit-account,form.form-account-edit-address,.account-my-address-wrapper,.account-order-list-wrapper,.my-order-prodile,.myprofile-dashboard {
    margin-top: 60px;
}
.woocommerce-address-fields__field-wrapper input {
    border-radius: 30px!important;
    padding: 12px 30px!important;
    border: 1px solid #ccc!important;
    color: #151515;
}
.woocommerce-address-fields__field-wrapper .form-row {
    margin-bottom: 20px!important;
}
form.form-account-edit-address .lost-password-action {
    margin-top: 20px;
}
form.form-account-edit-address .select2-selection__rendered {
    border-radius: 30px!important;
    border: 1px solid #ccc;
    padding: 10px 30px!important;
}
form.form-account-edit-address span.select2-selection.select2-selection--single {
    border: none;
}
.account-my-address-wrapper .u-columns.woocommerce-Addresses.col2-set.addresses {
    display: flex;
    flex-direction: column;
    gap: 40px;
}
.account-my-address-wrapper .woocommerce-Address {
    width: 100%!important;
}
.account-my-address-wrapper .woocommerce-Address header h2{
    margin-bottom: 20px!important;
}
.account-my-address-wrapper .woocommerce-Address address{
    padding-top:30px;
    border-top: 1px solid #ccc;
    margin-top: 30px;
}
.account-order-list-wrapper > table {
    border: none!important;
}
.my-order-prodile h2{
    margin-bottom: 30px !important;
}
    .woocommerce-account .addresses .title .edit {
    float: left;
}
  
@media(min-width: 1025px){
  .woocommerce-MyAccount-content {
        padding-left: clamp(40px,5.20vw, 100px );
    }
    form.woocommerce-EditAccountForm.edit-account,form.form-account-edit-address,.account-my-address-wrapper,.account-order-list-wrapper,.my-order-prodile,.myprofile-dashboard {
        margin-top: 0px;
    }
    p.edit-account-name-account span {
        padding-left: 30px;
        margin-top: 5px;
        display: flex;
    }
    p.password-change-legend {
        font-weight: bold;
        padding-left: 30px;
        margin-top: 30px !important;
        display: flex;
    }
}
table.woocommerce-orders-table.woocommerce-MyAccount-orders.shop_table.shop_table_responsive.my_account_orders.account-orders-table {
    text-align: center;
}
table.woocommerce-orders-table.woocommerce-MyAccount-orders.shop_table.shop_table_responsive.my_account_orders.account-orders-table tr.woocommerce-orders-table__row.woocommerce-orders-table__row--status-on-hold.order td:last-child {
    border-right: 0;
}
table.woocommerce-orders-table.woocommerce-MyAccount-orders.shop_table.shop_table_responsive.my_account_orders.account-orders-table tr th:last-child {
    border-right: 0!important;
}
table.woocommerce-orders-table.woocommerce-MyAccount-orders.shop_table.shop_table_responsive.my_account_orders.account-orders-table td {
    padding-top: 10px!important;
    padding-bottom: 10px !important;
}
@media(max-width: 1024px){
    .woocommerce-account .block--title{
        margin-bottom: 30px!important;
    }
    table.woocommerce-orders-table.woocommerce-MyAccount-orders.shop_table.shop_table_responsive.my_account_orders.account-orders-table td {
        border-right: 0px!important;
    }
}

.section.section-order-confirmation.section--padding-md.order-confirmation-wrapper {
    background: #DFDED2;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
}
.order-confirmation-wrapper .block-paragraph.figtree {
    margin: 20px auto 30px;
    max-width: 500px;
}
.thank-you-block__button {
    display: flex;
    justify-content: center;
}

/* Chrome, Safari, Edge, Opera */
input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

/* Firefox */
input[type=number] {
    -moz-appearance: textfield;
}

.variation-row .label {
    display: flex;
    align-items: center;
    gap: 5px;
}
.variation-row .label > label{
    margin-bottom: 0px;
}
.single-product-gallery-wrapper {
    position: relative;
}
.column.column-relative {
    position: relative;
}
div#gallery-loader {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #ffffffd0;
    transition: 500ms;
    z-index: 50;
}
div#gallery-loader:after {
    content: '';
    background-image: url(/wp-content/uploads/2025/07/loading-1.png);
    width: 60px;
    height: 60px;
    display: flex;
    text-align: center;
    margin: 25% auto;
    align-items: center;
    animation: spin 1s linear infinite;
}
@keyframes spin {
  to {
    transform: rotate(360deg);
  }
}
.section-single-product.course-product .woocommerce-product-details__short-description {
    margin-top: 20px;
}
@media(min-width: 1025px){
    .single-professor .fluid-section-text {
        max-width: 80%;
    }
    .single-professor .fluid-section-text .block--paragraph {
        max-width: 600px;
    }
}
@media(max-width: 1024px){
    .section-products-choises .product-choises-wrapper h3.block--title__50.block--title--center.figtree {
        font-size: 18px;
    }
    .selected-product-wrapper {
        margin-top: 30px;
    }
}

.makeupartistloop .teacher-loop-grid {
    margin-top: 40px;
}
.selector_region select {
    width: 100%;
    max-width: 400px;
    padding: 10px;
}
.provence-wrapper {
    margin: auto 0 0 0;
    height: 100%;
    display: flex;
    align-items: flex-start;
    justify-content: center;
}
.product--card.course.professor.makeupartist {
    height: 100%;
}
.product--card.course.professor.makeupartist .product--card-course--body {
    height: 100%;
}
.product--card.course.professor.makeupartist:before{
    content: '';
    display: flex;
    position: absolute;
    width: 100%;
    height: 100%;
    bottom: 0;
    left: 0;
    z-index: 4;
    background: #00000044;
    transition: 800ms;
}
.product--card.course.professor.makeupartist:after{
    display: none;
}
.row-teachers-wrapper.row.row--1col-full {
    margin-top: 40px;
}
@media(min-width: 1025px){
    div#splide-thumbs{
        max-width: calc(100% - 50px);
        margin-left: auto;
        margin-right: auto;
    }
    .row-teachers-wrapper.row.row--1col-full {
        margin-top: 80px;
    }
    .selector_region {
        max-width: 90%;
        margin: 0 auto;
    }
}
.makeupartist-social {
    display: flex;
    gap: 10px;
    margin-top: 20px;
    margin-bottom: 20px;
    justify-content: center;
}
.makeupartist-social a {
    display: flex;
}
.makeupartist-social svg {
    width: 25px;
    height: 25px;
    transition: 300ms;
}
.makeupartist-social a:hover svg {
    transition: 300ms;
    opacity: 0.6;
}

.section-selected-products h3,
.section-products-choises h3{
    font-weight: 300;
}
.xoo-wsc-img-col a {
    display: flex;
    border-radius: 20px;
    overflow: hidden;
    max-width: 120px;
    max-height: 120px;
}
.xoo-wsc-img-col img{
    object-fit: cover;
    max-width: 100%;
    max-height: 100%;
}
.xoo-wsc-ft-buttons-cont {
    grid-row-gap: 15px;
}

.woocommerce-cart tr.wc-block-cart-items__row td.wc-block-cart-item__image a {
    display: flex;
    overflow: hidden;
    border-radius: 10px;
    max-width: 120px;
    max-height: 120px;
}
.woocommerce-cart tr.wc-block-cart-items__row td.wc-block-cart-item__image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.woocommerce-cart td.wc-block-cart-item__product a.wc-block-components-product-name {
    font-size: 20px;
}

.woocommerce-cart .wc-block-components-product-details {
    opacity: 0.5;
}

.woocommerce-cart span.price.wc-block-components-product-price {
    font-weight: bold;
    font-size: 17px;
}

.woocommerce-cart th.wc-block-cart-items__header-image {
    font-size: 20px;
}

.woocommerce-cart th.wc-block-cart-items__header-total {
    font-size: 16px;
}
.woocommerce-cart td.wc-block-cart-item__product span.price.wc-block-components-product-price {
    font-weight: unset;
    font-size: 18px;
}
p.course-notice-checkout {
    padding: 10px 20px 30px;
    text-align: left;
    line-height: 22px;
    border-radius: 10px;
    font-size: 14px;
}
p.cart-notice-course {
    padding: 4px 0 20px;
    font-size: 14px;
    line-height: 24px;
}
@media(min-width: 1025px){
    .makeupartist-social {
        justify-content: flex-start;
    }
    .wp-block-woocommerce-cart.alignwide {
        padding-top: 90px;
    }
}

.woocommerce-checkout h2.wc-block-components-title.wc-block-components-checkout-step__title {
    font-weight: bold;
}

.woocommerce-checkout h3.wc-block-components-product-name {
    font-family: 'Playfair Display' !important;
    font-size: 16px;
    width: 100%;
}
.woocommerce-checkout span.wc-block-formatted-money-amount.wc-block-components-formatted-money-amount.wc-block-components-product-price__value.wc-block-components-order-summary-item__individual-price {
    font-size: 18px;
    color: #2E2E2E;
    font-weight: 500;
}
.woocommerce-checkout .wc-block-components-product-details__colore {
    opacity: 0.5;
}

.woocommerce-checkout .wc-block-components-order-summary-item__description {
    width: 100%;
}

.woocommerce-checkout .wc-block-components-order-summary-item__image img {
    width: 100%!important;
    height: 100%!important;
    object-fit: cover;
    max-width: 100%!important;
    border-radius: 10px;
}
.woocommerce-checkout .wc-block-components-order-summary-item__image {
    max-width: 60px !important;
    max-height: 60px !important;
    height: 100% !important;
    width: 100% !important;
    display: flex;
}

.woocommerce-checkout .wc-block-components-order-summary .wc-block-components-order-summary-item {
    padding-top: 35px !important;
}

.woocommerce-checkout p.wc-block-components-totals-footer-item-tax {
    padding-top: 5px;
    display: flex;
    opacity: 0.5;
}

.woocommerce-checkout .wc-block-components-order-summary__content .wc-block-components-order-summary-item:first-child {
    padding-top: 0px!important;
}

.woocommerce-checkout span.wc-block-formatted-money-amount.wc-block-components-formatted-money-amount {
    font-size: 18px;
    font-weight: bold;
}

@media(min-width: 1025px){
    .row.row--3col-equal.row-registration-buttons.row--gap-md.row--align-center {
        max-width: 85%;
    }
    .woocommerce-checkout h3.wc-block-components-product-name {
        font-family: 'Playfair Display' !important;
        font-size: 20px;
        max-width: 82%;
        width: 100%;
    }
    .woocommerce-checkout .wc-block-components-order-summary-item__image {
        max-width: 100px !important;
        max-height: 100px !important;
        height: 100% !important;
        width: 100% !important;
        display: flex;
    }
    .registration-card-buttons a {
    padding-top: 20px!important;
    padding-bottom: 20px!important;
}
}
input::-webkit-search-cancel-button {
    -webkit-appearance: none;
}
@media(max-width: 1024px){
    .centered-text-wrapper .block--title {
        text-wrap: unset!important;
    }
    .kit-product-title {
        text-align: center;
        max-width: 90%;
    }
    .kit-content-label {
        line-height: 30px;
    }
    .single-product-gallery-wrapper .splide__arrows.splide__arrows--ltr button {
        background: #fff!important;
        width: 34px!important;
        opacity: 0.3;
    }
    .selected-product-wrapper button.splide__arrow.splide__arrow--next {
        right: 1em !important;
    }
    .selected-product-wrapper button.splide__arrow.splide__arrow--prev {
        left: 1em !important;
    }
    .section-registration-text-buttons .row-registration-buttons {
        gap: 60px !important;
    }
    .woocommerce-checkout .wc-block-components-checkout-order-summary__title,
    .woocommerce-checkout .wc-block-components-sidebar.wc-block-checkout__sidebar.wp-block-woocommerce-checkout-totals-block{
        margin-top: 0px!important;
    }
    .woocommerce-checkout .wp-block-woocommerce-checkout.alignwide.wc-block-checkout {
        padding-top: 0px!important;
    }
    
}
p.notice-course {
    font-family: 'Figtree';
    font-size: 12px;
    opacity: 0.3;
    line-height: 16px;
    height: max-content;
}

.dashboard-notice-to-user {
    display: flex;
    flex-direction: column;
    gap: 20px;
    margin-top: 30px;
}
.professionist-dashboard-notice {
    border-top: 1px solid #ccc;
    padding-top: 19px;
}

.professionist-dashboard-notice {
    display: grid;
    grid-template-columns: 30px 1fr;
    gap: 10px;
}
.professionist-dashboard-notice svg {
    width: 20px;
    border: 1px solid #000;
    border-radius: 50%;
    height: 20px;
    display: flex;
}
.single-product-bottom-add-cart .single-product-actions{
    margin: 0px;
}
.product-choises-wrapper ~ p {
    text-align: center;
    margin-top: 30px !important;
}
.cart-count {
    position: absolute;
    top: -16px;
    right: -14px;
    width: 17px;
    height: 17px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 8px;
    transition: 300ms;
}
.header-main-wrapper.is_home .header-content-main .cart-count{
    background: #fff;
    color: #151515;
}
.header-main-wrapper.is_home .header-content-main.sticky.is-fixed-done .cart-count {
    transition: 300ms;
    background: #DFDED2;
    color: #151515;
}
.header-content-main.not_home .header-content-wrapper .cart-count{
    transition: 300ms;
    color: #151515;
    background: #DFDED2;
}

.header-cart-icon {
    position: relative;
}
.dashboard-custom-data {
    margin-top: 20px;
}

.archive-filter-content ul.wpf_links.wpf_column_vertical a {
    text-decoration: none;
    color: unset;
    transition: 300ms;
}

.archive-filter-content ul.wpf_links.wpf_column_vertical a:hover {
    text-decoration: underline;
    transition: 300ms;
}

/* Yith new filter */
.filter-content ul.filter-items.filter-text .active a {
    font-weight: 600;
    text-decoration: underline;
}
.yith-wcan-filters {
    width: 100%;
}
.filters-container .yith-wcan-filter {
    border-bottom: 1px solid #ccc;
    padding-bottom: 39px;
    margin: 0px;
    padding: 39px 0;
}

.filters-container h4.filter-title {
    font-weight: bold;
    font-size: clamp(20px, 1.24vw, 24px) !important;
}

.filters-container .filter-content {
    margin-top: 15px;
}
a.show-more.initialized {
    margin-top: 5px!important;
    display: flex;
    cursor: pointer;
    color: unset;
    transition: 300ms;
}

button.btn.btn-primary.yith-wcan-reset-filters.reset-filters.enhanced {
    margin-top: 30px;
    background: transparent;
    color: #000;
    padding: 0px;
    padding-left: 25px;
    display: flex;
    align-items: center;
    gap: 5px;
    position: relative;
}

button.btn.btn-primary.yith-wcan-reset-filters.reset-filters.enhanced:before {
    position: absolute;
    content: '';
    width: 20px;
    height: 1px;
    display: flex;
    background: #000;
    top: 50%;
    transform: rotate(45deg);
    left: 0;
}

button.btn.btn-primary.yith-wcan-reset-filters.reset-filters.enhanced:after {
    position: absolute;
    content: '';
    width: 20px;
    height: 1px;
    display: flex;
    background: #000;
    top: 50%;
    transform: rotate(-45deg);
    left: 0;
}

.course-not-avaible {
    position: absolute;
    z-index: 99;
    background: #e94f4f;
    padding: 8px 20px;
    text-align: center;
    color: #fff;
    top: 10px;
    left: 10px;
    border-radius: 20px;
    font-size: 12px;
    line-height: 1;
}